27

したがって、電話番号は常にltr(左から右)です。

多言語のWebサイトで作業している場合、方向rtlのテキスト段落内に電話番号(「+」​​プレフィックスと「-」で区切られた番号)を挿入する必要があります(もちろん、関連する言語の場合)

だから私はこのようなものを持っています:

.ltr #test {direction:ltr}
.rtl #test {direction:rtl}
#phone {direction:ltr}
<div class="ltr"><p id="test">Please call to <span id="phone">+44-123-321</span> for some help.</p></div>
<div class="rtl"><p id="test">Please call to <span id="phone">+44-123-321</span> for some help.</p></div>

もちろん、これは機能しません。''はdirectionブロック要素に対してのみ機能し、' span'はインライン要素であるためです。span' 'から''にdisplay:inline変更できないように、電話番号を段落内に含める必要があります

私ははっきりしていますか?

それを機能させる方法は?

4

3 に答える 3

34

追加してみてください#phone {direction:ltr; display:inline-block}

于 2010-12-01T15:18:33.180 に答える
23

符号の直前にUnicode方向性マーカー文字を使用+して、アルゴリズムに必要なヒントを与えることができます。

これらは:

LTR: 0x200E
RTL: 0x200F

それで:

<p id="text">Please call to <span id="phone">&#x200F;+44-123-321</span> for some help</p>

詳細については、このSOの回答を参照してください。

于 2010-12-01T15:18:53.740 に答える
14

別のオプションはdir='ltr'、インライン要素で属性を使用することです。

<p id="text">Please call to <span dir='ltr'>+44-123-321</span> for some help</p>

HTMLに含めることは、属性&#x200E;を使用することと同じくらい悪いことに注意してください。dir='ltr'

于 2011-12-26T09:14:35.273 に答える