从语义上讲,哪个更正确:a在h2中,还是在h2中?

Onl*_*ere 53 html standards semantics

我不知道决定使用哪个似乎都工作.

我应该<a><h2>元素内放置链接吗?

或者相反?

什么是正确的标准?

Bol*_*ock 65

如果您正在使用HTML5,则只能<h2><a>元素中放置元素,HTML5 允许元素中的任何其他<a>元素.之前的规范(或者当前的规范,但你想看看它们)从未允许这样做.

通常的做法是放在<a>里面<h2>.这有效,并且一直有效,并且是HTML5之前唯一有效的方法,用于标题链接,因为链接引用该标题中的文本.你很少需要放置<h2>,<a>除非它<h2>是一些更复杂的结构的一部分,它作为一个整体的超链接.

  • @mikeyUX:你为什么告诉我而不是OP呢? (6认同)
  • 老兄......在迂腐的意义上忘记"有效"...这都是关于展示水平的.如果a设置为display:block则没问题,html4,xhtml1,html5 ......无论如何. (3认同)

Kyb*_*rek 12

它的功能也不相同,有一个很大的区别.

如果你把<h2><a>标题的整个块(例如线)会像链接.

但是,如果你把<a><h2>,唯一可见的文本将作为链接.(你可以用光标改变来测试它)

  • "标题具有更高的重要性"是什么意思? (3认同)
  • 由于额外的信息,我对你的答案进行了投票,尽管它并没有真正回答哪个在语义上更正确的问题。 (2认同)

dld*_*dnh 7

<h2>是块级别而<a>不是,所以<h2>可以包含<a>但不能反过来

http://htmlhelp.com/reference/html40/block.html

  • 我不是说你的回答是错误的*,只是注意到.他们也没有特别说HTML4. (10认同)
  • 在HTML5中不正确. (7认同)
  • OP没有提到html5 (2认同)