CSS3——pointer-events

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mr_wuch/article/details/72833910

pointer-events使用者控制特定的图形元素在何时成为鼠标事件的target

这个属性我觉得和html标签属性的disabled差不多

一个特别有用的地方就是当我们设置属性值为none时,可以指示鼠标事件穿过该元素,并指向位于元素下面的元素。 也就是可以出发该元素底部元素的点击事件,这一点在页面布局时候是很有用的。

兼容性

IE11+
所以只适用于移动端

初始值:auto

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

auto
与pointer-events属性未指定时的表现效果相同,对于SVG内容,该值与visiblePainted效果相同

none
元素永远不会成为鼠标事件的target。但是,当其后代元素的pointer-events属性指定其他值时,鼠标事件可以指向后代元素,在这种情况下,鼠标事件将在捕获或冒泡阶段触发父元素的事件侦听器。

visiblePainted
只适用于SVG。元素只有在以下情况才会成为鼠标事件的目标:

  • visibility属性值为visible,且鼠标指针在元素内部,且fill属性指定了none之外的值
  • visibility属性值为visible,鼠标指针在元素边界上,且stroke属性指定了none之外的值

visibleFill
只适用于SVG。只有在元素visibility属性值为visible,且鼠标指针在元素内部时,元素才会成为鼠标事件的目标,fill属性的值不影响事件处理。

visibleStroke
只适用于SVG。只有在元素visibility属性值为visible,且鼠标指针在元素边界时,元素才会成为鼠标事件的目标,stroke属性的值不影响事件处理。

visible
只适用于SVG。只有在元素visibility属性值为visible,且鼠标指针在元素内部或边界时,元素才会成为鼠标事件的目标,fill和stroke属性的值不影响事件处理。

painted
只适用于SVG。元素只有在以下情况才会成为鼠标事件的目标:

  • 鼠标指针在元素内部,且fill属性指定了none之外的值
  • 鼠标指针在元素边界上,且stroke属性指定了none之外的值

visibility属性的值不影响事件处理。

fill
只适用于SVG。只有鼠标指针在元素内部时,元素才会成为鼠标事件的目标,fill和visibility属性的值不影响事件处理。

stroke
只适用于SVG。只有鼠标指针在元素边界上时,元素才会成为鼠标事件的目标,stroke和visibility属性的值不影响事件处理。

all
只适用于SVG。只有鼠标指针在元素内部或边界时,元素才会成为鼠标事件的目标,fill、stroke和visibility属性的值不影响事件处理。

MDN

猜你喜欢

转载自blog.csdn.net/mr_wuch/article/details/72833910