Javascript HTML/CSS-在图像上创建alpha遮罩
我想在我正在构建的站点中创建一个效果,其中图像被覆盖层遮住。覆盖应该创建一个“淡出”效果-我实际上不想要任何动画,但覆盖应该使图像看起来好像它的边缘淡出背景色 大概是这样的: 我更喜欢使用CSS/HTML/JS,而不是图像。关于从哪里开始有什么想法吗?谢谢。开始吧。例如,请参见函数 对于图像上的静态alpha遮罩,请使用不透明度css属性:Javascript HTML/CSS-在图像上创建alpha遮罩,javascript,html,css,fade,masking,Javascript,Html,Css,Fade,Masking,我想在我正在构建的站点中创建一个效果,其中图像被覆盖层遮住。覆盖应该创建一个“淡出”效果-我实际上不想要任何动画,但覆盖应该使图像看起来好像它的边缘淡出背景色 大概是这样的: 我更喜欢使用CSS/HTML/JS,而不是图像。关于从哪里开始有什么想法吗?谢谢。开始吧。例如,请参见函数 对于图像上的静态alpha遮罩,请使用不透明度css属性: .myimage { filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50); -m
.myimage {
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50);
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
opacity: 0.5;
}
jQuery
animate
函数(具有不透明度)应该/可能能够处理这个问题,尽管如果你只是在覆盖层中淡入淡出,antyrat的答案也会起作用。Ah-根据你对antyrat答案的评论,你最好的办法是创建一个包含效果的PNG图像(即半透明的白色形状),并使用CSS将其放置在实际图像的顶部(position:absolute
和z-index
)
您目前无法单独使用HTML和CSS创建非方形形状。我知道您特别要求CSS/JavaScript解决方案,我相信您有自己的理由
尽管如此,我还是想扔掉一个简单的褪色图像文件的解决方案,就像你在问题中已经发布的那样,没有任何奇特的编程效果。你可以这样做,例如: html
<div class="photo_container">
<div class="photo">
<img src="/lakenwoods/images/mockup-photo.png" width="540" height="463" /></div>
<div class="overlay">
<div class="content">
<h1>Welcome to Lake-N-Woods Realty</h1>
<p>
We are a Diverse and Highly Effective Real Estate Company, Dedicated to Satisfying all of our Clients Needs. We Specialize in Recreational, Rural and Investment Property throughout Bemidji and North Central Minnesota.
</p>
</div>
</div>
<div class="clear">
</div>
</div>
对不起,我要的是静态淡入效果,不是过渡效果。请参阅我的示例(注意图像如何淡入背景)。谢谢这将提供简单的不透明度,而不是在整个图像中改变不透明度的alpha遮罩。如果淡入淡出的图像在子
DIV
中,您真的需要使用z-index
?是的,我想我必须使用半透明图像,但希望有人有更干净的解决方案:)谢谢@antyrat:您可以使用不透明度创建半透明的白色区域,但该区域将是方形的,具有锐利的边缘:边缘不会褪色。包括径向渐变(以及rgba颜色),因此根据您想要的效果,您可以在WebKit中使用纯CSS来实现。但是目前没有其他浏览器支持它。@JohnB:如果您有一个包含图片图像和淡入淡出图像的div
(带有position:relative
),则可能不支持。
@charset "utf-8";
/* CSS Document */
.clear {
clear:both;
}
.photo_container {
position: relative;
width: 540px;
height: 463px;
overflow:hidden;
margin: 0; padding:0;
}
.photo_container .photo {
z-index:1;
}
.photo_container .overlay {
width: 540px;
height: 463px;
background: url(/lakenwoods/images/mockup-overlay.png) no-repeat top center;
position:absolute;
bottom: 0;
left: 0;
z-index:10;
}
.photo_container .overlay .content h1 {
position:absolute;
top: 310px;
left: 34px;
font-family: Helvetica, Helvetica Neue, Arial, sans-serif;
font-size:18px;
color: #fff;
font-weight: 700;
width: 315px;
}
.photo_container .overlay .content p {
position:absolute;
top: 335px;
left: 34px;
font-family: Helvetica, Helvetica Neue, Arial, sans-serif;
font-size:12px;
color: #fff;
width: 315px;
line-height: 1.4em;
}