Universal selectors

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.

Bộ chọn phổ quát CSS (*) khớp với các phần tử của bất kỳ kiểu nào.

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

Bộ chọn phổ quát là một bộ chọn kiểu đặc biệt và do đó có thể được đặt tên namespace khi sử dụng @namespace. Điều này hữu ích khi xử lý các tài liệu chứa nhiều namespace như HTML với SVG hoặc MathML nội tuyến, hoặc XML kết hợp nhiều từ vựng.

  • ns|* - khớp với tất cả các phần tử trong namespace ns
  • *|* - khớp với tất cả các phần tử
  • |* - khớp với tất cả các phần tử không có namespace nào được khai báo

Note: Bộ chọn phổ quát (*) chỉ khớp với các phần tử. Nó không trực tiếp khớp với pseudo-element một mình.

Ví dụ: để khớp với tất cả các pseudo-element ::before trên một trang, bạn phải sử dụng bộ chọn như *::before. Điều này hoạt động vì * khớp với tất cả các phần tử, và pseudo-element ::before có sẵn trên tất cả các phần tử.

Cú pháp

css
* { style properties }

Dấu hoa thị là tùy chọn với các bộ chọn đơn giản. Ví dụ: *.warning.warning tương đương nhau.

Ví dụ

CSS

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

html
<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>

Kết quả

Namespace

Trong ví dụ này, bộ chọn chỉ khớp với các phần tử trong namespace ví dụ.

css
@namespace example url("http://www.example.com/");
example|* {
  color: blue;
}

Thông số kỹ thuật

Specification
Selectors Level 4
# the-universal-selector

Khả năng tương thích với trình duyệt

Xem thêm