我有许多标题,每个标题的背景都需要显示相同的渐变颜色,但是不同的(不重复的)背景图片。我想避免重复使用CSS规则来指定背景渐变颜色或背景图片位置,因为它们对于每个标题都是相同的。换句话说,我只需要为每个标题指定背景图片文件的路径即可。
目前我的代码如下:
目前我的代码如下:
<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);
}
这有几个问题:
- 每一个
.imgX
样式规则都要重复linear-gradient
样式。 - 在 Chrome 中不能正确渲染,因为似乎不支持逗号分隔的
background-image
和background-repeat
属性列表。以下是在 Chrome 中显示的内容:
如何解决在 Chrome 中背景渲染的问题,并且最小化CSS规则的重复?