是否有一种方法禁用链接使用CSS?

我有一个名为current-page的类,并希望禁用该类的链接,以便在单击它们时不发生任何操作。


当前回答

试试这个:

<style>
    .btn-disable {
        display: inline-block;
        pointer-events: none;
    }
</style>

其他回答

你可以用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最好的。

另一个技巧是在上面放置一个看不见的元素。这将禁用任何悬停效果以及

.myButton{
    position: absolute;
    display: none;
}

.myButton::after{
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

身体{ font-family: 'Roboto', sans-serif; 粗细:500; } a.disable { pointer-events:没有; 颜色:黑色; 文字修饰:没有; } 正常< a href = " https://example.com " > < / > <a href="https://example.com" class="disable"> disable </a> .

.disabled { pointer-events:没有; 光标:违约; 透明度:0.6; } <a href="#" class="disabled">link</a>

CSS做不到这一点。CSS仅用于表示。你的选择是:

不要在<a>标签中包含href属性。 使用JavaScript找到该类的锚元素,并相应地删除它们的href或onclick属性。jQuery将帮助您实现这一点(NickF展示了如何做类似的事情,但更好)。