vlambda博客
学习文章列表

<bdi> | HTML5 双向隔离标签

<bdi>元素用于隔离文本的一小部分,该文本的格式可设置成与周围的文本方向相反。当具有从右到左方向性的语言(例如阿拉伯语或希伯来语)与左到右语言内联使用时,此功能很有用。


双向文本是既可以包含从左到右(LTR)排列的字符序列又可以从右到左(RTL)排列的字符序列的文本。浏览器通过Unicode双向算法来处理此问题。在此算法中,字符被赋予了隐式的方向性:例如,拉丁字符被视为LTR,而阿拉伯字符被视为RTL。其他一些字符(例如空格和标点符号)被视为中性,并根据其周围字符的方向性分配了方向性。


通常,双向算法会自行设定文字方向,无需提供任何特殊的参数。<bdi> 有两种工作方式:


  • 嵌入文本的方向性<bdi> 不会影响周围文本的方向性。

  • 嵌入文本的方向性<bdi> 不受周围文本方向性的影响


定义与用法

  • bdi 指的是 bidi 隔离(Bi-directional Isolation)。

  • <bdi> 标签允许您设置一段文本,使其脱离其父元素的文本方向设置。

  • 在发布用户评论或其他您无法完全控制的内容时,该标签很有用。

  • <bdi> 标签是 HTML5 中的新标签。



语法格式

<bdi>……</bdi>


示例代码

<ul>
<li>用户 <bdi>小张</bdi>: 60 分</li>
<li>用户 <bdi>小李</bdi>: 80 分</li>
<li>用户 <bdi>小王</bdi>: 90 分</li>
</ul>

效果展示:

  • 用户 小张: 60 分

  • 用户 小李: 80 分

  • 用户 小王: 90 分



浏览器支持

IE Firefox Chrome Safari Opera
<bdi> | HTML5 双向隔离标签 <bdi> | HTML5 双向隔离标签

IE不支持 <bdi> 标签。



全局属性


<bdi> 标签支持 HTML 的全局属性。



事件属性


<bdi> 标签支持 HTML 的事件属性。



更多示例


让我们看看不同语言的展示效果,不熟悉语义顺序的语言可以使用此标签:

<p>中文中的网站是:<bdi>网站</bdi></p>
<p>阿拉伯语中的网站是:<bdi>موقع الكتروني</bdi></p>
<p>希伯来语中的网站是:<bdi>אֲתַר אִינטֶרנֶט</bdi>.</p>


效果展示:


中文中的网站是:网站

阿拉伯语中的网站是:موقع الكتروني

希伯来语中的网站是:אֲתַר אִינטֶרנֶט.


点击下方“阅读原文”阅览效果更佳