2012-11-08 101 views
0

可能重複:
Complex CSS selector for parent of active child如何設置樣式一個父元素

如何設置我的<li>基於一個類中的子元素的風格?

例如:

<div class"options"> 
<ul> 
    <li> <a href="#"> option 1 </a> </li> 
    <li> <a href="#"> option 2 </a> </li> 
    <li> <a class="last" href="#"> option 3 </a> </li> 

    <li> <a href="#"> option 4 </a> </li> 
    <li> <a href="#"> option 5 </a> </li> 
    <li> <a class="last" href="#"> option 6 </a> </li> 

    <li> <a href="#"> option 7 </a> </li> 
    <li> <a href="#"> option 8 </a> </li> 
    <li> <a class="last" href="#"> option 9 </a> </li> 
</ul> 
</div> 

我可以風格的a.options li a.last { ... }

,但我要的是申請margin:0li,我也沒有辦法控制裏面有什麼<li>,只有什麼裏面有<a>

有沒有什麼風格的把戲?


我試圖做到:

enter image description here

我有一個jQuery循環到.last類添加到每3 <li>作爲

$(".box-left li").each(function (i) { 
    if ((i+1) % 3 == 0) 
     $(this).addClass("last"); 
}); 

但我想要了解是否有其他方式不涉及JavaScript助手。

+0

你想申請'保證金:0'父'li'的'與上課最後一個? – freebird

+0

@Robbie雖然它可以有相同的答案,但問題是非常不同的,並且可能有助於其他人在這裏找不到「複雜的CSS選擇器」,而是更多地使用「在父元素上設置樣式」...如此,並且就這類問題與[Joel Spolsky](http://stackoverflow.com/users/4)達成一致,不應該結束。 – balexandre

+0

但肯定是語義?一些谷歌搜索會解決它? http://www.google.com/m?q=set+a+style+on+a+parent+element(這正是您的報價)? – Robbie

回答

1

這不能用CSS來完成,最好我可以爲你提供的是jQuery,它是:has選擇器。

或者,在a標記上而不是li標記上製作所有邊距/填充。這將涉及一些洗牌,但將實現你所需要的

0

不幸的是,目前沒有辦法在CSS中選擇父元素。

此問題已被多次詢問,this answer似乎總結得很好。

0

沒有可能選擇子元素的父元素。 可能是這將有助於ü 指定 麗{線高度:20像素;} 李一{顯示:塊;}

相關問題