CSS有一个:模糊选择器(伪类)?

时间:2012-07-28 17:37:00

标签: css css-selectors pseudo-class

我知道有一个:focus选择器。我似乎无法找到:blur选择器的使用或文档。有吗?

4 个答案:

答案 0 :(得分:82)

CSS中没有:blur伪类。

dynamic pseudo-classes与其他伪类一样,事实上所有其他选择器代表状态;根据文档树,它们不代表事件状态之间的转换。即::focus伪类表示处于焦点的元素;它不表示仅接收焦点的元素,也不存在:blur伪类来表示仅丢失焦点的元素。< / p>

同样,这适用于:hover伪类。虽然它表示一个在其上有指针设备的元素,但是对于刚刚指向的元素和:mouseover伪的元素都没有:mouseout伪类。刚刚指向的元素的类。

如果您需要将样式应用于不在焦点的元素,您有两种选择:

  1. 使用:not(:focus)(浏览器支持较少):

    input:not(:focus), button:not(:focus) {
        /* Styles for only form inputs and buttons that do not have focus */
    }
    
  2. 声明适用于任何元素的规则,无论其焦点状态如何,并覆盖具有焦点的元素:

    input, button {
        /* Styles for all form inputs and buttons */
    }
    
    input:focus, button:focus {
        /* Styles for only form inputs and buttons that have focus */
    }
    

答案 1 :(得分:5)

不,CSS没有模糊伪选择器,大概是因为模糊更像是一个事件而不是一个状态。 (目前还不清楚什么时候应该失去模糊状态。)

答案 2 :(得分:3)

默认情况下,所有常规选择器都不会聚焦。所以你不需要特殊的模糊选择器。

这些是优先选择器。

.myButton
.myButton:hover
.myButton:focus
.myButton:active

答案 3 :(得分:2)

使用常规转换设置模糊转换。

viewController