HTML&CSSの勉強をしています。
HTMLのulの部分のみ背景をbackground-colorで色を指定し、only-childを用いて実現したいのですが、ページ全体の色が変化してしまいます。どのようにすれば、ulの部分のみ、色を変えることができるのでしょうか。初歩的な質問ですがよろしくお願いいたします。
##HTMLのコード
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>疑似要素の練習</title> <link rel="stylesheet" href="style1.css"> </head> <body> <ul> <li>The first child of ul.</li> <li>2nd child</li> <li>3rd child</li> <li>4th child</li> <li>The last child.</li> </ul> <br> </body> </html>
##CSSのコード
body{ padding: 1% 25%; font-family: sans-serif; } ul{ margin: 25px auto 0; padding: 12px; border: 2px dotted gray; list-style-position: inside; font-size: 1.5em; } li{ margin: 0; padding: 15px; border-bottom: 2px solid #224a6b; } li:last-child{ border-bottom: none; } :only-child{ background-color: tomato; }
(質問文は編集できます)質問文のHTML/CSSはそれぞれコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
申し訳ございません。変更いたしました!
ulにだけ色を付けるなら、普通は直接そう(ul { background-color: ...})書けばいいので、「なぜ only-child を使おうと考えたのか」を説明されるといいかと思います。
初心者なのでonly-childの使い方、実装の仕様を知ろうと思い、この質問をさせていただいています。only-childは兄弟要素がないものを指定できると僕は解釈したのですが、狙った結果が得られなかったため、質問させていただいています。
すでにほかの方が説明されているように、html要素(文書全体)に only-child による背景色が付いているので、ul を兄弟要素のない状態にして only-child による背景色が付く状態にしても、単にページを眺めているだけそれを確認できません。開発者ツールなどを使用して確認する必要があります。
回答2件
あなたの回答
tips
プレビュー