什么是HTML中的CDATA?
这个问题在这里已经有了答案:
解析器将解析XML文档中的所有文本。
但是CDATA部分中的文本将被解析器忽略。
CDATA - (未解析)字符数据
术语CDATA用于不应被XML解析器解析的文本数据。
像“<”和“&”这样的字符在XML元素中是非法的。
“<”将产生一个错误,因为解析器将其解释为新元素的开始。
“&”将产生错误,因为解析器将其解释为字符实体的开始。
一些文本,如JavaScript代码,包含大量“<”或“&”字符。 为了避免错误,脚本代码可以定义为CDATA。
解析器忽略CDATA节中的所有内容。
CDATA部分以“ <![CDATA[
”结束于“ ]]>
”
在程序输出中使用CDATA
因为HTML解析器不识别CDATA开始和结束标记,也不识别HTML实体引用,例如<
在<script>
标签内。 这可能会导致Web浏览器出现渲染问题,并且如果用于显示来自不受信任源的数据,则可能会导致跨站点脚本漏洞,因为两种解析器将不同意CDATA部分结束的位置。
一个简短的SGML教程。
另请参阅CDATA上的Wikipedia条目。
CDATA
在HTML中完全没有意义。
CDATA
是一个XML结构,它设置一个标签的内容,通常是#PCDATA分析的字符数据,取而代之的是#CDATA,即非分析字符数据。 它仅在XHTML中相关且有效。
它用在script
标记中以避免解析<
和&
。 在HTML中,这不是必需的,因为在HTML中, script
已经是#CDATA。
来自http://en.wikipedia.org/wiki/CDATA:
由于能够在网页脚本中使用少于符号(<)和与符号(&)并且在较小程度上使用样式,而不必记住将其转义,所以通常在内联文本和XHTML文档中的元素。 但是,为了使文档也可以通过HTML分析器进行分析,这些分析器不识别CDATA标记,所以CDATA标记通常会被注释掉,如下面的JavaScript示例所示:
<script type="text/javascript">
//<![CDATA[
document.write("<");
//]]>
</script>
链接地址: http://www.djcxy.com/p/88905.html
下一篇: paragraph