【发布时间】:2012-07-20 14:48:15
【问题描述】:
我希望我的背景图像从 100% 不透明度变为 0% 不透明度。我可以选择使用另一个图像资源,我使用图像编辑器使图像淡化不透明度,但是我想使用尽可能少的资源。这可以用 CSS 完成吗?我知道我可以制作几个 div 来更改每个 div 的不透明度,但是这需要很多 div 才能让它看起来不错。
这是我的代码当前与我不想使用的解决方案的样子:
<div class="contentFadeAway" id="cfa1"></div>
<div class="contentFadeAway" id="cfa2"></div>
<div class="contentFadeAway" id="cfa3"></div>
<div class="contentFadeAway" id="cfa4"></div>
<div class="contentFadeAway" id="cfa5"></div>
<div class="contentFadeAway" id="cfa6"></div>
<div class="contentFadeAway" id="cfa7"></div>
<div class="contentFadeAway" id="cfa8"></div>
<div class="contentFadeAway" id="cfa9"></div>
<div class="contentFadeAway" id="cfa10"></div>
还有 CSS:
.contentFadeAway {
display: block;
position: fixed;
top: 160px;
padding: 0px;
width: 100%;
height: 5px;
background: url('/assets/shapeimage_3_int.png') fixed;
background-size:cover;
z-index: +1;
}
#cfa1 { top: 160px; opacity: 1; }
#cfa2 { top: 165px; opacity: .9; }
#cfa3 { top: 170px; opacity: .8; }
#cfa4 { top: 175px; opacity: .7; }
#cfa5 { top: 180px; opacity: .6; }
#cfa6 { top: 185px; opacity: .5; }
#cfa7 { top: 190px; opacity: .4; }
#cfa8 { top: 195px; opacity: .3; }
#cfa9 { top: 200px; opacity: .2; }
#cfa10 { top: 205px; opacity: .1; }
对于那些不明白该代码在做什么的人,请点击此处:http://jsfiddle.net/FVNY7/2/ 我有一张背景图片,我希望内容在向上滚动时消失,所以我会使用相同的图片不透明度从 1 到 0 以产生这种效果。如果背景是纯色,我可以只使用 rgba 渐变,但它是图像。
【问题讨论】:
-
而什么时候您希望这种“褪色”发生吗?
-
在 div 的顶部和底部。我刚刚添加了一个糟糕的解决方案的示例代码。
-
我的意思是,你想什么时候触发淡入淡出?图片什么时候需要淡出?
-
我不希望它淡出。我不希望它成为 CSS 过渡。我希望它是永久的。我可以创建一个从上到下不透明度为 0% 到 100% 的图像,但我不想在网站上有其他资产。
-
我还是不明白你想要什么。当页面加载时,背景是 100% 可见的,然后呢?它立即隐藏自己?可能只有我一个人,因为已经有两个人尝试过回答你的问题。
标签: css transparency background-image