ここで奇妙な多言語の質問:
で表示<ul>
さ<li>
れるアイテムがありますdisplay:inline
。
スタイルディレクティブを使用するとbody{direction:rtl}
、これらのアイテムの順序は変わりません。RTL(アラビア語など)言語サポート
の項目の順序を逆にするトリックはありますか?<li>
ここで奇妙な多言語の質問:
で表示<ul>
さ<li>
れるアイテムがありますdisplay:inline
。
スタイルディレクティブを使用するとbody{direction:rtl}
、これらのアイテムの順序は変わりません。RTL(アラビア語など)言語サポート
の項目の順序を逆にするトリックはありますか?<li>
たぶんあなたが追加した場合?
ul li {
float:right;
}
ただし、リストの順序付けに関しては、ol
の代わりにを使用する必要がありul
ます。
方向を変更すると、画面の右側または左側にあるアイテムのみが移動します。内のアイテムの順序は変更されませんul
。順序を変更するには、次のようにJQueryを使用できます。
ul = $('#my-ul'); // your parent ul element
ul.children().each(function(i,li){ul.prepend(li)})
ルールを追加する
ul { unicode-bidi: bidi-override; }
警告:ブラウザによっては、「1234」のような文字列が右から左に表示される場合もあります。unicode-bidi: bidi-override; direction: rtl
そのような要素を設定する必要があるかもしれません。
CSS 2.1仕様によると、direction
プロパティは「ブロックの基本書き込み方向と、Unicode双方向アルゴリズムの埋め込みおよびオーバーライド(「unicode-bidi」を参照)の方向を指定します。さらに、テーブルの列レイアウトの方向、水平オーバーフローの方向、「text-align:justify」の場合のブロック内の不完全な最後の行の位置などを指定します。ただし、インラインボックスの順序は影響を受けません。後で、それは追加します:
「「direction」プロパティがインライン要素の並べ替えに影響を与えるには、「unicode-bidi」プロパティの値が「embed」または「override」である必要があります。」</ p>
これは少しあいまいですが、上記のコードは最新のブラウザーで機能します(それ以外の場合は、方向性の処理に多くの違いがあります)。