【发布时间】:2016-10-20 15:44:27
【问题描述】:
你好user r12a,
我阅读了您在另一个答案中提到的链接。但我还是有些疑惑。 dir 属性设置文本的基本方向。因此,如果我将One اثنان three 的基本方向设置为ltr,那么它必须保持原样,如果我将dir 设置为rtl,那么输出应该是three اثنان One。下面的脚本显示它按预期工作:
<div dir="ltr">
one اثنان three
</div>
<div dir="rtl">
one اثنان three
</div>
到目前为止一切顺利。 dir 属性证明设置文本的基本方向。但令人惊讶的是,如果封闭的字母属于相同的强类型类别、rtl 或ltr,它不会设置基本方向。例如。如果我将dir rtl 设置为one two three,那么我希望dir强制改变基本方向并将结果输出为three two one。下面的例子表明它没有:
<div dir="ltr">
One two three
</div>
<div dir="rtl">
One two three
</div>
问题 1: 声称dir 属性设置文本的基本方向的MDN article 和w3c article 在技术上是否不正确? p>
让我们考虑另一种情况。 one、two 和 three 被声明为覆盖其默认内联显示类型的内联块:
<div dir="rtl">
<span style="display: inline-block">One</span>
<span style="display: inline-block">Two</span>
<span style="display: inline-block">Three</span>
</div>
这里所有三个字母都是 ltr 强类型,就像倒数第二个示例一样,但与该示例相反,现在 dir 属性能够更改文本的基本方向。
问题 2: 为什么dir 可以改变 inline-block 文本的基本方向,但不能改变 inline 文本的基本方向?
【问题讨论】:
-
这不是一样的as your other question?
-
@j08691 另一个问题询问它与
text-align: left有何不同。在这个问题中,我问的是 MDN 定义在技术上是否正确。
标签: html right-to-left w3c bidirectional