1

これが私のセットアップだとしましょう:

<ul id="filters">
    <li><a href="#">Any distance</a></li>
    <li><a href="#">10 km</a></li>
    <li><a href="#">30 km</a></li>
    <li><a href="#">50 km</a></li>
</ul>

私のcssでは、どのULにあるかに応じてリストのスタイルをどのように設定できますか? 私はこれを試しました:

#filters ul li {
    padding: 10px;
}

しかし、これに関するいくつかの異なるバリエーションと同じように、私には運がありませんでした。それが基本的な質問であることは知っていますが、私はまだ学んでいます。

4

6 に答える 6

4

あなたのセレクターは、あなたが達成しようとしているものに対して正しくありません:

#filters ul li {
    padding: 10px;
}

#filters ul liは、 を持つ要素の子孫である の子孫である要素をli選択します。ulid="filters"

あなたがしたい:

#filters li {
    padding: 10px;
}
于 2013-05-24T18:00:20.217 に答える
1

あなたは単に欲しい:

#filters li {
    padding: 10px;
}

現時点で機能しない理由は、ulINSIDE が ID を持つ要素であると言っているから#filtersです。(例<div id="filters"><ul>...)

リストのスタイルを設定するもう 1 つの正しい方法は、ul#filters li. これはul、ID "filters" を持つ要素が必要であることを示しています。ただし、ID「filters」を持つ要素は 1 つしか持てないため、これは不要です。

于 2013-05-24T18:00:35.490 に答える
1

セレクターが間違っています。

以下は、問題なく動作するいくつかの代替セレクターです。

ul#filters li {
    padding: 10px;
}

上記のセレクターは、ID 'filter' を持つ任意の UL 要素の LI 要素に適用されます。このセレクターは、(指定されたコンテキストで) 特異性が最も高くなります。特異性に関する優れた記事は次のとおりです http://coding.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/

#filters li {
     padding: 10px;
}

上記のセレクターは、ID が「filter」である要素の LI 要素に適用されます。

#filters * {
    padding: 10px;
}

上記のセレクターは、ID「filter」を持つ要素のすべての要素に適用されます。これを使用することはお勧めしませんが、W3C に従って UL 要素の後に LI 要素が続く必要があるため、使用できます。

于 2013-05-24T19:12:55.100 に答える
0

代わりにこれを試してください:

#filters li {
    padding: 10px;
}
于 2013-05-24T18:39:30.887 に答える
-2

それはする必要があります

ul#filters li{some code}

要素の名前の後に id または class を置きます。

または単に

#filters li{your code}

于 2013-05-24T18:00:32.243 に答える