: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⁩.

* Some parts of this feature may have varying levels of support.

The :only-child CSS pseudo-class represents an element without any siblings. This is the same as :first-child:last-child or :nth-child(1):nth-last-child(1), but with a lower specificity.

Try it

li:only-child { color: fuchsia; } b:only-child { text-decoration: underline; } 
<p>Stars expected to attend:</p> <ol> <li>Robert Downey, Jr.</li> </ol> <p>Stars yet to confirm:</p> <ol> <li>Scarlett Johansson</li> <li>Samuel L. Jackson</li> <li>Chris Pratt</li> </ol> <p>The ceremony is going to be held in <b>The Dolby Theatre</b>.</p> 

Syntax

css
:only-child { /* ... */ } 

Examples

Basic example

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; } 

Result

A list example

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; } 

Result

Specifications

Specification
Selectors Level 4
# only-child-pseudo

Browser compatibility

See also