<h2><a href="">Some Title</a></h2>
因为h
是一个具有块级显示属性的元素,在a
元素中使用block
并不是一个好的做法。
注意:在HTML4中,不能把头部放在链接内。
在HTML5中,这取决于你想要的效果和语义含义。将整个头部放在链接内会导致可点击区域跨越整个宽度,而将链接放在头部内则只会使文本可点击。我以前使用过两个版本,但完全取决于我放置头部的位置。
<a href=""><h2>Some Title</h2></a>
因为你拥有更多的控制权,例如如果你想做这样的事情:
<a href=""><h2>Some Title</h2> <h1>biggest</h1></a>
从技术角度来说,<a>
是内联元素,而 <h2>
是块级元素,因此:
<h2><a href="">Some Title</a></h2>
正确的嵌套方式是这样的。
话虽如此,浏览器通常会忽略不正确的嵌套方式,让你按照自己想要的方式来做。
但我不喜欢冒险,因为浏览器可能选择以标准兼容模式或怪异模式运行我的页面,所以我会选择正确的嵌套方式。
<h1><a href="#">text here</a></h1>
这是正确的,因为HTML不允许块级元素(<div>
)在内联元素(<a>
)中嵌套(src)。你的第二个例子将无法通过验证。
一般来说,块级元素可以包含内联元素和其他块级元素。一般来说,内联元素只能包含数据和其他内联元素。这种结构上的区别意味着块级元素创建的结构比内联元素更“大”。
我刚刚从另一个问题中复制了这个...