4

是否可以防止多行 html 锚标记中的行之间的不可点击区域?在此示例中,我使用行高 1.5,您不能在行之间单击。

我知道在 html5 中我们可以将块级标签放在锚中,<a><div>Link</div></a>但问题是这部分内容可以由用户编辑,我不能要求他们像这样写他们的锚链接。是否可以仅解决此问题css

CSS:

a {
    line-height:1.5em;
}

HTML:

<a href="#">This is a <br> multiline anchor</a>
<br><br><br>
<a href="#">This is a very long anchor displayed as a multiline anchor without BR</a>

演示:

http://jsfiddle.net/ergec/F52uY/2/

4

3 回答 3

11

您可以设置display: inline-block;display: blocka然后它将是可点击的。

示例:http: //jsfiddle.net/RMXfc/

或者您可以同时增加padding和设置负数margin。这将减少差距。

示例:http: //jsfiddle.net/693z4/

于 2013-11-04T14:12:57.077 回答
2

如果你给你的锚标签一个display: block;你将有一个坚实的可点击区域。

a {
  line-height:1.5em;
  display: block;
}

JSFIDDLE

一个问题display: block;是没有指定宽度,那么整个 100% 宽度都是可点击的。

于 2013-11-04T14:13:25.940 回答
1

在不弄乱文本的其余布局(包括链接的周围文本)的情况下近似它的唯一方法是向这些链接添加一些顶部/底部填充。

因此,添加padding:3px 0;到您的代码将解决问题。(不过,它需要根据您的font-sizeandline-height进行调整)

演示在http://jsfiddle.net/F52uY/7/

于 2013-11-04T14:18:57.210 回答