gpt4 book ai didi

validation - 我真的需要将 '&' 编码为 '&' 吗?

转载 作者:IT老高 更新时间:2023-10-28 11:06:12 25 4
gpt4 key购买 nike

我正在使用 ' & ' 在我网站的 <title> 中带有 HTML5 和 UTF-8 的符号. Google 在其 SERPs 上显示 & 号罚款,就像标题中的所有浏览器一样。

http://validator.w3.org给我这个:

& did not start a character reference. (& probably should have been escaped as &amp;.)

我真的需要做&amp; ?

我不会为了验证而对我的页面进行验证,但我很想听听人们对此的看法,以及它是否重要以及为什么重要。

最佳答案

是的。正如错误所说,在 HTML 中,属性是 #PCDATA 表示它们已被解析。这意味着您可以在属性中使用字符实体。单独使用 & 是错误的,如果不是针对宽松的浏览器以及这是 HTML 而不是 XHTML 的事实,将会破坏解析。只需将其转义为 & 一切都会好起来的。

HTML5 允许您不转义,但仅当后面的数据看起来不像是有效的字符引用时。但是,最好只转义此符号的所有实例,而不是担心哪些应该是,哪些不需要。

记住这一点;如果您没有将 & 转义为 &,那么对于您创建的数据(代码很可能无效)已经够糟糕了,您也可能没有转义标签分隔符,这对于用户提交的数据来说是一个大问题,这很可能导致 HTML 和脚本注入(inject)、cookie 窃取和其他漏洞。

请转义您的代码。以后可以省去很多麻烦。

关于validation - 我真的需要将 '&' 编码为 '&amp;' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3493405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com