CSS :only-child 擬似クラス
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
:only-child は CSS の擬似クラスで、兄弟要素がない要素を表します。 :first-child:last-child または :nth-child(1):nth-last-child(1) と同じですが、詳細度はより低くなります。
試してみましょう
li:only-child {
color: fuchsia;
}
b:only-child {
text-decoration: underline;
}
<p>参加予定のスター:</p>
<ol>
<li>Robert Downey, Jr.</li>
</ol>
<p>返事待ちのスター:</p>
<ol>
<li>Scarlett Johansson</li>
<li>Samuel L. Jackson</li>
<li>Chris Pratt</li>
</ol>
<p>授賞式は、<b>ドルビーシアター</b>で開催されます。</p>
構文
css
:only-child {
/* ... */
}
例
>基本的な例
HTML
html
<div>
<div>これは単独の子です。</div>
</div>
<div>
<div>これは 1 つ目の兄弟です。</div>
<div>これは 2 つ目の兄弟です。</div>
<div>
これは 3 つ目の兄弟です。
<div>ただし、これは単独の子です。</div>
</div>
</div>
CSS
css
div:only-child {
color: red;
}
div {
display: inline-block;
margin: 6px;
outline: 1px solid;
}
結果
リストの例
HTML
html
<ol>
<li>
その 1
<ul>
<li>このリストには 1 つだけ要素があります。</li>
</ul>
</li>
<li>
その 2
<ul>
<li>このリストには 3 つの要素があります。</li>
<li>このリストには 3 つの要素があります。</li>
<li>このリストには 3 つの要素があります。</li>
</ul>
</li>
</ol>
CSS
css
li li {
list-style-type: disc;
}
li:only-child {
color: red;
list-style-type: square;
}
結果
仕様書
| Specification |
|---|
| Selectors Level 4> # only-child-pseudo> |