2010-08-18 23 views
7

Hem Japonca hem de İngilizce kullanan bir site oluşturuyoruz. ClearType kullanamayan varsayılan Japon yazı tiplerinden uzaklaşmak istiyoruz. Tarayıcının Japonca karakterler için JUST (Meiryo gibi) ve aynı sayfada sadece Latin karakterler (Helvetica gibi) için başka bir yazı tipi kullanması için bir başka Japon yazı tipini kullanmanın bir yolu var mı? Meiryo yazı tipini kullanmak için İngilizce kelimeler istemiyoruz.Latin karakterler ve Japonca karakterler için farklı yazı tipleri kullanın CSS

Biz aslında ilk bu makaleden CSS İngilizce yazı tiplerini belirlemek için bir ipucu kullandı: http://www.lukew.com/ff/entry.asp?118

Ancak bu IE'de çalışmıyor. Helvetica, Verdana ya da herhangi bir diğer yaygın yazı tipini ilk önce ve sonra CSS'deki Japon yazı tipini belirtsek bile, IE hala ingilizce kelimeler için Japonca yazı tipini kullanacaktır. Firefox, Chrome vb. Beklendiği gibi çalışır.

cevap

0

nasıl ekrana yazdırmak için sayfayı hangi dili anlatıyorsun (biz bir süre içinde her İngilizce kelime sarma gibi bir şey başvurmak değil umut Mümkünse)?

Değişken alıyorsanız, bu değişkeni bir divan için kullandığınız bir sınıf olarak kullanamazsınız. Bir sınıf ve yazı ile her dil bölümü işaretleme etrafında alamayan

<body class="english"> 

veya

<body class="japanese"> 
5

bu çapraz tarayıcı çalışmak istiyorsanız. Sadece CSS ile yapılamaz.

Dil sınıfını elle veya otomatik olarak uygulayabilirsiniz. Elle desteklenmesi ve sürdürülmesi için çok çalışma olabilir, ancak sağlamdır. Dinamik olarak bir arka uç betiği veya Javascript kullanarak, belirli unicode karakter blokları içine giren karakterler için bir dize tarayarak ve buna göre bir dil sınıfı uygulayarak yapılabilir.

Burada blok tanımları bulabilirsiniz (Japonca Hiragana ve Katakana ise): Sayfadaki bir yazı tipi değiştirme titreyen veya kaydırılması neden olabilir, çünkü bunu yapmanın arka uç yolunu öneriyoruz

http://www.fileformat.info/info/unicode/block/index.htm sayfa yükleme sırasında öğeler.

+2

tüm Kanji (CJK karakterleri). –

3

İngilizce ve Japonca metin için css sınıfı oluşturun.

: sayfanın tamamını Japonca ise

.ja { font-family: meiryo, sans-serif; } 
.en { font-family: arial, verdana, sans-serif; } 

, karışık içerik varsa, örneğin, Japon metni içeren html elemana class = "ja" eklemek, vücut etiketine class = "ja" add

<td class="ja">日本語</td> 
+1

Bunu yapmanın tek yolu olduğuna inanıyorum ve bu Japonca/İngilizce site http://www.jlptstudy.com/N5/ – PandaWood

+0

adresindeki sayfaların çoğunda yapılma şekli *** İpucu: *** HTML'nin bir "lang" evrensel özelliği vardır ve CSS'nin bunun için bir seçicisi vardır: [lang niteliğini kullanarak stil oluşturma (w3.org; çoklu dil)] (https://www.w3.org/International/questions/qa-css- lang) – hakre

2

Sorunumu 'unicode-range' CSS özelliğini kullanarak çözdüm.

Burada ayrıntıları bulabilirsiniz: https://developer.mozilla.org/en/docs/Web/CSS/@font-face/unicode-range

Örnek:

/* bengali */ 
 
@font-face { 
 
    font-family: 'Atma'; 
 
    font-style: normal; 
 
    font-weight: 400; 
 
    src: url(https://fonts.gstatic.com/s/atma/v2/tUcVDHNCVY7oFp6g2zLOiQ.woff2) format('woff2'); 
 
    unicode-range: u+0980-09FF; 
 
} 
 

 

 
body { 
 
    font-family: 'Atma', arial, sans-serif; 
 
    font-size: 18px; 
 
}
<p>Example is better than precept.</p> 
 
<p>উপদেশের চেয়ে দৃষ্টান্ত ভালো।</p>

Hiragana ve Katakana sadece hece karakter setleri, sen atlıyorsunuz olan