是否有一种方法禁用链接使用CSS?
我有一个名为current-page的类,并希望禁用该类的链接,以便在单击它们时不发生任何操作。
是否有一种方法禁用链接使用CSS?
我有一个名为current-page的类,并希望禁用该类的链接,以便在单击它们时不发生任何操作。
当前回答
Pointer-events:none将禁用该链接:
.disabled {
pointer-events: none;
}
<a href="#" class="disabled">link</a>
其他回答
你可以将href属性设置为javascript:void(0):
.disabled { /*禁用链接样式*/ 颜色:黑色; } <a class="disabled" href="javascript:void(0)“链接> < / >
您还可以调整另一个元素的大小,使其覆盖链接(使用正确的z-index):这将“吃掉”点击。
(我们偶然发现这一点,因为我们有一个问题,突然不活跃的链接,由于“响应式”设计导致H2覆盖他们时,浏览器窗口的移动大小。)
CSS只能用来改变一些东西的样式。使用纯CSS所能做的最好的事情就是完全隐藏链接。
您真正需要的是一些JavaScript代码。下面是如何使用jQuery库完成您想做的事情。
$('a.current-page').click(function() { return false; });
你可以用CSS来做这件事的一种方法是在包装div上设置一个CSS,你设置它消失,其他东西会取代它的位置。
例如:
<div class="disabled">
<a class="toggleLink" href="wherever">blah</a>
<span class="toggleLink">blah</span
</div>
使用CSS
.disabled a.toggleLink { display: none; }
span.toggleLink { display: none; }
.disabled span.toggleLink { display: inline; }
要真正关闭a,您必须替换它的click事件或href,如其他人所述。
PS:澄清一下,我认为这是一个相当不整洁的解决方案,对于SEO来说也不是最好的,但我相信它是纯CSS最好的。
演示 试试这个
$('html').on('click', 'a.Link', function(event){
event.preventDefault();
});