html语言方向? (如果英语dir = ltr,如果arabic dir = rtl)

时间:2011-05-15 09:00:08

标签: html localization internationalization right-to-left

我能这样做吗?

我的意思是,例如,如果<div>的内容是希伯来语或阿拉伯语,请将<div>向右浮动,并为其指定dir="rtl"属性。并且,如果<div>的内容为英语,请向左浮动并将dir属性更改为"ltr"

可能吗?

3 个答案:

答案 0 :(得分:2)

如果您不懂语言,可以使用正则表达式查找希伯来语或阿拉伯语字符,然后相应地设置方向。

使用正则表达式查找希伯来语: Javascript - how to find hebrew?

所有unicode块,您可以使用它来编辑上述解决方案以适合阿拉伯语: http://www.regular-expressions.info/unicode.html#block

答案 1 :(得分:0)

如果用户有另一种语言版本你可以检查一下(不知道你在哪里保存用户语言,在cookie?)用php或javascript获取这个并加载正确的样式表和正确的规则

答案 2 :(得分:0)

您需要为每个div手动输入dir属性:

<div lang="ar" dir="rtl"><!-- some content here --></div>
<div lang="en" dir="ltr"><!-- some content here --></div>

这会自动改变流量。但是,您可能需要根据语言调整某些元素。你可以通过CSS lang伪属性:

来做到这一点
p:lang(ar) { text-align: right; }
p:lang(en) { text-align: left; }

当然你可能会这样做:

div:lang(en) { direction: ltr; }
div:lang(ar) { direction: rtl; }

这是一种不推荐的方法。因为你需要以某种方式放置语言,你也可以放置dir属性。如果你从某种编程语言中做到这一点,通常可以确定给定口语(Locale,Culture,等等)的方向性。但这将是另一个问题。