HTML,CSS,文本方向

时间:2013-07-26 17:55:54

标签: html css

我遇到了css方向的问题,现在我修复了它后,我试图理解为什么修复工作正常,所以这就是问题所在:

我上了我的css html{direction:rtl;},我想从ltr中提供数字,所以我决定使用span标签并使用css span{direction:ltr;}设置此span标签的样式,但我不知道为什么它没有工作我甚至尝试了span{text-align:left;},在{Both>方向和text-align 上使用了!important,最后我找到了2个解决方案:

  1. 第一个是使用属性dir ='ltr'
  2. 第二个是span {direction:ltr; display:inline-block}
  3. 我正在使用第二种解决方案,但如果有人能解释这两种情况,我将非常感谢,谢谢大家,祝你们度过愉快的一天。

1 个答案:

答案 0 :(得分:3)

在深入研究w3c规范之后,我想我找到了问题的答案

来自w3c

  

HTML或XHTML充当text / html

     

仅使用标记。 CSS2建议建议在HTML中对bidi文本使用标记。事实上,它甚至可以说符合HTML用户代理可能会忽略CSS bidi属性。这是因为HTML规范明确定义了用户代理相对于bidi标记的预期行为。

强调添加

所以我猜你在你的css中设置了direction: rtl;时,浏览器就完全忽略了它。

规范明确指出,您应该在标记中使用dir属性进行rtl布局。

虽然您使用的CSS适用于您检查过的浏览器,但并非适用于所有浏览器的解决方案。请阅读bidi / direction的{CSS}规范{/ 3}}