3

灰色の背景色を持つ最初の「li」要素だけが必要です。しかし、各 'ul li' の最初の 'li' には、私の背景色のグレーが適用されています。背景色は、最初の li(My Example) にのみ適用する必要があります。

http://jsfiddle.net/fX9Gy/

誰でも問題を解決してください。ありがとう

4

7 に答える 7

5

あなたの親にクラスを教えてくださいUL。次のように書きます。

HTML

<ul class="parent">
    <li>one</li>
    <li>one
        <ul>
            <li>two</li>
            <li>two</li>
            <li>two</li>
        </ul>    
    </li>
    <li>one</li>
</ul>

CSS

.parent > li:first-child{background-color:#ccc}

詳細については、これを確認してくださいhttp://jsfiddle.net/fX9Gy/27/

于 2012-08-24T10:51:18.853 に答える
2

これを css の最後に追加します。

ul li ul li:first-child{background-color:transparent}

または要素に id を与えます:

<li id="first">one</li>

#first {background-color:#ccc}

**編集**

このCSSを試すことができます:

ul li{color:red}
ul li > ul li{color:blue}
li {background-color:#ccc} 
ul ul li {background-color:transparent}
li + li {background-color:transparent}
于 2012-08-24T10:32:04.777 に答える
1

セレクターをより具体的にします。

ul li ul li:first-child{background-color:transparent}

または、ULにクラスを追加し、そこで最初の子を選択します。

ul.nested li:first-child{background-color: #fff;}

... <li>one
        <ul class="nested">
            <li>two</li>
...

http://jsfiddle.net/Kyle_Sevenoaks/fX9Gy/15/

于 2012-08-24T10:34:21.970 に答える
0

こんにちは、更新されたcssをご覧ください。これが機能することを願っています

ul li{color:red}

ul li > ul li{color:blue}

ul li:first-child{background-color:#ccc}
ul li ul li:first-child {background:none;}

http://jsfiddle.net/fX9Gy/23/

于 2012-08-24T10:40:42.650 に答える
0

クラスや ID を追加したくない場合は、jquery を使用する必要があります。ただし、ul のクラス名を追加する必要があります。

ただし、jquery を使用しない場合は、CSS を使用して、li 内にある ul にもう 1 行追加する必要があります。

ul li ul li:first-child{ background-color:white; }
于 2012-08-24T11:09:15.490 に答える
0

これを試すことができます。

li {color:gray}
ul ul li {color:red}
li + li {color:red}

これは、IE 7 までのブラウザでも動作します。

于 2012-08-24T10:52:11.190 に答える
-1

フィドルを更新しました。親にクラスを追加しましたul

http://jsfiddle.net/fX9Gy/26/

于 2012-08-24T10:33:42.423 に答える