小心!这个装饰符号会乱序你的文本

The footgun of right-to-left decorative characters

3dado3212💬 0
小心!这个装饰符号会乱序你的文本

最近在博客排版中,我本想用 Unicode 里的 Manichaean Punctuation Fleuron 符号(𐫱)作为日期和分类的分隔符,结果发现它竟然让后面的数字跑到了标签中间!原来这个来自摩尼教的古老符号被 Unicode 标记为从右向左(Right-to-Left)类型。当它与从左向右的文本混合时,浏览器的双向排版算法(Unicode Bidirectional Algorithm)就会把它当成强类型字符,强行打乱周围弱类型字符(如数字)的显示顺序。别慌,这并非无解,只需给这个符号加上 <bdi> 标签或使用 unicode-bidi: bidi-override 的 CSS 样式,就能隔离方向性,让排版回归正常。下次使用这类生僻装饰符时,记得先检查它的方向属性,避免踩坑。

"摩尼教花饰符号属于 R 类型,因此它会重新排列弱类型的数字块,导致渲染结果与预期不符。"

同日更多故事 · 2026-07-11