微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css – RTL在网页上使用破折号反转数字

当我的网站显示希伯来语文本与数字混合,并且中间有一个数字与破折号,中间的破折号显示RTL.例如,文字
οמה4-0,它应该显示4-0而不是0-4,因为它是一个数字序列,’4’在’0’之前.然而,在我检查的浏览器上,它在’4’之前显示’0′.

由于这可能会发生系统数据中的任何地方显示,所以最好有一个CSS解决方案不需要这样的东西:

<span style="direction:ltr">4-0</span>

文本的一般方向应保持RTL,但带有破折号的数字应显示为LTR.应在主要浏览器(IE,Firefox,Chrome)上正确显示.

解决方法

您可以在数字序列之前和之后嵌入 left-to-rightright-to-left标记字符(& lrm;和& rlm) – 这不需要任何额外的标记,不分隔符,并将保留源文档中的文本顺序.

一个替代方法是使用一些标记来区分数字,与破折号(类似于你所做的),因为Unicode BIDI算法在没有帮助(lrm和rlm)的情况下,不会很好地处理这个特定场景.

没有必要像您所做的一样内联CSS,但您仍然需要以下内容

CSS:

.numdash
{
  direction: ltr;
}

HTML:

<span class="numdash">4-0</span>

第三个选项是反转数字,并在标记中简单地使用0-4,并将其与Bidi算法相反.

原文地址:https://www.jb51.cc/css/214104.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。