我知道有一个:focus
选择器。我似乎无法找到:blur
选择器的使用或文档。有吗?
答案 0 :(得分:82)
CSS中没有:blur
伪类。
dynamic pseudo-classes与其他伪类一样,事实上所有其他选择器代表状态;根据文档树,它们不代表事件或状态之间的转换。即::focus
伪类表示处于焦点的元素;它不表示仅接收焦点的元素,也不存在:blur
伪类来表示仅丢失焦点的元素。< / p>
同样,这适用于:hover
伪类。虽然它表示一个在其上有指针设备的元素,但是对于刚刚指向的元素和:mouseover
伪的元素都没有:mouseout
伪类。刚刚指向的元素的类。
如果您需要将样式应用于不在焦点的元素,您有两种选择:
使用:not(:focus)
(浏览器支持较少):
input:not(:focus), button:not(:focus) {
/* Styles for only form inputs and buttons that do not have focus */
}
声明适用于任何元素的规则,无论其焦点状态如何,并覆盖具有焦点的元素:
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