Maison  >  Article  >  interface Web  >  Comparaison entre direction et unicode-bidi en CSS

Comparaison entre direction et unicode-bidi en CSS

黄舟
黄舟original
2017-06-20 10:39:192212parcourir

Lors de la création de pages multilingues, les étudiants qui ont été exposés à l'arabe et à l'hébreu doivent comprendre l'importance du sens d'écriture, y compris l'ordre d'écriture avant le Mouvement du 4 mai, qui était également de droite à gauche. En CSS, les attributs unicode-bidi et direction déterminent la direction du rendu du texte HTML ou XML. Les deux attributs peuvent être utilisés en combinaison pour modifier l'ordre d'écriture du texte

.

direction

L'attribut direction a trois valeurs

hériter utilise les paramètres de l'élément parent

valeur par défaut ltr, de gauche à droite, de gauche à droite

rtl de droite à gauche de droite à gauche

Notre ordre d'écriture par défaut est de gauche à droite, aucun paramètre particulier n'est requis, mais pour l'arabe, c'est de droite à gauche, alors vous devez définir l'attribut direction pour qu'il s'affiche correctement

Empêcher la réécriture du navigateurtext-alignDéfinissons les paramètres par défaut

<p style="direction:rtl;text-align: initial;">
    طهيس يس تآخت تهات يس وريتتآن فروم ريغت تو لآفت تهات يس وسآد    
</p>

Il existe également un attribut html correspondantdir peut être défini

<p dir="rtl" dtyle="text-align: initial;">
    طهيس يس تآخت تهات يس وريتتآن فروم ريغت تو لآفت تهات يس وسآد    
</p>

L'attribut direction détermine l'ordre d'écriture par défaut. Ceci est différent de l'alignement du texte. Ce dernier est la direction et l'ordre d'écriture reste inchangé

<p style="direction: rtl;text-align: initial;">1 2 3 4 5 6。</p>
<p style="text-align:right;">1 2 3 4 5 6。</p>
<.>unicode-bidi

Il semble que la direction puisse résoudre le problème de la direction d'écriture. Que fait unicode-bidi ?

Les navigateurs déterminent généralement le sens d'écriture en fonction de l'attribut lang ou d'une famille de polices spéciale, mais si une phrase inclut la rédaction dans les deux sens, vous devez utiliser l'attribut unicode-bidi

unicode -bidi a trois valeurs largement prises en charge

normal. Utilisez l'ordre d'origine dans quel ordre

embed agit sur les éléments en ligne. La valeur de l'attribut direction spécifie le calque d'intégration. qui est caché à l'intérieur de l'objet. Réorganisation de la formule

bidi-override réorganise strictement en fonction de la valeur de l'attribut direction. Ignorez les règles implicites de fonctionnement bidirectionnel

Pour être honnête, je ne comprends pas cette explication. Regardons un exemple

<p style="direction:rtl;text-align: initial;">this is a test</p>
<p style="direction:rtl;unicode-bidi:bidi-override;text-align: initial;">
    this is a test
</p>
<p style="direction:rtl;unicode-bidi:bidi-override;text-align: initial;">
    this <span style="unicode-bidi:embed;">is a</span> test
</p>
La première ligne est simplement alignée à droite, et le texte ne sera pas écrit à l'envers (arabe parlant, explication plus tard)

Utiliser ensemble les deux attributs de la deuxième ligne, non seulement en écrivant de droite à gauche mais aussi en écrivant réellement de droite à gauche, c'est la manière sérieuse d'écriture arabe

Le merveilleux effet de la troisième ligne est que le style unicode-bidi:embed est ajouté sur la base de la deuxième ligne, au lieu d'écrire à l'envers, écrivez dans l'ordre d'écriture normal

Pourquoi Pour l'arabe, il suffit de définir la direction pour l'afficher correctement, mais les mots anglais n'ont qu'un effet aligné à droite et ne seront pas écrits de droite à gauche. Cela ne fonctionne que si unicode-bidi:bidi-override est défini

Ceci est lié à la langue spécifique. Pour l'arabe et l'hébreu, cela fonctionne automatiquement si le navigateur ne peut pas déterminer la langue avec un seul chiffre ou une seule lettre, il utilise le paramètre par défaut rtl. La méthode de gauche à droite est toujours utilisée. Vous ne pouvez utiliser que les réécritures Unicode-bidi

et spécifiez la langue comme arabe lors de la déclaration. La page écrira automatiquement la commande rtl

. direction indique la direction d'écriture, et
<html lang="ar">
writing-mode

Ils ont des fonctions différentes, chacune avec ses propres forces et faiblesses, et peuvent être utilisées en combinaison.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn