2012-08-27 210 views
3

这两个标签有什么区别?似乎也是这样做的。
<u>标签和<ins>标签之间有什么区别?

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



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

http://coding.smashingmagazine.com/2011/11/18/html5-semantics/ –

+0

''已弃用。 ''不是。 [种类](http://html5doctor.com/u-element/) –

回答

5

官方区别取决于您选择认定为官方的HTML规范或草案。

按照HTML 4.01规范,u表示下划线的文本样式,而ins表示其内容已被“插入”与文档的不同版本相关(例如,立法者需要查看更改)。未指定ins的渲染;相反,描述了一些可能的渲染。实际上,浏览器大多使用下划线。 u仅允许文本级内容,而ins也可能包含块,也有正式的语法差异。

在HTML5草案中,ins基本上类似,但词汇不同,并且有明确的建议或者(半)建议,默认呈现使用下划线(请参见10.3.4 Phrasing content)。 u之前被排除在草稿之外,现在被添加,但是具有发明的含义:“u元素表示一个文本的范围,具有未明示但明确呈现的非文本注释,例如将文本标记为中文中的专有名称文字(中文专有名称标记),或者将文字标注为拼写错误。“如果这对你没有意义,你不是唯一的一个。并且u已强调为建议的或推荐的默认呈现。

实际上,效果大多相同,只是ins标签被一些旧浏览器忽略。一些外来的浏览器可以使用不同的渲染。我还没有看到有任何浏览器,搜索引擎或任何其他相关软件的证据在两者之间作出区分;他们的“语义差异”没有实际影响。

但是,从某种意义上说,除了插入的文本之外,我不会使用ins,只是因为某些未来的浏览器可能会以某种方式对待插入文本,但不会以其他方式处理。如果仅使用ins来强调:u是较短的标记并得到更广泛的支持,所以没有任何实际好处。再次,在网页上除了链接之外应该在文字上加下划线的情况很少见。

4

ins是一个语义标签:它表示已经插入的元件(也参见del用于删除的元素),而u给出发动机的指示来呈现元素作为下划线。

某些引擎可能决定将ins渲染为u,但您可以使用“语义含义”决定使用其他方式(使用CSS)渲染它。说到CSS,它使<u>无用,只是使样式维护更加困难,就像<b>,<center>等等。

至于其他版本的标签,del,它没有被广泛使用,它不是很清楚为什么它应该是。

参考:

http://www.w3.org/TR/html-markup/ins.html

http://www.w3.org/TR/html-markup/del.html

http://www.w3.org/TR/html-markup/u.html

+0

因为至少HTML4.0以上,不过,U在HTML5中已经过时了,因为它没有任何用处。 –

+0

@JonHanna谢谢。编辑 –

10

语义。 <ins>标记表示在第一次发布后插入的内容。 <u>标签仅用于下划线,没有意义。

参考:<ins><u>

1
  1. ins有一个意思:这个文本被插入在稍后的日期。
  2. u没有意义,它只是告诉浏览器把它强调一下。 (虽然CSS可以覆盖,就像任何其他元素一样,这个元素自4.0以来毫无意义的原因之一)
  3. ins在4.0中引入,并且仍然是当前的。
  4. u与至少2.0引入(HTML1.0从来没有真正停止工作正在进展中,从而2.0是第一个真正的标准),并用4.0
  5. 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>
  6. ins 有一个可选的cite属性,给出了文档的URI(或文档中的片段,可能与其所在的文档相同)以解释该更改,并且datetime给出了W3 date-time format中的更改日期。

因此:

  1. 如果下划线是表明添加的东西,使用ins
  2. 如果您想要指示添加的内容,但不能用下划线表示,请使用ins并使用CSS更改其显示方式。
  3. 永远不要使用u。 HTML的历史是我们试图唤醒的噩梦。
  4. 如果您想要强调其他原因的下划线,请选择最符合您意思的元素,如果您确实无法做得更好,请使用divspan,并使用CSS对其加下划线。
+1

''在HTML5中并未过时。自2011年4月以来,它一直是一个符合要素。请参阅http://lists.w3.org/Archives/Public/public-html/2011Apr/0212。html – Alohci

+0

谢谢你@Alohci(就此而言,我认为这是更好的决定,或者拿出b和我也是,或者让你进入)。 –

相关问题