这是我的HTML结构:
div{
direction: rtl;
}
span{
direction: ltr;
}
这是预期的结果:
如你所见,– 符号应该出现在数字的开头.我怎样才能做到这一点?
注意:div的方向应该是rtl.
编辑:我生成这样的数字:
$sums_value = sprintf("%+d",$sums_value);
/*
sums_value = -2 //=> -2
sums_value = 2 //=> +2
所以数字格式正确,但我不知道为什么它会在输出中被破坏:
最佳答案
由于您的屏幕截图在不同的span元素中具有“-2”,因此您可以在该特定范围内使用unicode-bidi选项:
div{
direction: rtl;
}
span{
direction: ltr;
unicode-bidi: bidi-override;
}
The general idea of unicode-bidi
is to have the ability to change the default behavior of directionality of the text where you have multiple languages on the same page.
由于您使用的是RTL语言,并且希望-2出现在LTR中,因此unicode-bidi:bidi-override非常方便.