簡體   English   中英

css:不是選擇器,除了條件以外,所有目標

[英]css :not selector to target everything but a condition

http://jsfiddle.net/m7qLdstp/1/

<style>
:not(div p), p{
  color: red
}
</style>

<p>This is a paragraph that should be red.</p>
<div><p>This is a paragraph that should not be red.</p></div>

是否可以使用css :not選擇器(在這種情況下)將所有<p>顏色變成紅色,但任何<p>代替<div>除外?

我在jsfiddle上運行了一些不同的變體,但無法正常工作?

以下內容將更改不是<div>直接后代的所有<p>元素的顏色:

:not(div) > p{
    color: red;
}

演示小提琴

您可以將它們分別定位

p{
  color: red
}

div p{color:black}

小提琴

它之所以有效,是因為div pp更具體

根據CSS-Tricks ,:not()選擇器只能采用“簡單選擇器”,定義為:

類型選擇器,通用選擇器,屬性選擇器,類選擇器,ID選擇器或偽類選擇器

但:

可能不包含附加選擇器或任何偽元素選擇器。

但是,正如其他答案所暗示的那樣,至少在此示例案例和其他簡單案例中,您可以通過多種方法來解決此問題並完成行為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM