詳解css3 pointer-events(阻止hover、active、onclick等觸發事件來


pointer-events 更像是JavaScript,它能夠:

  • 阻止用戶的點擊動作產生任何效果

  • 阻止缺省鼠標指針的顯示

  • 阻止CSS里的 hover 和 active 狀態的變化觸發事件

  • 阻止JavaScript點擊動作觸發的事件

實際代碼使用中案例:

1、提交頁面,提交按鈕點擊后,添加這個樣式屬性(style="pointer-events"),來防止重復提交。 @camnpr

2、一些層的絕對定位,覆蓋按鈕,穿透可以點擊它。等等。

來看下具體用法:

pointer-events:  auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit

pointer-events屬性有很多值,但是對於瀏覽器來說,只有auto和non兩個值可用,其它的幾個是針對SVG的(本身這個屬性就來自於SVG技術)。

@鄭州網建

pointer-events屬性值詳解

  • auto——效果和沒有定義pointer-events屬性相同,鼠標不會穿透當前層。在SVG中,該值和visiblePainted的效果相同。

  • none——元素不再是鼠標事件的目標,鼠標不再監聽當前層而去監聽下面的層中的元素。但是如果它的子元素設置了pointer-events為其它值,比如auto,鼠標還是會監聽這個子元素的。

  • 其它屬性值為SVG專用,這里不再多介紹了。

瀏覽器兼容性

Firefox 3.6+和chrome 2.0+ 以及safari 4.0+都支持這個CSS3屬性,IE6/7/8/9都不支持(IE11又支持,不過很好的一點是在ie中給a加disabled 點擊事件自動無效。),Opera在SVG中支持。 但是 該屬性HTML中 不支持 。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM