Den pointer-events
egenskapen kan för kontroll över hur HTML-element svarar på mus / beröringshändelser - inklusive CSS sväva / aktiva stater, klick / TAP händelser i Javascript och om markören är synlig eller inte.
.avoid-clicks ( pointer-events: none; )
Medan pointer-events
egenskapen tar elva möjliga värden, alla utom tre av dem är reserverade för användning med SVG. De tre giltiga värdena för alla HTMl-element är:
none
förhindrar alla klick-, tillstånds- och marköralternativ på det angivna HTML-elementetauto
återställer standardfunktionen (användbar för användning på underordnade element i ett element medpointer-events: none;
specificeratinherit
använderpointer-events
värdet på elementets förälder
Kolla in den här pennan!
Som visas ovan är det främsta användningsfallet pointer-events
att låta klick- eller tryckbeteende "passera" ett element till ett annat element under det på Z-axeln. Till exempel skulle detta vara användbart för grafiska överlägg eller för att dölja element med opacity
(t.ex. verktygstips) och ändå tillåta textval på innehållet under det.
Intressanta platser
- ”Användningen av pekarehändelser i CSS för icke-SVG-element är experimentell. Funktionen brukade vara en del av CSS3 UI-utkastsspecifikationen, men på grund av många öppna problem har den skjutits upp till CSS4. ” - Mozilla MDN
- "Om du lägger till en klickhändelselyssnare till ett element, tar sedan bort pekaren-händelsestilen (eller ändrar dess värde till auto, klickhändelsen aktiverar den angivna funktionaliteten. I grund och botten respekterar klickhändelsen pekarens händelsevärde." - David Walsh
Webbläsarstöd
Denna webbläsares supportdata kommer från Caniuse, som har mer detaljer. Ett nummer indikerar att webbläsaren stöder funktionen i den versionen och uppåt.
Skrivbord
Krom | Firefox | IE | Kant | Safari |
---|---|---|---|---|
4 | 3.6 | 11 | 12 | 4 |
Mobil / surfplatta
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 2.1 | 3.2 |
Stödet är lite djupare i vissa webbläsare när det används på till exempel IE 9 stöder det.