HTML/CSSでWebサイトを作っています。
ある要素の最初の孫要素にだけCSSスタイルを適用したいです。
first-of-childやfirst-of-typeセレクタが使えそうなので、試してみたのですが、上手くいきませんでした。以下にコードを示します。
html
1<ol class="list"> 2 <li><a href="">first</a></li> 3 <li><a href="">second</a></li> 4 <li><a href="">third</a></li> 5</ol>
css
1.list a:first-of-type { 2 background-color: gray; 3}
最初の孫要素、つまりfirstだけに適用されることを期待していたのですが、どういうわけか全てのa要素に適用されてしまいました。
first-of-typeの対象としてaタグではなくliタグを指定すると、ちゃんと最初の要素にだけ適用されるようです。しかし、liタグではなくその中のaタグに適用させたいのです。
どうすれば問題を解消できますか?
first-of-typeを使わずとも、目的を達成できる方法であれば、なんでも構いません。

回答6件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/16 21:53
2016/06/16 22:14 編集
2016/06/17 15:16