The CSS universal selector (*) matches elements of any type.

/* Selects all elements */
* {
  color: green;
}

Beginning with CSS3, the asterisk may be used in combination with namespaces:

  • ns|* - matches all elements in namespace ns
  • *|* - matches all elements
  • |* - matches all elements without any declared namespace

Syntax

* { style properties }

The asterisk is optional with simple selectors. For instance, *.warning and .warning are equivalent.

Examples

CSS

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

HTML

<p class="warning">
  <span lang="en-us">A green span</span> in a red paragraph.</span>
</p>
<p id="maincontent" lang="en-gb">
  <span class="warning">A red span</span> in a green paragraph.</span>
</p>

Result

Specifications

Specification Status Comment
Selectors Level 4
The definition of 'universal selector' in that specification.
Working Draft No changes
Selectors Level 3
The definition of 'universal selector' in that specification.
Recommendation Defines behavior regarding namespaces and adds hint that omitting the selector is allowed within pseudo-elements
CSS Level 2 (Revision 1)
The definition of 'universal selector' in that specification.
Recommendation Initial definition

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) 1.0 (1.7 or earlier) 7 (Yes) (Yes)
Combination with namespace support (Yes) (Yes) 1.0 (1.7 or earlier) 9 8 1.3
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? ? (Yes) 1.0 (1) ? ? ?
Combination with namespace support ? ? (Yes) ? ? ? ?