可能重复:
哪个更正确:<h1><a>..</a></h1> OR <a><h1>..</h1></a>
在语义上,哪个更正确:a in h2 还是 h2 在 a 中?
这是一个关于 HTML 的简单问题。将链接放在标题、段落或其他 HTML 元素中的正确/最可取的方式是什么?
这边走:
<h2><a href="">Some Title</a></h2>
或者这样:
<a href=""><h2>Some Title</h2></a>
可能重复:
哪个更正确:<h1><a>..</a></h1> OR <a><h1>..</h1></a>
在语义上,哪个更正确:a in h2 还是 h2 在 a 中?
这是一个关于 HTML 的简单问题。将链接放在标题、段落或其他 HTML 元素中的正确/最可取的方式是什么?
这边走:
<h2><a href="">Some Title</a></h2>
或者这样:
<a href=""><h2>Some Title</h2></a>
更好的是
<h2><a href="">Some Title</a></h2>
因为是带有显示块的元素,并且在元素h
中具有不好的做法。block
a
注意:您不能将标题放在 HTML4 中的链接内。
在 HTML5 中,这取决于您想要的效果和语义。将整个标题放在链接内将导致可点击区域跨越整个宽度,而将链接放在标题内只会导致文本可点击。我以前使用过这两个版本,但这完全取决于我将标题放在哪里。
我更喜欢第二个:
<a href=""><h2>Some Title</h2></a>
因为你有更多的控制权,例如,如果你想做这样的事情:
<a href=""><h2>Some Title</h2> <h1>biggest</h1></a>
他们都工作得很好。
如果您愿意,您可以在http://validator.w3.org/上自行检查。
从技术上讲,<a>
是一个行内元素,并且<h2>
是一个块级元素,所以:
<h2><a href="">Some Title</a></h2>
是正确的嵌套。
也就是说,浏览器通常会忽略这样的错误嵌套,并允许您按照自己的方式进行操作。
我,当浏览器选择在标准兼容模式或怪癖模式下运行我的页面时,我不喜欢诱惑命运,所以我会选择正确的嵌套。
<h1><a href="#">text here</a></h1>
是正确的,因为 HTML 不允许内联元素 () (src) 中的块元素 ()。您的第二个示例将无法通过验证。
通常,块级元素可能包含内联元素和其他块级元素。通常,内联元素可能只包含数据和其他内联元素。这种结构区别中固有的想法是块元素创建比内联元素“更大”的结构。
我只是从另一个问题中复制了这个......