首页 > 解决方案 > 选择除两个 id 之外的所有正文元素

问题描述

我需要选择除两个 id 之外的所有正文元素并将 css 规则应用于它们。我正在使用此代码,它适用于一个 id,但是当添加第二个 id 时,该代码不再起作用。此代码有效:

body>*:not(#frm){
filter: blur(3px);
pointer-events: none;
}

我试过这个,但它不起作用:

body>*:not(#frm,#dte2){
  filter: blur(3px);
  pointer-events: none;
}

还有这个

body>*:not(#frm),(#dte){
  filter: blur(3px);
  pointer-events: none;
}

所以我的问题是你如何选择2个ID?

标签: css

解决方案


为否定选择两个ID的问题在于,它会匹配不存在的标准,并且会匹配不存在的条件。:not()#frm#dte#dte#frm

您需要做的是将两个:not()伪选择器链接在一起body>*:not(#frm):not(#dte)

body>*:not(#frm):not(#dte) {
  filter: blur(3px);
  pointer-events: none;
}
<body>
  <div id="frm">Frm</div>
  <div id="dte">Dte</div>
  <div id="other">Other</div>
</body>


推荐阅读