3

divnth-child セレクターを使用してスタイルを設定したい のリストがあります。divまた、特定のクラスがある場合は aを除外できるようにしたい、つまり:

<style>
 .a:not(.b):nth-child(2n) {
    color: hotpink;
 }
</style>

<div class="a"> Test </div>
<div class="a b"> Test </div>
<div class="a"> I should be pink, as i am the 2nd child that doesnt have a "b" class </div>
<div class="a"> Test </div>
<div class="a"> Test </div>
<div class="a"> Test </div>
<div class="a"> Test </div>
<div class="a"> Test </div>
<div class="a"> Test </div>

http://jsfiddle.net/BF7GY/

4

1 に答える 1

3

最善の方法は、jQueryと次のような2つのfilter()呼び出しを使用することだと思います。

$('.a').filter(function(){
        return !$(this).hasClass('b');
     }).filter(
    function(i){
        return (i+1)%2 == 0; 
    }
).css('color','hotpink');

:notと:nth-​​childは私たちが望むほど柔軟ではありません(残念ながら)

于 2012-12-18T09:57:06.477 に答える