可能重複:
CSS inner id selectors,是否有意義有多個ID,選擇屬性 「#ID1#ID2 {...」
我遇到下面的CSS選擇器我覺得這不太合理。
#id1 #id2 .class1 {
color: #fff;
}
在我看來,該CSS選擇器將首先匹配的元素#id1
,然後到元素#id2
,再到元素之下,包括#id2
有一類屬性設置爲class1
。
我的直覺是,它是有效的CSS,而且它不需要指定#id1
,或者如果它只是爲了匹配文檔時#id1
有一個孩子#id2
,但不能沒有父母匹配#id2
#id1
。
由於#id1
的特異性爲0,1,0,0,而#id2
的特異性爲0,1,0,0,而.class1
的特異性爲0,0,1,0,所以得到0,2 ,1,0。但這是必要的還是有用的?看起來更有效的方法是創建兩個規則並分別通過每個ID進行選擇。
我似乎無法找到類似於#id1 #id2 ...
的CSS選擇器的任何其他示例。
任何人都可以評論這個,並幫助給我一個理智檢查?
你的直覺是對的。嵌套ID選擇器可以在將樣式應用於其他文檔時過濾掉某些文檔中某些ID的元素。這完全是關於特異性。 – BoltClock
閱讀本文可能是幫助你如何在css中定義事物https://developer.mozilla.org/zh/Writing_Efficient_CSS – sandeep
謝謝@BoltClock。情景是相似的。感謝大家的評論。在我的情況下,我只是擔心有一個更明智的方式來做佈局,這樣你就不需要在'#id1'中選擇一個'#id2' ......也許這會是一些動態的佈局,但對我來說,選擇更直接的路線以達到所需的佈局將更爲明智。 – Anonymous