这两个标签有什么区别?它们看起来做的事情一样。
<p>My favorite color is <ins>red</ins>!</p>
和
<p>My favorite color is <u>red</u>!</p>
这两个标签有什么区别?它们看起来做的事情一样。
<p>My favorite color is <ins>red</ins>!</p>
和
<p>My favorite color is <u>red</u>!</p>
u
表示下划线文本样式,而ins
表示其内容已被“插入[...]到文档的不同版本中(例如,在立法草案中,立法者需要查看更改)。 ins
的呈现未指定;相反,描述了一些可能的呈现方式。在实践中,浏览器大多使用下划线。还有一个正式的语法差异是,u
仅允许文本级内容,而ins
也可以包含块。ins
用于任何其他内容,因为一些未来的浏览器可能会以对插入文本有意义但不适用于其他情况的方式处理它。而且仅仅为了下划线使用 ins
不会带来实际的好处: u
是更短的标记并且得到了更广泛的支持。但再说一遍,在网页上除链接外需要加下划线的情况很少见。ins
是一个语义标签:它表示已插入的元素(有关删除元素,请参见del
)。而u
则指示引擎将元素呈现为下划线。
一些引擎可能会决定将ins
呈现为u
,但您可以使用“语义含义”来决定以其他方式呈现它(使用CSS)。说到CSS,它使<u>
变得无用,并且使样式维护更加困难,就像<b>
、<center>
等一样。
至于另外一个编辑标签del
,它并没有被广泛使用,也不太清楚它应该被使用在哪里。
参考:
http://www.w3.org/TR/html-markup/ins.html
ins
有一个含义:这段文字是后来加入的。u
没有实际意义,只是告诉浏览器在下面加些下划线。尽管CSS可以像任何其他元素一样覆盖它,但这个元素自从4.0版本以来就变得毫无意义了。ins
是在4.0版本中引入的,并仍然使用。u
是在至少2.0版本中引入的(HTML1.0从未真正停止开发,因此2.0是第一个真正的标准),并在4.0版本中被弃用。u
只能用于内联元素,例如 <p><u>this is valid</u></p>
是有效的,但是 <u><p>this makes no sense</p></u>
没有意义。另一方面,ins
是极少数既可以是块级元素又可以是内联元素的元素之一(在5.0中还有更多的内联元素获得了这个状态)。因此,<p><ins>this is valid</ins></p><ins><p>this is also valid</p></ins>
是有效的。ins
具有可选的引用 属性,用于指定解释更改的文档的URI(或文档内的片段,可能是它所在的同一文档)和datetime
属性,其中包含更改日期以W3日期时间格式。因此:
ins
。ins
并使用CSS来更改其外观。u
。HTML的历史就像一场噩梦,我们正在试图从中醒来。div
或span
,然后使用CSS来添加下划线。<u>
在HTML5中并不过时。自2011年4月以来,它一直是符合规范的元素。请参见http://lists.w3.org/Archives/Public/public-html/2011Apr/0212.html。 - Alohci
<u>
已经被弃用,而<ins>
则没有。有点这个意思。 - Roddy of the Frozen Peas