假設我們有一個包含5個項目的列表,並且我們想要將一些特定樣式應用到第一個或最後一個孩子。但是這個列表的功能需要通過jQuery應用來隱藏它的一些項目(我們稱之爲.hide
),它將設置目標項目上的display: none;
。選擇:不包含某些特定類別的第一個孩子或最後一個孩子
的特定風格我在一開始談話應該只適用於第一和可見的最後一個項目,所以我想要做到的,是莫名其妙地跳過它應用了.hide
類的那些在他們身上,並在同一時間的第一個或最後一個項目。
我已經試過通過組合一些:not(.hide)
和:first-child
/:last-child
僞代碼來做到這一點,但它不起作用。另外,嘗試使用simbling選擇器對於第一個孩子來說最多可以工作,但是現在沒有辦法在css中選擇以前的兄弟,所以這個解決方案不會覆蓋最後一個孩子的問題。
這裏有一個jsfidle在這裏你可以更好的理解我想要做的事:
或
HTML
<div class="hide">Item 1</div>
<div>Item 2</div>
<div>Item 3</div>
<div>Item 4</div>
<div class="hide">Item 5</div>
CSS
.hide {display: none;}
div:not(.hide):first-child,
div:not(.hide):last-child {color: red;}
請始終在問題上插入代碼。如果jsfiddle失敗,這個問題就失去了意義 – fcalderan 2014-09-26 11:05:27
你使用的是JavaScript嗎?您沒有標記任何JS – 2014-09-26 11:05:30
您可以使用'.detach'而不是'.hide' – Pete 2014-09-26 11:12:34