RSK*_*RSK 1321
答案已经在问题的评论中.为了获得更多可见性,我在此处复制此解决方案:
.not-active {
pointer-events: none;
cursor: default;
text-decoration: none;
color: black;
}
Run Code Online (Sandbox Code Playgroud)
<a href="link.html" class="not-active">Link</a>
Run Code Online (Sandbox Code Playgroud)
有关浏览器支持,请参阅https://caniuse.com/#feat=pointer-events.如果你需要支持IE,有一个解决方法; 看到这个答案.
警告:pointer-events
在CSS中使用非SVG元素是实验性的.该功能曾经是CSS3 UI草案规范的一部分,但由于许多未解决的问题,已被推迟到CSS4.
ami*_*mir 134
.disabled {
pointer-events: none;
cursor: default;
opacity: 0.6;
}
Run Code Online (Sandbox Code Playgroud)
<a href="#" class="disabled">link</a>
Run Code Online (Sandbox Code Playgroud)
nic*_*ckf 122
CSS只能用于改变某些东西的风格.你可以用纯CSS做的最好的事情是完全隐藏链接.
你真正需要的是一些javascript.以下是使用jQuery库执行所需操作的方法.
$('a.current-page').click(function() { return false; });
Run Code Online (Sandbox Code Playgroud)
Kev*_*ner 34
CSS无法做到这一点.CSS仅用于演示.你的选择是:
href
在<a>
标记中包含该属性.class
,并相应地删除它们href
或onclick
属性.jQuery会帮助你(NickF展示了如何做类似但更好的事情).Jig*_*att 31
<a href="#" class="btn btn-primary btn-lg disabled" role="button">Primary link</a>
<a href="#" class="btn btn-default btn-lg disabled" role="button">Link</a>
Run Code Online (Sandbox Code Playgroud)
<button type="button" class="btn btn-link">Link</button>
Run Code Online (Sandbox Code Playgroud)
Xin*_*nus 18
您可以将href
属性设置为javascript:void(0)
.disabled {
/* Disabled link style */
color: black;
}
Run Code Online (Sandbox Code Playgroud)
<a class="disabled" href="javascript:void(0)">LINK</a>
Run Code Online (Sandbox Code Playgroud)
fyj*_*ham 10
只有这样你才能在没有CSS的情况下做到这一点,就是在包装div上设置一个CSS,让你消失,其他东西就把它取而代之.
例如:
<div class="disabled">
<a class="toggleLink" href="wherever">blah</a>
<span class="toggleLink">blah</span
</div>
Run Code Online (Sandbox Code Playgroud)
用CSS喜欢
.disabled a.toggleLink { display: none; }
span.toggleLink { display: none; }
.disabled span.toggleLink { display: inline; }
Run Code Online (Sandbox Code Playgroud)
要实际关闭A,您必须替换它的click事件或href,如其他人所述.
PS:只是为了澄清我认为这是一个相当凌乱的解决方案,对于搜索引擎优化它也不是最好的,但我相信它是纯粹的CSS最好的.
Cre*_*rge 10
如果您希望它只是CSS,则禁用逻辑应由CSS定义.
要在CSS定义中移动逻辑,您必须使用属性选择器.这里有些例子 :
=
您可以选择禁用包含特定href值的链接,如下所示:
<a href="//website.com/exact/path">Exact path</a>
[href="//website.com/exact/path"]{
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
*=
此处,/keyword/
将禁用包含在路径中的任何链接
<a href="//website.com/keyword/in/path">Contains in path</a>
[href*="/keyword/"]{
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
^=
在[attribute^=value]
操作者的目标与一个特定值开始的属性.允许您放弃网站和根路径.
<a href="//website.com/begins/with/path">Begins with path</a>
[href^="//website.com/begins/with"]{
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
您甚至可以使用它来禁用非https链接.例如 :
a:not([href^="https://"]){
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
$=
在[attribute$=value]
操作者的目标与特定值结束的属性.丢弃文件扩展名可能很有用.
<a href="/path/to/file.pdf">Link to pdf</a>
[href$=".pdf"]{
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
Css可以定位任何HTML属性.可能是rel
,target
,data-custom
等...
<a href="#" target="_blank">Blank link</a>
[target=_blank]{
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
您可以链接多个规则.假设您要禁用每个外部链接,而不是那些指向您网站的链接:
a[href*="//"]:not([href*="my-website.com"]) {
pointer-events: none;
}
Run Code Online (Sandbox Code Playgroud)
或禁用指向特定网站的pdf文件的链接:
<a href="//website.com/path/to/file.jpg">Link to image</a>
[href^="//website.com"][href$=".jpg"] {
color: red;
}
Run Code Online (Sandbox Code Playgroud)
自IE7以来,支持属性选择器.:not()
自IE9以来的选择器.
试试这个:
<style>
.btn-disable {
display:inline-block;
pointer-events: none;
}
</style>
Run Code Online (Sandbox Code Playgroud)
该指针的事件属性,可控制HTML元素如何响应鼠标/触摸事件-包括CSS悬停/活动状态,单击/点击事件在Javascript中,光标是否是可见的.
这不是禁用链接的唯一方法,而是一种适用于IE10 +和所有新浏览器的好方法:
.current-page {
pointer-events: none;
color: grey;
}
Run Code Online (Sandbox Code Playgroud)
<a href="#" class="current-page">This link is disabled</a>
Run Code Online (Sandbox Code Playgroud)
小智 6
我用了:
.current-page a:hover {
pointer-events: none !important;
}
Run Code Online (Sandbox Code Playgroud)
而且还不够;在某些浏览器中,它仍然显示链接,闪烁。
我必须添加:
.current-page a {
cursor: text !important;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1154495 次 |
最近记录: |