网站首页 > PHP源码 > 文件数据 > 表达CSS选择器的更优雅方式

表达CSS选择器的更优雅方式

  • 作者:互联网
  • 时间:2026-01-19 12:33:01
是否有更优雅的方式来编写以下CSS选择器?

input:not([type="image"]):not([type="submit"])

我想匹配所有不是图像类型或类型提交的HTML输入元素.

目标浏览器只是Firefox,所以Mozilla CSS扩展很好.

Is there a more elegant way to write the following CSS selector?

不,没有. Firefox 3以前允许:not()包含允许你编写的任意数量的选择器

input:not([type="image"], [type="submit"])

但这在技术上是一个错误,因为当时语法没有任何标准,并且它不再适用于任何主要版本.现在它已经在Selectors 4了,所以希望它很快就能回归.

选择器4还包含:matches(),它在Firefox中实现为:-moz-any(),但是你不能使用它,因为它不接受否定(看作:not()将具有相同的扩展语法无论如何,让每个允许另一个没有意义,但是你想知道为什么他们没有实现:-moz-not()与它一起去).