2016-05-27 12 views
1

Ich entwickle meine Website mit Umbraco, und ich brauche es mehrsprachig mit Englisch und Chinesisch. Um meine Website mit Umbraco mehrsprachig zu machen, habe ich die Website geklont und dann den Inhalt geändert, aber alle HTML- und CSS-Vorlagen behalten. Aber für die chinesische Version muss ich eine andere Schriftart verwenden, wie kann ich das tun? Ist es möglich anzugeben, welche Schriftart im CSS verwendet werden soll? Oder irgendeine andere Lösung?Mehrsprachige Website mit verschiedenen Schriftarten

Vielen Dank!

+0

Sie meinen eine andere Schriftart _family_? Wenn ja, lesen Sie [unicode-range'] (https://developer.mozilla.org/en/docs/Web/CSS/@font-face/unicode-range), was Sie brauchen. –

+0

Aber wenn Sie das nicht gemeint haben, erklären Sie bitte, was Sie brauchen; was schief geht. Browser sind in der Regel ziemlich gut darin, chinesische Schriftzeichen anzuzeigen, ohne spezielle Messungen vornehmen zu müssen. –

Antwort

1

Können Sie keine Klasse zu der body basierend auf der Sprache hinzufügen? Zum Beispiel en für Englisch und cn für Chinesisch? Dann können Sie auf body.en und body.cn zielen und verschiedene Schriftarten basierend auf diesen hinzufügen.

Beispiel:

body.cn { 
    font-family: 'chinese font'; 
} 

body.en { 
    font-family: 'english font'; 
} 
+0

Die HTML-Datei ist die gleiche für beide, das würde funktionieren, wenn ich 2 verschiedene HTML-Dateien hätte, denke ich. Es sei denn, ich verstehe deine Antwort nicht wirklich. –

+0

Sie können Umbraco wahrscheinlich die Klasse basierend auf der angezeigten Sprache hinzufügen lassen. In Umbraco muss ein 'if (* check for language *) {do something}} sein. Sehen Sie es als Wordpress und fügen Sie 'home',' post' und 'page' der' body' Klasse hinzu, abhängig davon, welche Seite Sie gerade betrachten. Auf diese Weise können Sie sehr spezifische CSS schreiben. – Rvervuurt

+1

Sie müssen Ihre Vorlage irgendwie ändern. Was @Rvervuurt vorschlägt, ist eine sehr einfache Ergänzung zum body-Tag, etwa wie (aber ich kenne Ihre Umbraco-Version nicht oder wie Ihre Templates/Views eingerichtet sind, also ist es eine Annäherung). –

0

body, 
 
button, 
 
input, 
 
select, 
 
textarea { 
 
    color: #2b2b2b; 
 
    font: 12px/1.5 "Hiragino Sans GB", Tahoma, Arial, Microsoft YaHei, "微软雅黑", "Helvetica Neue", sans-serif; 
 
    *font-family: "Hiragino Sans GB", Microsoft YaHei, "微软雅黑", Tahoma, Arial, "Helvetica Neue", sans-serif; 
 
}

Setzen Sie Ihr Englisch font-family vor chinesisch, so chinesischer Computer nur den chinesischen font-family recongnize und Englisch font-family ignorieren.
Ich bin ein Web-Entwickler China bilden, ist die chinesische Schrift-Familie sehr wenig:
1. 微软 雅 黑 (Microsoft YaHei)
2. 宋体 (SimSun)
3. 黑体

0

Verwenden Sie die Kultur zu füge das "lang" -Attribut dem HTML-Tag hinzu und wähle es dann im CSS mit html [lang = "CULTURE"] aus. Für Englisch verwenden Sie z. "En-GB", produziert die folgenden:

Razor (Layoutseite):

<html lang="@Culture"> 
</html> 

CSS:

html[lang="en-GB"] { font-family: 'WhatEverFont', sans-serif; } 

Oder Sie können dies erreichen, indem die Kultur als eine Klasse Hinzufügen zu Ihr Körper, zB:

Razor (Layoutseite):

<html lang="@Culture"> 
    <body class="@Culture.ToLower()"> 
    </body> 
</html> 

CSS:

body.en-gb { font-family: 'WhatEverFont', sans-serif } 
Verwandte Themen