我有一個無序列表,其ID爲「導航」和一些子列表項元素。:第一個孩子定位所有子元素
我想選擇第一個項目與:first-child
,但它是應用我用這個CSS到所有其他列表項目。
ul#navigation li:first-child{
background:#fff;
}
因此,重申:這是給每個列表項目一個白色的背景。我只想選擇第一個元素。出了什麼問題?
我有一個無序列表,其ID爲「導航」和一些子列表項元素。:第一個孩子定位所有子元素
我想選擇第一個項目與:first-child
,但它是應用我用這個CSS到所有其他列表項目。
ul#navigation li:first-child{
background:#fff;
}
因此,重申:這是給每個列表項目一個白色的背景。我只想選擇第一個元素。出了什麼問題?
根據該意見,你的問題是,您的標記看起來像這樣:
<ul id="navigation">
<a href="http://google.com">
<li>Google</li>
</a>
</ul>
注意如何每li
將這種模式下:first-child
。我建議你在你的列表項目中使用更合適的嵌套錨點結構。如果你想錨,填補了列表項,設置其顯示到塊:
<ul id="navigation">
<li><a href="http://google.com">Google</a></li>
</ul>
並結合CSS:
#navigation a { display: block }
一旦你有了到位的結構性變化,你的選擇應該定位第一個列表項:
/* > to target only immediate list items */
#navigation > li:first-child {
background: red;
}
這可以工作,但在鏈接中添加'display:block'並不會在div的整個區域中生效。 –
@MarkLyons對列表項目來說,填充/邊距可能會妨礙您的審美。你可以把你的頁面在線,或者在http://jsfiddle.net上做一個演示嗎? – Sampson
是的,李有一個頂部和底部填充。我在鏈接中添加了'width:100%',並將填充移至鏈接樣式。一切順利,謝謝! –
對我來說工作得很好:http://jsfiddle.net/HyKFJ/。發佈您的HTML。 – Blender
我正要這樣做,但意識到我正在用鏈接包圍每個列表項目。我想保持這種方式,因爲我希望整個李是一個鏈接,但這會導致這個問題。 –
@MarkLyons不要用鏈接包圍你的'li';而是將鏈接'display'屬性設置爲'block'。 – Sampson