我应该在HTML5中使用<![CDATA [...]]>吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (38)

确定<![CDATA[...]]>部分可以在XHTML5中使用,但HTML5呢?

提问于
用户回答回答于

这个CDATA结构并不完全适用于HTML,它适用于XML。

人们有时会在HTML script标签中使用它们,因为它不需要它们转义某些特殊字符。这绝不是一个要求,但(无论是HTML 4还是5)。

用户回答回答于

特定于元素的解析scriptstyle标记,XHTML-HTML兼容性指导:“以下具有转义的代码可确保脚本和样式元素在XHTML和HTML(包括旧版浏览器)中都能正常工作。”

最大向后兼容性:

<script type="text/javascript"><!--//--><![CDATA[//><!--
    ...
//--><!]]></script>

更简单的版本,与“更旧的浏览器”不兼容:

<script>//<![CDATA[
   ...
//]]></script>

因此,CDATA可以在HTML5中使用,并且在XHTML-HTML兼容性指南中推荐使用。这对多语言 HTML / XML / XHTML页面非常有用,这些页面在开发过程中被创建和解析为XML,但作为HTML5提供更好的跨浏览器兼容性。Polyglot页面有它的好处,我自己也使用过它,因为它更容易调试XML / XHTML5。例如,Google Chrome会针对无效的XML / XHTML5(包括字符转义)发出错误提示,而HTML5提供的同一页面“可能正常工作”又称为“可能的工作”。

扫码关注云+社区

领取腾讯云代金券