The :only-of-type CSS pseudo-class represents an element that has no siblings of the same type.
/* Selects each <p>, but only if it is the */
/* only <p> element inside its parent */
p:only-of-type {
background-color: lime;
}
Note: As originally defined, the selected element had to have a parent. Beginning with Selectors Level 4, this is no longer required.
Syntax
:only-of-type
Examples
Styling elements with no siblings of the same type
HTML
<main>
<div>I am `div` #1.</div>
<p>I am the only `p` among my siblings.</p>
<div>I am `div` #2.</div>
<div>I am `div` #3.
<i>I am the only `i` child.</i>
<em>I am `em` #1.</em>
<em>I am `em` #2.</em>
</div>
</main>
CSS
main :only-of-type {
color: red;
}
Result
Specifications
| Specification | Status | Comment |
|---|---|---|
| Selectors Level 4 The definition of ':only-of-type' in that specification. |
Working Draft | Matching elements are not required to have a parent. |
| Selectors Level 3 The definition of ':only-of-type' in that specification. |
Recommendation | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
:only-of-type | Chrome Full support 1 | Edge
Full support
12
| Firefox Full support 3.5 | IE
Full support
9
| Opera Full support 9.5 | Safari Full support 3.2 | WebView Android Full support 2 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support 10.1 | Safari iOS Full support 3.2 | Samsung Internet Android Full support 1.0 |
Legend
- Full support
- Full support
- See implementation notes.
- See implementation notes.
