赞
踩
pointer-events
w3school 的定义是:设置元素是否对指针事件做出反应。
属性值 | 描述 |
---|---|
auto | 默认值。元素对指针事件做出反应。 |
none | 元素不对指针事件做出反应。 |
initial | 将此属性设置为其默认值,即auto |
inherit | 从其父元素继承此属性。 |
此属性为继承性属性。如果父元素设置pointer-events: none;
以阻止指针事件,要想子元素有指针事件必须设置pointer-events: auto;
上代码:
<body>
<div class="poup">
<button onclick="alert('我是蒙版按钮')" type="button">蒙版上的按钮</button>
</div>
<div class="container">
<div><button onclick="alert('我是第一个按钮')" type="button">我是第一个按钮</button></div>
<div><button onclick="alert('我是第二个按钮')" type="button">我是第二个按钮</button></div>
<div><button onclick="alert('我是第三个按钮')" type="button">我是第三个按钮</button></div>
</div>
</body>
*{ margin: 0;padding: 0; } .container{ height: 300px; width: 100%; background: rgba(253,242,200,0.3); } .container div{ padding: 30px; text-align: center; } .container button{ cursor: pointer; } .poup{ position: fixed; top: 0;left: 0; width: 100%;height: 100px; background-color: rgba(0,0,0,0.2); } .poup button{ margin: 30px; cursor: pointer; }
我们运行到浏览器上发现效果是这样的:蒙版遮挡住了第一个按钮,且蒙版上的按钮可点击
为了实现蒙版不遮挡第一个按钮,我们给.poup
添加pointer-events: none;
属性。实现效果如图:
我们发现此时蒙版不遮挡按钮了,但是蒙版上的按钮也没有了点击事件,所以我们给.poup button
添加pointer-events: auto;
属性。实现效果如图:
这样就实现了我们想要的结果,示例完成。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。