我希望有一个纯色背景颜色,并在其上面有一个具有一定不透明度的渐变。这样它似乎是一种背景颜色,在它上面有一个渐变的效果。
这是我的HTML:
<article>
<a href="" class="article">
<h2>Title<i></i></h2>
<img src="images/media-examples/pic1.jpg">
</a>
</article>
我想将其应用于标题以创建如下内容:
答案 0 :(得分:5)
根据示例判断,您不需要渐变。您只需要一个具有不透明度的覆盖元素。所以
HTML
<div id="element">
<div id="overlay">
<h2>H2 Title</h2>
</div>
</div>
CSS
#element {background:url('image.jpg');}
#overlay {background:rgba(0, 0, 0, 0.5);}
我不会更详细地介绍你需要一个教程而且你需要尝试它,然后在出错时寻求帮助。尝试搜索互联网,网上会有很多教程。
<强>更新强> 要使用现有的HTML,请尝试应用此CSS
article {width:300px;}
article img {position:fixed; top:0; border:3px solid #253d8e; z-index:99;}
article h2 {z-index:999; position:fixed; top:0; color:#fff; background:rgba(0, 0, 0, 0.5); width:290px; display:inline-block;margin:0; padding-top:10px; padding-bottom:10px; padding-left:10px;}
您需要更新此内容以满足您的需求,但应该给您一个想法。看到它正常工作here on jsfiddle
答案 1 :(得分:0)
我会在具有不透明度背景的图像上添加另一个元素...这样您就可以轻松控制所有属性。
您还可以将两个背景应用于同一元素或使用伪元素 像这里:http://nicolasgallagher.com/multiple-backgrounds-and-borders-with-css2/
编辑:对不起,蒂姆只是用相同但更详细的叠加元素答案更快一点=) 但现在我只想要其他两个建议的一些功劳; - )