HTML标记中,将Header包含在Link中还是将Link包含在Header中?

28
这是一个有关HTML的简单问题。将链接放在标题、段落或其他HTML元素中,哪种方式更正确/更可取?
这种方式:
```

标题

```
还是这种方式:
```

标题

```
6个回答

32
更好的是
<h2><a href="">Some Title</a></h2>

因为h是一个具有块级显示属性的元素,在a元素中使用block并不是一个好的做法。


6

注意:在HTML4中,不能把头部放在链接内。

在HTML5中,这取决于你想要的效果和语义含义。将整个头部放在链接内会导致可点击区域跨越整个宽度,而将链接放在头部内则只会使文本可点击。我以前使用过两个版本,但完全取决于我放置头部的位置。


3
我更喜欢第二个选项:
<a href=""><h2>Some Title</h2></a>

因为你拥有更多的控制权,例如如果你想做这样的事情:

<a href=""><h2>Some Title</h2> <h1>biggest</h1></a>

3

2

从技术角度来说,<a> 是内联元素,而 <h2> 是块级元素,因此:

<h2><a href="">Some Title</a></h2>

正确的嵌套方式是这样的。

话虽如此,浏览器通常会忽略不正确的嵌套方式,让你按照自己想要的方式来做。

但我不喜欢冒险,因为浏览器可能选择以标准兼容模式或怪异模式运行我的页面,所以我会选择正确的嵌套方式。


0
<h1><a href="#">text here</a></h1>

这是正确的,因为HTML不允许块级元素(<div>)在内联元素(<a>)中嵌套(src)。你的第二个例子将无法通过验证。

一般来说,块级元素可以包含内联元素和其他块级元素。一般来说,内联元素只能包含数据和其他内联元素。这种结构上的区别意味着块级元素创建的结构比内联元素更“大”。

我刚刚从另一个问题中复制了这个...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接