Với HTML sau:trật tự lớp Confusing chồng chéo divs với nội dung và màu nền
<div class="foo">howdy howdy howdy how</div>
<div class="bar">Hello</div>
và CSS sau đây:
.foo {
background-color:green;
overflow:hidden;
height:.75em;
}
.bar {
color: white;
background-color: red;
margin-top: -10px;
width: 200px;
}
Trình tự lớp là một cái gì đó như thế này:
Đây là liên kết jsfiddle: http://jsfiddle.net/q3J8D/
Tôi cho rằng nền màu đỏ nằm trên đầu văn bản màu đen và không hiểu tại sao văn bản màu đen ở trên nền đỏ.
Tôi có thể khắc phục vấn đề này bằng cách sử dụng position: relative
, nhưng tôi chỉ tò mò.
Tại sao văn bản màu đen ở trên nền đỏ?
Tôi đặc biệt đang tìm kiếm nguồn chính thức/tiêu chuẩn giải thích hành vi này.
Xảy ra trong Chrome, nhưng không xuất hiện trong Firefox. Nhưng không biết tại sao. – bfavaretto
Hơi giống với điều này: http: // stackoverflow.com/questions/11088176/before-pseudo-element-stacking-order-issue – thirtydot
@bfavaretto: Tôi thấy nó liên tục trên các phiên bản mới nhất của tất cả các trình duyệt. – BoltClock