我非常好奇(這就是全部),以瞭解如何選擇除前兩位和後兩位元素之外的所有子元素。CSS選擇除前兩位和後兩位以外的所有子元素
I've a method,但它很討厭,難以理解。必須有一個更清晰的方法,不需要8個僞選擇器。
:not(:nth-child(1)):not(:nth-child(2)):not(:nth-last-child(1)):not(:nth-last-child(2)) {
background: purple;
}
是的,這是非常可怕的。它從字面上選擇所有元素:不是第一個或第二個第一個或最後一個。必須有一種方法使用2
作爲半變量,而不是在僞選擇器上堆積。
I thought of another one(仍然凌亂):
:not(:nth-child(-1n+2)):not(:nth-last-child(-1n+2)) {
background: purple;
}
在我的情況下(n + 2)只選擇第一個元素。但是(n + 3)解決了這個問題。 – 2013-03-24 21:09:31
是的,'n + 2'會包含第二個。只是一個':不是',然後是2和3,看起來很奇怪=) – Rudie 2013-03-24 21:11:03
好吧,我誤解了*的第一個和最後兩個*部分的問題。更新我的答案和小提琴。 – MarcinJuraszek 2013-03-24 21:24:31