2017-10-03 10 views
2

私は特定の李の位置に応じてどのように攻撃できるか把握しようとしています。本質的には、私はNOTを最初の子か、それから3回ごとに対象にする必要があります。使用方法:最初の子供はいない+すべての3したがって従って

例:

.siteMapSubList.threecolumn > li:not(:nth-child(1n+3))

をクラス名が無関係と同様に、私は実装していCSSコードですので、私:

li1 (dont target) | li4(dont target) | li7 (dont target) 
li2 (target)  | li5 (target)  | li8 (target) 
li3 (target)  | li6 (target)  | li9 (target) 

ここで私はこれまで試したものですそれを含んでいなかった。ただし、これは機能しません。のように、私は目標にしようとしているものをターゲットにしません。私は本当に私が今できると思う2つの異なった規則(最初の子供をターゲットにしていない、そして3つ後のすべて)を避けることを本当に試みている。だから可能ならば、私は本当に1つのルールでこれをしたいと思っています。

EDIT

必ず人々は私がよりよく必要なものを理解したいです。だから本質的に私たちが9個の李を持っていれば、私は目標1,4および7を目標にしたくありません。2,3,5,6,8,9を目標にしたいのです(なぜ私は演算子を使用していませんが、より良い方法、私はすべての耳です)。

答えて

5

あなたは非常に近くでした。必要なセレクターはli:not(:nth-child(3n+1))です。

ul { 
 
    display: flex; 
 
    flex-direction: column; 
 
    flex-wrap: wrap; 
 
    height: 6em; 
 
} 
 

 
li { 
 
    height: 2em; 
 
} 
 

 
li:not(:nth-child(3n+1)) { 
 
    color: red; 
 
}
<ul> 
 
    <li>1</li> 
 
    <li>2</li> 
 
    <li>3</li> 
 
    <li>4</li> 
 
    <li>5</li> 
 
    <li>6</li> 
 
    <li>7</li> 
 
    <li>8</li> 
 
    <li>9</li> 
 
</ul>

+1

YES:

以下の例を参照してください!これは完璧です、ありがとう! (時が来ると病気になります:)) – jdmdevdotnet

+1

おもしろい事実:問題のように列ではなく項目に飛んできたn + 3の方が実際にはさらに近くになります。セレクタはli:not(:nth-子(-n + 3))に負の符号を付けます。もちろん、このような状況でレイアウトに細心の注意を払うことができます。 – BoltClock

関連する問題