2

问题是这样的,

<p>Hi world</p>

长期运输:

Hi world

右转:

world Hi

我无法让这个 RTL 显示没有使用 css。

我现在尝试了这些 CSS 属性。

direction: rtl;
unicode-bidi: embed || normal; //same effect, nothing changes.
unicode-bidi: bidi-override; //each letter comes from r-t-l. Like: dlrow iH
text-align: right;

反正有没有world Hi使用css形成文本。

谢谢

4

3 回答 3

4

不,这是不可能的,方向性并不意味着用于这样的操作。

direction属性及其对应的 HTMLdir属性设置了方向中性文本的方向性。即使空格等中性字符介入,它也不会影响具有强固有方向性的字符串。该值bidi-override意味着它所说的,它只是强制一个单一的写入方向。

你也需要处理这些词,因为 CSS 没有可以在这里使用的伪元素,你需要使用真正的元素,比如

<p><span class=w>Hi</span> <span class=w>world</span></p>

然后,您可以对整个元素和单个单词使用不同的方向性设置:

span { unicode-bidi: embed;}
p { unicode-bidi: bidi-override; direction: rtl;  text-align: left; }   
于 2012-06-13T10:16:20.467 回答
1

我一直以为阅读方向是在html开始标签中设置的,像这样:

<html dir="rtl">
于 2012-06-13T08:12:14.317 回答
1

我认为使用“rtl”你会得到如下输出:“dlrow iH”

由于您无法在 CSS 中检测到单独的单词,因此我建议您使用 JavaScript 来解决此问题:

var string = "Hi world";
var array = string.split(" ");
var reversed = array.reverse();
reversed
-> ["world", "Hi"]
于 2012-06-13T08:15:38.780 回答