# مباحث مرتبط با توسعه وب > طراحی وب (Web Design) >  راه حل بهم ریختگی نمایش ترکیب فارسی و انگلیسی

## eshpilen

<html dir="rtl">
<head> 
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>        
<body dir="rtl">
<h1>مقاله های Qt (3)</h1>
</body>
</html>
تصویر ضمیمه اول رو ببینید.
ترتیب نمایشی بهم خورده. همه توی اینترنت این مشکل رو زیاد دیدیدم. نه؟
من برای حل این مشکل از چنین روشی استفاده کردم:
<html dir="rtl">
<head> 
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>        
<body dir="rtl">
<h1>مقاله های <span dir="rtl">Qt</span> (3)</h1>
</body>
</html>
البته به روشهای دیگری هم میشه این مشکل رو حل کرد، ولی فکر کنم این بهترین راه حل باشه.

شما روش دیگری سراغ ندارید که بهتر باشه؟

----------


## AMIBCT

برای اینکه کاملا متوجه بشید چرا این طوری می‌شه لازمه که با اصول یونیکد آشنا بشید

به طور خلاصه:
علامت‌ها و از اون جمله پرانتز در یونیکد نویسه‌های ضعیف به حساب میان
یعنی جهت نمایششون در متن به حروف قبل و بعدشون و جهت کلی متن وابسته است
چون در متن شما قبل از پرانتز حروف انگلیسی استفاده شده
و بعد از اون هم عدد هست که چپ به راست هست
پرانتز ابتدایی هم چپ به راست می‌شه

راه حل اصولی اینه که قبل از پرانتز یک نویسه‌ی rlm قرار بدید
در html این نویسه به صورت ‎&rlm;‎ نوشته می‌شه

دقت کنید که من در نوشتن عبارت «‎&rlm;‎» دو جا از lrm استفاده کردم
یکی قبل از & و یکی بعد از ; 
چون این دو علامت جهت ندارند و جهت حروف قبل و بعدشان با هم فرق دارد
این طوری جهت هر دو طرف این علامت‌ها یکی می‌شود
و در نتیجه آن‌ها در محل مناسب و چپ به راست نمایش داده می‌شوند
اگر این دو علامت اضافی را ننویسید
نوشته این طوری می‌شود:
&rlm;


اگر چیز زیادی متوجه نشدید
جای نگرانی نیست
چون موضوع کمی پیچیده است و نیاز است که بیشتر مطالعه کنید

----------


## Saber Mogaddas

سلام
تغییر direction به وسیله پارامتر dir از نظر w3c  قابل قبول و استاندارد نیست و متاسفانه editor هایی مثل tynimce هم برای تغییر direction از پارامتر dir  تگ ها استفاده می کنند که استاندارد نیست و مانع از گرفتن xhtml valid برای سایت میشه البته برای این مورد نیز راه حل هایی هست که تمامی پارامتر های dir  در صفحه رو به direction تغییر داد که مربوط به برنامه نویسی ,net هست..
الان بهترین روش برای تغییر direction استفاده از دستور  css  به نام  direction هست که دارای دو مقدار rtl,ltr  می باشد و به صورت کلی به شکل زیر نوشته میشود..

direction:rtl;

به استایل تگ این دسور رو می دیم.برای مثال به صورت inline دستور css  رو به body  میدیم :

<body style="direction:rtl;">
<h1>مقاله های <span style="direction:rtl;">Qt</span> (3)</h1>
</body>



موفق باشید..

----------


## eshpilen

> راه حل اصولی اینه که قبل از پرانتز یک نویسه‌ی rlm قرار بدید
> در html این نویسه به صورت ‎&rlm;‎ نوشته می‌شه


ایول این جواب داد.
فقط وضع ساپورتش رو نمیدونم روی مرورگرهای مختلف چطوریه.
در FF14 و IE7 که کار میکنه.





> اگر چیز زیادی متوجه نشدید
> جای نگرانی نیست
> چون موضوع کمی پیچیده است و نیاز است که بیشتر مطالعه کنید


نگران نباش این قضایا رو حتی اگر نخونده باشم میتونم حدس بزنم.
با یه حرفه ای طرف هستی داداش  :لبخند گشاده!: 
راستی یه تگ bdo هم در HTML بود یادمه که مربوط به همین مسائل میشد، ولی جزییاتش یادم نیست و تست نکردم ببینم بدرد کار ما میخوره یا نه.

----------


## eshpilen

> سلام
> تغییر direction به وسیله پارامتر dir از نظر w3c  قابل قبول و استاندارد نیست و متاسفانه editor هایی مثل tynimce هم برای تغییر direction از پارامتر dir  تگ ها استفاده می کنند که استاندارد نیست و مانع از گرفتن xhtml valid برای سایت میشه


xhtml رو ولش کن. مجبوریم حالا xhtml باشیم؟
فکر کنم دیگه دوران این حرفا گذشته. یه زمانی خواستن اصلا HTML رو با XML جایگزین کنن، بعدا دیدن نمیشه و عاقلانه نیست.
مهمترین چیز اینه که صفحات تا یک حد معقولی استاندارد باشن و وابسته به یک مرورگر خاص مثل IE نباشن.




> الان بهترین روش برای تغییر direction استفاده از دستور  css  به نام  direction هست که دارای دو مقدار rtl,ltr  می باشد و به صورت کلی به شکل زیر نوشته میشود..
> 
> direction:rtl;
> 
> به استایل تگ این دسور رو می دیم.برای مثال به صورت inline دستور css  رو به body  میدیم :
> 
> <body style="direction:rtl;">
> <h1>مقاله های <span style="direction:rtl;">Qt</span> (3)</h1>
> </body>


متاسفانه ظاهرا مشکل ساپورت داره. حتی روی FF14 هم کار نمیکنه!

----------


## kishair

عرض سلام خدمت دوستان گرامی
وقت بخیر
با عرض تسلیت اربعین حسینی
یه قالب html انگلیسی دانلود کردم و میخوام بتونم متن داخلش رو عوض کنم و فارسی بزنم
اگه میشه راهنمایی کنید
با تشکر
http://up110.ir/uploads/13572104831.zip

----------


## hamidisa73

خیلی از سایت بسیار بسیار خوبتون ممنون :تشویق:  خیلی وقت بود این مشکل رو داشتم ولی العان فقط با گذاشتن دستور dir="rtl مشکلم حل شد .من فقط از همین dir="rtl استفاده کردم و از کدهای دیگه ای که گفتین استفاده نکردم ولی مشکلم حل شد پس شما چرا اون خط های بعدی رو نوشتید دلیل خاصی داره؟ممنون میشم جواب سوالم رو بدید :لبخند:

----------


## nunegandom

میدونم تاپیک زیر خاکیه ولی خوب توی گوگل پیداش کردم
در بعضی موارد از این ها هم نمیشه استفاده کرد
به عنوان مثال در یک خط داریم
تلفن : 12511515-2 که شماره فلان الی فلان
برای این مورد از


```
تلفن :<bdo style="direction:ltr">0319000006-9</bdo>
```

 :چشمک:

----------

