Tôi có một số tiêu đề và nền của mỗi hình tôi muốn hiển thị cùng một màu tô, nhưng một hình nền khác (không lặp lại). Tôi muốn tránh sao chép bất kỳ quy tắc CSS nào cho màu nền hoặc vị trí hình nền, vì chúng sẽ giống nhau cho mỗi tiêu đề. Nói cách khác, điều duy nhất tôi cần phải chỉ định cho một tiêu đề riêng lẻ là đường dẫn đến tệp hình nền.màu nền gradient và hình nền DRYly
Dưới đây là những gì tôi có vào lúc này:
<h1 class="banner bgImage img1">background image 1</h1>
<h1 class="banner bgImage img2">background image 2</h1>
<h1 class="banner bgImage img3">background image 3</h1>
<h1 class="banner">heading without background image</h1>
.banner {
/* For old browsers that don't support gradients */
background-color: #9FCC1D;
/* browser-specific prefixes omitted */
background-image: linear-gradient(#75A319, #9FCC1D);
padding: 7px 7px 7px 15px;
}
/* Specifies position of background image */
.bgImage {
background-position: 5px 50%, 0 0;
background-repeat: no-repeat;
padding-left: 30px;
}
.img1 {
background-image: url(img1.png"), linear-gradient(#75A319, #9FCC1D);
}
.img2 {
background-image: url(img2.png"), linear-gradient(#75A319, #9FCC1D);
}
.img3 {
background-image: url(img3.png"), linear-gradient(#75A319, #9FCC1D);
}
Có một vài vấn đề với điều này
- tôi phải lặp lại các
linear-gradient
phong cách trong từng quy tắc.imgX
- Nó doesn' t hiển thị chính xác trong Chrome, dường như không hỗ trợ danh sách các thuộc tính
background-image
vàbackground-repeat
được phân tách bằng dấu phẩy. Đây là những gì được hiển thị trong Chrome
Làm thế nào tôi có thể sửa chữa vấn đề với cách nền được kết xuất trong Chrome trong khi giảm thiểu sự trùng lặp các quy tắc CSS?
Nó hoạt động tốt cho tôi trong Chrome 17.0.963.56 m (sử dụng tiền tố -webkit-) – juanrpozo