CSSContainerRule: thuộc tính containerName
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2023.
Thuộc tính chỉ đọc containerName của giao diện CSSContainerRule biểu thị tên container của quy tắc at-rule CSS @container liên kết.
Ví dụ, giá trị của containerName cho @container bên dưới là sidebar:
@container sidebar (width >= 700px) {
.card {
font-size: 2em;
}
}
Giá trị
Một chuỗi chứa container-name của @container liên kết với CSSContainerRule này. Nếu @container không có tên, hàm trả về chuỗi rỗng ("").
Ví dụ
Ví dụ dưới đây định nghĩa một quy tắc @container có tên, và hiển thị các thuộc tính của CSSContainerRule liên kết. CSS rất giống với ví dụ @container Tạo ngữ cảnh container được đặt tên.
Đầu tiên chúng ta định nghĩa HTML cho một card (<div>) được chứa trong một post.
<div class="post">
<div class="card">
<h2>Card title</h2>
<p>Card content</p>
</div>
</div>
CSS cho phần tử container chỉ định loại container, và cũng có thể chỉ định tên. Card có cỡ chữ mặc định, được ghi đè cho @container tên sidebar nếu chiều rộng lớn hơn 700px.
<style id="example-styles">
.post {
container-type: inline-size;
container-name: sidebar;
}
/* Default heading styles for the card title */
.card h2 {
font-size: 1em;
}
@container sidebar (width >= 700px) {
.card {
font-size: 2em;
}
}
</style>
Code dưới đây lấy HTMLStyleElement liên kết với ví dụ bằng id của nó, sau đó sử dụng thuộc tính sheet để lấy StyleSheet. Từ StyleSheet, chúng ta lấy tập hợp cssRules được thêm vào sheet. Vì chúng ta đã thêm @container làm quy tắc thứ ba ở trên, chúng ta có thể truy cập CSSContainerRule liên kết bằng mục nhập thứ ba (chỉ số "2"), trong cssRules. Cuối cùng, chúng ta ghi lại các thuộc tính tên container và truy vấn (code thực hiện ghi log không được hiển thị).
const exampleStylesheet = document.getElementById("example-styles").sheet;
const exampleRules = exampleStylesheet.cssRules;
const containerRule = exampleRules[2]; // a CSSContainerRule representing the container rule.
log(`CSSContainerRule.containerName: "${containerRule.containerName}"`);
Kết quả ví dụ được hiển thị bên dưới. Phần log liệt kê chuỗi tên container. Tiêu đề trong phần card sẽ tăng gấp đôi kích thước khi chiều rộng của trang vượt qua 700px.
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| CSS Conditional Rules Module Level 5> # dom-csscontainerrule-containername> |
Tương thích trình duyệt
Xem thêm
- Thuộc tính viết tắt CSS
container - Mô-đun CSS containment
- Truy vấn container
- Sử dụng truy vấn kích thước và kiểu container