为了账号安全,请及时绑定邮箱和手机立即绑定

HTML中的CDATA是什么?

HTML中的CDATA是什么?

繁星点点滴滴 2019-10-16 10:52:25
JavaScript标记和HTML中CDATA的用途是什么?<script type="text/javascript"> // <![CDATA[// ]]></script> 
查看完整描述

3 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

XML文档中的所有文本都将由解析器解析。


但是解析器将忽略CDATA节中的文本。


CDATA-(未解析)字符数据


术语CDATA用于不应该由XML解析器解析的文本数据。


XML元素中的字符“ <”和“&”是非法的。


“ <”将产生错误,因为解析器将其解释为新元素的开始。


“&”将产生错误,因为解析器将其解释为字符实体的开始。


某些文本(例如JavaScript代码)包含许多“ <”或“&”字符。为了避免错误,可以将脚本代码定义为CDATA。


解析器将忽略CDATA节中的所有内容。


一个CDATA部件以“开始<![CDATA[”,结尾是“ ]]>”


在程序输出中使用CDATA


如果Web浏览器将文档呈现为HTML,则XHTML文档中的CDATA部分可能会被Web浏览器以不同的方式解析,因为HTML解析器无法识别CDATA的开始和结束标记,也无法识别HTML实体引用(例如&lt;在<script>标记内)。如果用于显示来自不受信任来源的数据,这可能会导致Web浏览器中的渲染问题,并可能导致跨站点脚本漏洞,因为这两种解析器将在CDATA部分的结束位置上存在分歧。


查看完整回答
反对 回复 2019-10-16
?
心有法竹

TA贡献1866条经验 获得超5个赞

CDATA 在HTML中根本没有任何意义。

CDATA是一个XML构造,用于设置标记的内容,该内容通常为#PCDATA-解析的字符数据,取而代之的是#CDATA,即未解析的字符数据。它仅在XHTML中相关且有效。

script标记中使用它可以避免解析<&。在HTML中,这是不需要的,因为在HTML中,script已经是#CDATA。


查看完整回答
反对 回复 2019-10-16
  • 3 回答
  • 0 关注
  • 2406 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信