CSS的pointer-events屬性詳細(xì)介紹(作用和注意事項(xiàng))

而本文要說(shuō)的pointer-events的風(fēng)格更像JavaScript,它能夠:
1.阻止用戶的點(diǎn)擊動(dòng)作產(chǎn)生任何效果
.阻止缺省鼠標(biāo)指針的顯示
3.阻止CSS里的hover和active狀態(tài)的變化觸發(fā)事件
4.阻止JavaScript點(diǎn)擊動(dòng)作觸發(fā)的事件
一個(gè)CSS屬性能做所有的這么多事情!
The CSS
這個(gè)pointer-events屬性有很多可以使用的屬性值,但大部分都是針對(duì)SVG的:auto, none, visiblePainted*, visibleFill*, visibleStroke*, visible*, painted*, fill*, stroke*, all*, 以及 inherit。其中none值能阻止點(diǎn)擊、狀態(tài)變化和鼠標(biāo)指針變化:
一些需要注意的關(guān)于pointer-events的事項(xiàng):
1.子元素可以聲明pointer-events來(lái)解禁父元素的阻止鼠標(biāo)事件限制。
2.如果你對(duì)一個(gè)元素設(shè)置了click事件監(jiān)聽(tīng)器,然后你移除了pointer-events樣式聲明,或把它的值改變?yōu)閍uto,監(jiān)聽(tīng)器會(huì)重新生效?;旧?,監(jiān)聽(tīng)器會(huì)遵守pointer-events的設(shè)定。
測(cè)試代碼:
<p>下面的這個(gè)鏈接上的 <code>pointer-events</code>屬性值是<code>none</code>。點(diǎn)擊它們,什么都不會(huì)發(fā)生。我還在“測(cè)試”鏈接上添加了監(jiān)聽(tīng)器。如果<code>pointer-events</code>的值是<code>none</code>,對(duì)話框就不會(huì)彈出來(lái),你可以在console里修改它的值,這樣點(diǎn)擊后就會(huì)彈出對(duì)話框!</p>
<p><a href="javascript:;" id="testLink" style="pointer-events:none;">測(cè)試</a></p>
<p><a href="javascript:;" class="pointerLogo" style="pointer-events:none;">測(cè)試</a></p>
<script type="text/javascript">
document.getElementById("testLink").addEventListener("click", function(e) {
alert("點(diǎn)擊了!");
});
</script>
我第一次注意到pointer-events屬性是在Firefox Marketplace網(wǎng)站上,他們拿它來(lái)禁止按鈕的點(diǎn)擊,這樣的好處是樣式上也得到了控制。當(dāng)然,不要使用pointer-events來(lái)屏蔽一些十分關(guān)鍵的觸發(fā)動(dòng)作,因?yàn)檫@個(gè)樣式可以通過(guò)瀏覽器控制臺(tái)刪除掉!
相關(guān)文章
- 這篇文章主要介紹了CSS pointer-events屬性的使用,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-24
- 本篇文章主要介紹了css3 pointer-events,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-18
CSS利用pointer-events防止重復(fù)點(diǎn)擊的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于CSS利用pointer-events防止重復(fù)點(diǎn)擊的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者理解具有一定的參考學(xué)習(xí)價(jià)值,感興趣的朋2017-08-07使用CSS的pointer-events屬性實(shí)現(xiàn)鼠標(biāo)穿透效果的神奇技巧
當(dāng)pointer-events的值設(shè)置為none之后,瀏覽器將不會(huì)獲得鼠標(biāo)在當(dāng)前位置的層上的點(diǎn)擊事件,而造成鼠標(biāo)穿透的效果!下面就來(lái)為大家展開(kāi)講解一下使用CSS的pointer-events屬性實(shí)現(xiàn)2016-06-28- 本文主要介紹了CSS中的pointer-events屬性的用法,十分的詳細(xì),有需要的小伙伴參考下。2015-02-26
css pointer-events屬性實(shí)現(xiàn)下面元素可點(diǎn)擊
是否曾經(jīng)有過(guò)這樣的經(jīng)歷:把一個(gè)元素置于另一個(gè)元素之上,而希望下面的那個(gè)元素成為可點(diǎn)擊的?現(xiàn)在,利用css的pointer-events屬性即可做到。2010-04-17css不常見(jiàn)屬性之pointer-events的使用方法
這篇文章主要介紹了css不常見(jiàn)屬性之pointer-events的使用方法的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-27