The :empty
pseudo-class
represents any element that has no children at all. Only element nodes and text (including whitespace) are considered. Comments or processing instructions do not affect whether an element is considered empty or not.
/* Selects any <div> that contains no content */ div:empty { background: lime; }
Syntax
:empty
Examples
body { display: flex; justify-content: space-around; } .box { background: red; height: 100px; width: 100px; } .box:empty { background: lime; }
<div class="box"><!-- I will be lime --></div> <div class="box">I will be red</div> <div class="box"> <!-- I will be red because of the whitespace around this comment --> </div>
Specifications
Specification | Status | Comment |
---|---|---|
Selectors Level 4 The definition of ':empty' in that specification. |
Working Draft | No change |
Selectors Level 3 The definition of ':empty' in that specification. |
Recommendation | Initial definition |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 1.0 | (Yes) | 1.0 (1.7 or earlier) | 9.0 | 9.5 | 3.1 |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 2.1 | (Yes) | 1.0 (1) | 9.5 | 10.0 | 3.1 |
Document Tags and Contributors
Tags:
Contributors to this page:
chrisdavidmills,
erikadoyle,
Sebastianz,
ziyunfei,
jsx,
MusikAnimal,
apparentlymart,
kscarfone,
Sheppy,
FredB,
teoli,
brianloveswords,
McGurk,
fscholz,
Jürgen Jeka,
Miken32,
Mgjbot,
Fredchat,
Mw22
Last updated by:
chrisdavidmills,