这两个标签有什么区别?似乎做同样的事情。

<p>My favorite color is  <ins>red</ins>!</p>


<p>My favorite color is  <u>red</u>!</p>

最佳答案

正式的区别取决于您选择视为正式的HTML规范或草稿。

在HTML 4.01规范中,u表示带下划线的文本样式,而ins表示其内容已“插入到不同版本的文档中(例如,在立法草案中,立法者需要查看更改) 。未指定ins的呈现;而是描述了一些可能的渲染。实际上,浏览器大多使用下划线。语法上也存在正式的区别,即u仅允许文本级内容,而ins也可能包含块。

在HTML5草案中,ins本质上是相似的,但是措辞不同,并且明确建议或(半)建议默认渲染使用下划线(请参见10.3.4 Phrasing content)。 u以前已从草案中排除,现在添加了但具有发明含义:“u元素表示文本范围,该文本范围具有清晰表达的,非显式呈现的非文本注释,例如将文本标记为中文的专有名称。文字(中文专有名称标记),或将文字标记为拼写错误。”如果这对您没有意义,那么您不是唯一的一个。 u在建议的或推荐的默认渲染中带有下划线。

实际上,除了大多数旧的浏览器会忽略ins标记外,效果几乎是相同的。某些奇特的浏览器可能会使用不同的渲染。我没有看到任何证据表明任何浏览器,搜索引擎或任何其他相关软件在两者之间有任何区别;它们的“语义差异”没有实际影响。

但是,我不会在某种意义上将ins用于除插入文本之外的任何内容,只是因为某些将来的浏览器可能会以某种对插入文本有意义的方式来对待它,否则就不会使用。仅将ins用于下划线并不会带来明显的好处:u标记更短,支持范围更广。再说一次,在网页上除了链接之外,您应该在文本下划线的情况很少见。

关于html - <u>标签和<ins>标签之间有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12148517/

10-11 07:52