Media quyết định quy tắc có tham gia
```html
<p id="ghi_chu">Đổi chiều rộng cửa sổ để so sánh.</p>
```
```css
#ghi_chu { color: blue; }
@media (max-width: 600px) {
p { color: red; }
}
```
max-width:600px kiểm chiều rộng vùng hiển thị của trình duyệt không vượt 600 pixel CSS; không dùng nó để suy độ rộng vật lí của thiết bị. Ở 390px, điều kiện đúng nhưng #ghi_chu vẫn ưu tiên hơn p trong hai khai báo thông thường, nên chữ xanh dương. Ở 1440px, quy tắc trong media không tham gia, chữ cũng xanh dương.
Nếu thay p trong media bằng #ghi_chu như tệp thứ hai, ở 390px hai bộ chọn cùng trọng số và quy tắc trong media viết sau nên chữ đỏ; ở 1440px điều kiện sai nên chữ xanh dương. @media không tự tạo một mức ưu tiên cao hơn mọi bộ chọn.
Bài luyện
Trong mẫu #ghi_chu xanh dương, media p đỏ, ở vùng hiển thị390px màu chữ là gì?
media không tự tăng trọng số.
Đúng. Điều kiện đúng chỉ cho quy tắc p tham gia.
Thứ tự chưa thay thế việc so trọng số khác nhau.
Điều kiện đúng không bỏ các khai báo color hợp lệ.
Lời giải
Ở 390px, max-width:600px đúng nên p{color:red} được xét. Nhưng hai khai báo đều thông thường và #ghi_chu có ID, ưu tiên hơn tên phần tử p. Vì vậy chữ vẫn xanh dương.
Bài luyện
Trong tệp thứ hai, media cũng dùng #ghi_chu đặt đỏ sau quy tắc xanh dương. Ở 1440px màu nào có hiệu lực?
Cần lọc điều kiện trước khi xét thứ tự.
Không trộn khai báo color.
Không có mức ưu tiên tự động ấy.
Đúng. Quy tắc đỏ trong media không tham gia.
Lời giải
1440px lớn hơn 600px, nên điều kiện max-width:600px sai. Quy tắc đỏ trong media không tham gia; color:blue ở ngoài media giữ hiệu lực.
Đang học