CSS的pointer-events属性详细介绍(作用和注意事项)


Posted in HTML / CSS onApril 23, 2014

而本文要说的pointer-events的风格更像JavaScript,它能够:

1.阻止用户的点击动作产生任何效果
.阻止缺省鼠标指针的显示
3.阻止CSS里的hover和active状态的变化触发事件
4.阻止JavaScript点击动作触发的事件

一个CSS属性能做所有的这么多事情!

The CSS

这个pointer-events属性有很多可以使用的属性值,但大部分都是针对SVG的:auto, none, visiblePainted*, visibleFill*, visibleStroke*, visible*, painted*, fill*, stroke*, all*, 以及 inherit。其中none值能阻止点击、状态变化和鼠标指针变化:

复制代码
代码如下:
.disabled { pointer-events: none; }

一些需要注意的关于pointer-events的事项:

1.子元素可以声明pointer-events来解禁父元素的阻止鼠标事件限制。
2.如果你对一个元素设置了click事件监听器,然后你移除了pointer-events样式声明,或把它的值改变为auto,监听器会重新生效。基本上,监听器会遵守pointer-events的设定。

测试代码:

复制代码
代码如下:

<p>下面的这个链接上的 <code>pointer-events</code>属性值是<code>none</code>。点击它们,什么都不会发生。我还在“测试”链接上添加了监听器。如果<code>pointer-events</code>的值是<code>none</code>,对话框就不会弹出来,你可以在console里修改它的值,这样点击后就会弹出对话框!</p>

<p><a href="javascript:;" id="testLink" style="pointer-events:none;">测试</a></p>

<p><a href="javascript:;" class="pointerLogo" style="pointer-events:none;">测试</a></p>

<script type="text/javascript">
document.getElementById("testLink").addEventListener("click", function(e) {
alert("点击了!");
});
</script>

我第一次注意到pointer-events属性是在Firefox Marketplace网站上,他们拿它来禁止按钮的点击,这样的好处是样式上也得到了控制。当然,不要使用pointer-events来屏蔽一些十分关键的触发动作,因为这个样式可以通过浏览器控制台删除掉!

HTML / CSS 相关文章推荐
css动画效果之animation的常用样式
Mar 09 HTML / CSS
CSS3的常见transformation图形变化用法小结
May 13 HTML / CSS
CSS3制作3D立方体loading特效
Nov 09 HTML / CSS
HTML5打开本地app应用的方法
Mar 31 HTML / CSS
HTML5 用动画的表现形式装载图像
Mar 08 HTML / CSS
详解HTML5 canvas绘图基本使用方法
Jan 29 HTML / CSS
html5+svg学习指南之SVG基础知识
Dec 17 HTML / CSS
canvas线条的属性详解
Mar 27 HTML / CSS
详解如何将 Canvas 绘制过程转为视频
Jan 25 HTML / CSS
html5使用window.postMessage进行跨域实现数据交互的一次实战
Feb 24 HTML / CSS
css背景和边框标签实例详解
May 21 HTML / CSS
开发微信小程序之WXSS样式教程
Apr 18 HTML / CSS
纯CSS实现菜单、导航栏的3D翻转动画效果
Apr 23 #HTML / CSS
css3和jquery实现自定义checkbox和radiobox组件
Apr 22 #HTML / CSS
css3实现垂直下拉动画菜单示例
Apr 22 #HTML / CSS
纯CSS改变webkit内核浏览器的滚动条样式
Apr 17 #HTML / CSS
css3实现超立体3D图片侧翻倾斜效果
Apr 16 #HTML / CSS
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
Apr 16 #HTML / CSS
纯CSS实现的大小渐变、渐远效果
Apr 15 #HTML / CSS
You might like
深入php函数file_get_contents超时处理的方法详解
2013/06/03 PHP
PHP基于单例模式实现的数据库操作基类
2016/01/15 PHP
php、java、android、ios通用的3des方法(推荐)
2016/09/09 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
2017/04/15 PHP
Javascript实例教程(19) 使用HoTMetal(7)
2006/12/23 Javascript
JS 类型转换常见方法小结
2010/05/31 Javascript
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
JS获取键盘上任意按键的值(实例代码)
2013/11/12 Javascript
js动态创建标签示例代码
2014/06/09 Javascript
JQuery Tips相关(1)----关于$.Ready()
2014/08/14 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
全系IE支持Bootstrap的解决方法
2015/10/19 Javascript
JS中递归函数
2016/06/17 Javascript
JavaScript中的工厂函数(推荐)
2017/03/08 Javascript
Angular如何引入第三方库的方法详解
2017/07/13 Javascript
让你彻底掌握es6 Promise的八段代码
2017/07/26 Javascript
js经验分享 JavaScript反调试技巧
2018/03/10 Javascript
解决vue router组件状态刷新消失的问题
2018/08/01 Javascript
如何将HTML字符转换为DOM节点并动态添加到文档中详解
2018/08/19 Javascript
使用Angular 6创建各种动画效果的方法
2018/10/10 Javascript
小程序实现图片移动缩放效果
2020/05/26 Javascript
vue使用svg文件补充-svg放大缩小操作(使用d3.js)
2020/09/22 Javascript
python模拟Django框架实例
2016/05/17 Python
python实现多线程网页下载器
2018/04/15 Python
Python Image模块基本图像处理操作小结
2019/04/13 Python
C#实现对任一张表的数据进行增,删,改,查要求,运用Webservice,体现出三层架构
2014/07/11 面试题
公司业务主管岗位职责
2013/12/07 职场文书
美德少年事迹材料
2014/01/23 职场文书
小学生家长评语大全
2014/02/10 职场文书
致跳高运动员加油稿
2014/02/12 职场文书
简单的大学生自我鉴定
2014/02/18 职场文书
协会周年庆活动方案
2014/08/26 职场文书
建筑质检员岗位职责
2015/04/08 职场文书
2016高一新生军训心得体会
2016/01/11 职场文书
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle
Python编程根据字典列表相同键的值进行合并
2021/10/05 Python