تشخیص زبان متن و دادن استایل خاص به هر زبان!

vahidk1990

New Member
با سلام خدمت دوستان عزیز
در طراحی یک سایت با مشکلی مواجه شدم که ممنون میشم راهنماییم کنید.
فرض کنید عنوان یک مطلب از دو زبان فارسی و انگلیسی تشکیل شده است.برای مثال
"طراحی یک منوی css3 با استفاده از تکنولوژی jQuery"
من می خواهم کلمات فارسی این متن با یک استایل و کلمات انگلیسیش با استایل دیگر طراحی کنم(از قبیل تغییر رنگ و اندازه فونت)
این دستور را در سی اس اس چگونه وارد کنم؟:-?
 

omid_p30

Member
دوتا فایل CSS جداگانه یکی برای زبان فارسی و یکی هم برای انگلیسی با نام دلخواه درست کن. استایل های هر کلاس و ID رو جداگانه برای فارسی و انگلیسی بنویس. مثلا اگر برای منوها کلاسی به نام menu. داری و میخای استایل این منو برای هر زبان متفاوت باشه کلاس menu. باید تو هر دو فایل استایل انگلیسی و فارسی تعریف بشه.
ابتدا فایل استایل فارسی رو به صفحه لینک کن. وقتی زبان انگلیسی بود فایل استایل انگلیسی رو بعد از فایل استایل فارسی به صفحه لینک کن.
بعنی فایل استایل انگلیسی فقط وفتی به صفحه لینک میشه که زبان انگلیسی باشه. اینم با کد نویسی سمت سرور قابل انجامه.
فقط توجه کن که فایل استایل انگلیسی حتما بعد از فارسی لینک یه صفحه بشه.
 

vahidk1990

New Member
دوتا فایل CSS جداگانه یکی برای زبان فارسی و یکی هم برای انگلیسی با نام دلخواه درست کن. استایل های هر کلاس و ID رو جداگانه برای فارسی و انگلیسی بنویس. مثلا اگر برای منوها کلاسی به نام menu. داری و میخای استایل این منو برای هر زبان متفاوت باشه کلاس menu. باید تو هر دو فایل استایل انگلیسی و فارسی تعریف بشه.
ابتدا فایل استایل فارسی رو به صفحه لینک کن. وقتی زبان انگلیسی بود فایل استایل انگلیسی رو بعد از فایل استایل فارسی به صفحه لینک کن.
بعنی فایل استایل انگلیسی فقط وفتی به صفحه لینک میشه که زبان انگلیسی باشه. اینم با کد نویسی سمت سرور قابل انجامه.
فقط توجه کن که فایل استایل انگلیسی حتما بعد از فارسی لینک یه صفحه بشه.
ممنون از اینکه به سوالم پاسخ دادین.ولی متاسفانه روش شما به هیچ وجه عملی نشد.(و یا من متوجه منظورتان نشدم!)
وقتی من کلاسی به شکل مقابل دارم
HTML:
.menu-title {
    font-family: b yekan;
    color:#333
}
وقتی این کلاس را در استایل انگلیسی اینطوری وارد کنم
HTML:
.menu-title {
    font-family: arial
    color:#000
}
وقتی که استایل انگلیسی بعد از استایل فارسی به صفحه لینک می شه.عملا menu-title. در استایل فارسی نادیده گرفته میشه!:-?
من که از حرفهای شما اینگونه برداشت کردم.ولی متاسفانه عملی نشد

 

omid_p30

Member
حرفم رو درست متوجه شدی.
دوتا نکته رو دقت کن.
اول اینکه فایل استایل انگلیسی فقط زمانی لود بشه که زبان انگلیسی باشه. یعنی اگه زبان فارسی بود اصلا لود نشه.
دوم اینکه درست پیاده کردی دقیقا باید همینطور باشه. چون استایل انگلیسی بعد از فارسی لود میشه استایل فارسی نادیده گرفته میشه. البته نه تمام ویژگی ها
مثلا اگر تو استایل فارسی داشته باشیم
PHP:
.menu-title {
    font-family: b yekan;
    color:#333;
    font-size:12px;
    display:block;
}
و در انگلیسی داشته باشیم
PHP:
.menu-title {
    font-family: b yekan;
    color:#333;
}
فقط دو ویژگی font-family و color برای انگلیسی جایگزین فارسی میشه و ویژگی‌های دیگه رو از همون کلاس فارسی میگیره.
خلاصه اینکه راهش اینه.
من با همین روش چندتا سایت چندزبانه راه انداختم الانم داره کار می‌کنه.
 

vahidk1990

New Member
ممنون اقا امید ولی مثل اینکه من نتونستم منظورم رو خوب منتقل کنم!
من تصویری را ضمیمه کرده ام.شاید بهتر منظورم را متوجه شوید
تصویری که در مرورگر نمایش داده می شود تصویر بالاست.همانطور که مشاهده می کنید نوشته های انگلیسی کوچکتر از بقیه نوشته است و همینطور عدد 3 بصورت فارسی نوشته می شود.
من می خوام کاری کنم که تصویر پایین نمایش داده شود.یعنی من وقتی انگلیسی تایپ می کنم بطور اتو ماتیک این کلمات انگلیسی استایل خاصی بگیرند.:-?
 

پیوست ها

  • Untitled-1.gif
    Untitled-1.gif
    7.7 کیلوبایت · بازدیدها: 6

omid_p30

Member
تازه فهمیدم منظورت چیه.
این که می گی مشکل فونت شماست. بعضی فونت ها ارقام انگلیسی رو با فارسی جایگزین می کنن. در حالی که کد اسکی ارقام در فارسی و انگلیسی جداست. بعضی فونت های فارسی به جای ارقام انگلیسی، فارسی می زارن.
شما اکه فونت خودت رو عوض کنی درست میشه. مثلا فونت tahoma این موارد رو رعایت کرده و فونت خوبیه.
 

vahidk1990

New Member
من هم می دونم فونتهایی مثل tahoma و arial این مورد رو رعایت می کنن ولی من می خوام با فونت های فارسی مثل yekan این کار رو انجام بدم؟!؟!
 

r.dehshahri

New Member
برای کلمات انگلیسیت یه Span تعریف کن بعد بهش کلاس بده
حالا توی اون کلاس فونت و تنظیماتی که دوست داری رو اعمال کن
 

vahidk1990

New Member
برای کلمات انگلیسیت یه Span تعریف کن بعد بهش کلاس بده
حالا توی اون کلاس فونت و تنظیماتی که دوست داری رو اعمال کن
متاسفانه این روش هم شدنی نیست!!!
چون این سایت ما قراره بصورت دینامیک طراحی بشه و نمی تونیم از طریق پنل به متن های انگلیسی span یا هر چیز دیگه ای اضافه کنیم! (البته من طراح می تونم این کار رو انجام بدم.ولی به مشتری که نمیشه گفت هر وقت انگلیسی می خوای بزنی یه تگ span بهش بده!!!)
مثل اینکه باید طبق پیشنهاد آقا امید پی30 باید فونت یکان رو ادیت کنیم.چاره ای نیست!:cry:
ولی دوستان اگه راه دیگه ای سراغ دارن حتما راهنمایی کنند!ممنون میشم:wink:
 

echessdesign

مدیر انجمن طراحی وب
درود بر شما
در سیستم های مدیریت محتوا چند زبانه، برای هر زبان، قالب مشخص با استایل معین تعریف می کنند...
 

جدیدترین ارسال ها

بالا