前言
存在类似的问题,但它们并不足以满足我的需求。对于HTML4,XHTML和HTML5,这个问题的答案似乎有所不同,对后者没有明确的答案。此问题特定于HTML5中的属性字符串,不应解决任何其他版本的HTML或转义,而不是特定于用作属性值的字符串。
问题
我正在编写使用自定义数据属性的代码,我想确保我放入这些属性的字符串被正确转义。我想进行必要的最小量的转义,以使值正确和安全。我使用双引号("
)作为属性分隔符。目前,我唯一正在做的就是用"
替换双引号。还有其他需要转义的角色吗?
答案 0 :(得分:2)
需要转义的字符是:
"
或'
)我想进行必要的最小量的转义,以使值正确且安全。
我建议简单优先于最小。你不太可能以这种方式犯错误。
<script>
和<style>
内部特殊内容的元素外)转义HTML中可能具有特殊含义的五个字符:<
,>
,{{ 1}},&
和"
。这些指南适用于属性值,文本节点内部,HTML 4,HTML 5和XML(包括XHTML)。