Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS选择器中的OR语句_Css_Css Selectors - Fatal编程技术网

CSS选择器中的OR语句

CSS选择器中的OR语句,css,css-selectors,Css,Css Selectors,可以使用CSS选择器,例如a[href^=“http:”],a[href^=“mailto:”来匹配文档中的所有外部链接和邮件链接,但是有没有一种方法可以在选择器的引号部分使用“或”语句,就像这样:a[href^=“(http | mailto):”]?据我所知,没有办法按你的要求去做。在CSS选择器规范中,管道字符与属性选择器一起使用时用于不同的用途。它用作名称空间分隔符 根据W3C上的选择器规范: 属性选择器中的属性名称以CSS形式给出 限定名称:以前声明的命名空间前缀 可以在由命名空间分隔

可以使用CSS选择器,例如
a[href^=“http:”],a[href^=“mailto:”
来匹配文档中的所有外部链接和邮件链接,但是有没有一种方法可以在选择器的引号部分使用“或”语句,就像这样:
a[href^=“(http | mailto):”]

据我所知,没有办法按你的要求去做。在CSS选择器规范中,管道字符与属性选择器一起使用时用于不同的用途。它用作名称空间分隔符

根据W3C上的选择器规范:

属性选择器中的属性名称以CSS形式给出 限定名称:以前声明的命名空间前缀 可以在由命名空间分隔的属性名称前面加前缀 分隔符“垂直条”(|)。与中的名称空间保持一致 XML建议,默认名称空间不适用于属性, 因此,不带名称空间组件的属性选择器仅适用 对于没有名称空间的属性(相当于“|attr”;这些 属性被称为在“每元素类型”命名空间中 分区”)。星号可用于名称空间前缀 指示选择器将匹配所有属性名称,而不使用 关于属性的名称空间

第一条规则将只匹配属性为att的元素 “”命名空间,其值为“val”

第二条规则将只匹配属性为att的元素 不考虑属性的名称空间(不包括名称空间)

最后两个规则是等效的,只匹配具有 属性att,其中该属性不在命名空间中


来源:

我正在检查CSS选择器语法,但似乎唯一的方法是使用逗号分隔符:

selectors_group
  : selector [ COMMA S* selector ]*
此外,还有一些相关的词汇规则:

{w}"+"           return PLUS;
{w}">"           return GREATER;
{w}","           return COMMA;
{w}"~"           return TILDE;
没有规则,也没有规则,但我注意到的一点是它们有否定:

"{N}{O}{T}"("  return NOT;)

你提到的第一个选择器会做你想做的事…@Sevensacat:这不是他说的吗?符号是组合符(除了
)。这个否定仅仅指的是
:not()
伪类,所以它没有什么特殊之处。@BoltClock:我知道它没有什么特殊之处,我只是提到了我在css选择器规范中找到的一些东西(与我相关)。我应该删除我的答案吗?还有,一种属性选择器,按属性与
val
或前缀为
val-
的值完全匹配,但与命名空间前缀一样,它不提供所要求的功能。
"{N}{O}{T}"("  return NOT;)