: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 July 2015.
:only-child
は CSS の擬似クラスで、兄弟要素がない要素を表します。 :first-child:last-child
または :nth-child(1):nth-last-child(1)
と同じですが、詳細度はより低くなります。
css
/* 親の唯一の子である <p> 要素をすべて選択 */
p:only-child {
background-color: lime;
}
試してみましょう
メモ: 最初の定義では、親のある要素のみが選択されていました。 Selectors Level 4 の初期に、これは必要なくなりました。
構文
:only-child
例
基本的な例
HTML
html
<div>
<div>I am an only child.</div>
</div>
<div>
<div>I am the 1st sibling.</div>
<div>I am the 2nd sibling.</div>
<div>
I am the 3rd sibling,
<div>but this is an only child.</div>
</div>
</div>
CSS
css
div:only-child {
color: red;
}
div {
display: inline-block;
margin: 6px;
outline: 1px solid;
}
結果
リストの例
HTML
html
<ol>
<li>
First
<ul>
<li>This list has just one element.</li>
</ul>
</li>
<li>
Second
<ul>
<li>This list has three elements.</li>
<li>This list has three elements.</li>
<li>This list has three elements.</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 |
ブラウザーの互換性
BCD tables only load in the browser