替换为'的HTML代码是否符合语法规范?
HTML代码有效性问题解答
这段仅将撇号替换为'实体的HTML代码是完全有效的,原因如下:
属性值的转义规则允许这种写法
当HTML属性值用双引号(")包裹时,属性值内的单引号(')既可以直接使用,也可以转义为合法的HTML实体(比如')。HTML规范允许在属性值中使用任何标准字符实体替代对应字符,浏览器解析时会自动将实体还原为原始字符,所以不会影响渲染效果。尖括号与单引号的角色本质不同
你尝试替换尖括号为<、>后代码失效,是因为尖括号是HTML的核心结构字符:<用来标记标签起始,>用来标记标签结束。一旦转义成实体,浏览器就会把它们当成普通文本处理,不再识别为标签结构,自然无法解析成<p>标签。
而单引号只是属性值里的内容字符(这里用来包裹字体名称),不属于HTML的结构控制字符,转义后不会破坏标签本身的结构,只会在解析属性值时被还原,因此代码依然能正常工作。
内容的提问来源于stack exchange,提问作者Slevin
相关产品推荐
相关产品推荐

