Tôi đang sử dụng các định nghĩa sau (chuyển thể từ CSS2 đặc tả http://www.w3.org/TR/CSS21/cascade.html#specificity)Mức độ cụ thể CSS giữa các lớp/lớp giả và các phần tử/phần tử giả hoạt động như thế nào?
- a = sử dụng thuộc tính phong cách trên một yếu tố
- b = số thuộc tính id
- c = số thuộc tính (lớp) và các lớp học giả (: liên kết,: hover)
- d = số yếu tố và giả yếu tố (: đầu tiên-line,: đầu tiên chữ)
Với phong cách sau đây (tính toán của tôi sang bên phải):
.content {color: green;} /* a=0 b=0 c=1 d=0 -> 0,0,1,0 */
.content:hover {color: yellow;} /* a=0 b=0 c=2 d=0 -> 0,0,2,0 */
li {color: orange;} /* a=0 b=0 c=0 d=1 -> 0,0,0,1 */
li:first-line {color: pink;} /* a=0 b=0 c=0 d=2 -> 0,0,0,2 */
và html sau
<li class="content">The first line</li>
Khi tôi mở nó lên trong một trình duyệt, các dòng văn bản là màu hồng. Tôi nghĩ rằng nó sẽ có màu xanh lá cây và trên di chuột, nó sẽ có màu vàng. Tôi nghĩ rằng các yếu tố và các yếu tố giả (d trong tính toán) có trọng lượng ít hơn so với các lớp học và các lớp giả (c trong tính toán).
Bản sao có thể có của [Độ đặc hiệu của dòng đầu tiên và con đầu tiên trong CSS?] (http://stackoverflow.com/questions/20555878/the-specificity-of-first-line-and-first-child-in-css) –