This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The CSS universal selector (*) matches elements of any type.
/* Selects all elements */
* {
color: green;
}
The universal selector is a special type selector and can therefore be namespaced when using @namespace. This is useful when dealing with documents containing multiple namespaces such as HTML with inline SVG or MathML, or XML that mixes multiple vocabularies.
ns|* - matches all elements in namespace ns
*|* - matches all elements|* - matches all elements without any declared namespace* { style properties }
The asterisk is optional with simple selectors. For instance, *.warning and .warning are equivalent.
* [lang^="en"] {
color: green;
}
*.warning {
color: red;
}
*#maincontent {
border: 1px solid blue;
}
.floating {
float: left;
}
/* automatically clear the next sibling after a floating element */
.floating + * {
clear: left;
}
<p class="warning"> <span lang="en-us">A green span</span> in a red paragraph. </p> <p id="maincontent" lang="en-gb"> <span class="warning">A red span</span> in a green paragraph. </p>
In this example the selector will only match elements in the example namespace.
@namespace example url("http://www.example.com/");
example|* {
color: blue;
}
| Specification |
|---|
| Selectors Level 4> # the-universal-selector> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
Universal_selectors |
1 | 12 | 1 | 3.5 | 1 | 18 | 4 | 10.1 | 1 | 1.0 | 4.4 | 1 |
namespaces |
1 | 12 | 1 | 8 | 1.3 | 18 | 4 | 10.1 | 1 | 1.0 | 4.4 | 1 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Universal_selectors