我在LI元素中有一个链接,例如
<li class='app-context-menu'>
<a href="http://website.com" class='app-context-link'>http://website.com</a>
</li>
现在,如果用户点击LI元素或链接,他们会转发到链接。
我想要的是只有当他们点击链接本身时才会转发到链接。
知道如何做到这一点吗?
谢谢!
答案 0 :(得分:0)
将a
上的填充内容移至li
。将它放在a
上使其可点击区域覆盖了li。因此,a
应该padding: 0;
(或更改为display: inline;
,如另一个答案中所述)。然后将相关填充添加到li
。您还需要确保为li
或父元素提供背景颜色。
答案 1 :(得分:0)
使用CSS,您可以强制执行单击两次以关注li或任何其他元素中的链接。 你需要的是
<a>
已包含在已设置属性tabindex
的元素中。pointer-events
设置为none
<a>
pointer-events
重置为normal
。DEMO with submenu 基本HTML是:
<ul>
<li tabindex="0">
<a href="#"> link </a><!-- whatever, sub items, ...-->
</li>
</ul>
基本CSS是:
a {pointer-events:none;}
li:focus a {pointer-events:auto;}
当浏览器理解pointer-events
规则时,这当然有效。