结合 LTR 和 RTL 内容改变负数的方向
Change direction of negative number with combination of LTR and RTL content
这是我的 HTML 结构:
div{
direction: rtl;
}
span{
direction: ltr;
}
<div>
<span>امروز -2</span>
</div>
这是预期结果:
如您所见,-
符号应该出现在数字的开头。我该怎么做?
注:div
的方向应该是rtl
.
ٍ编辑: 我生成的数字是这样的:
$sums_value = sprintf("%+d",$sums_value);
/*
sums_value = -2 //=> -2
sums_value = 2 //=> +2
所以数字格式正确,但我不知道为什么它会在输出中被破坏:
您可以使用 before pseudo element 添加连字符。
q::before {
content: "-";
color: blue;
}
<q>Some quotes</q>, he said.
将呈现为
-Some quotes, he said.
由于您的屏幕截图在不同的 span
元素中包含“-2”,您可以在该特定范围内使用 unicode-bidi
选项:
div{
direction: rtl;
}
span{
direction: ltr;
unicode-bidi: bidi-override;
}
<div>
امروز
<span>-2</span>
</div>
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
非常方便。
以下对我有用:
span {
unicode-bidi: plaintext;
}
更多信息:https://developer.mozilla.org/en-US/docs/Web/CSS/unicode-bidi
顺便说一下,'bidi' 是双向的缩写。
这是我的 HTML 结构:
div{
direction: rtl;
}
span{
direction: ltr;
}
<div>
<span>امروز -2</span>
</div>
这是预期结果:
如您所见,-
符号应该出现在数字的开头。我该怎么做?
注:div
的方向应该是rtl
.
ٍ编辑: 我生成的数字是这样的:
$sums_value = sprintf("%+d",$sums_value);
/*
sums_value = -2 //=> -2
sums_value = 2 //=> +2
所以数字格式正确,但我不知道为什么它会在输出中被破坏:
您可以使用 before pseudo element 添加连字符。
q::before {
content: "-";
color: blue;
}
<q>Some quotes</q>, he said.
将呈现为
-Some quotes, he said.
由于您的屏幕截图在不同的 span
元素中包含“-2”,您可以在该特定范围内使用 unicode-bidi
选项:
div{
direction: rtl;
}
span{
direction: ltr;
unicode-bidi: bidi-override;
}
<div>
امروز
<span>-2</span>
</div>
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
非常方便。
以下对我有用:
span {
unicode-bidi: plaintext;
}
更多信息:https://developer.mozilla.org/en-US/docs/Web/CSS/unicode-bidi
顺便说一下,'bidi' 是双向的缩写。