揭穿 :not() 伪类的多参数神话
在 CSS 中,:not() 伪类允许根据特定标准排除元素。然而,有一个常见的误解,即多个参数可以在伪类中链接在一起。当尝试使用类型作为标准排除多种类型的输入元素时,就会出现这种误解。
考虑提供的示例:
form input:not([type="radio"], [type="checkbox"]) { /* css here */ }
意图是选择除单选之外的所有类型的输入元素和复选框。然而,这种语法不起作用。
解决方案:打破排除标准
要解决这个问题,而不是在 :not() 中链接多个参数, CSS 提供了一个简单的解决方案:为每个排除标准使用单独的 :not() 语句。在这种情况下:
input:not([type="radio"])):not([type="checkbox"])
此语法正确选择既不是单选也不是复选框的输入元素。 :not() 伪类在独占的基础上运行,因此使用多个语句可确保满足要排除的元素的所有指定条件。
记住:
:not() 伪类不支持在单个语句中链接多个参数。要排除多种类型的元素,请为每个排除条件使用单独的 :not() 语句。通过将排除标准分解为单独的语句,您可以有效地定位 CSS 中所需的元素。
以上是CSS :not() 是否支持元素排除的多个参数?的详细内容。更多信息请关注PHP中文网其他相关文章!