image - 在响应图像的顶部添加叠加图像

标签 image css overlay

这就是我所拥有的:

HTML

<div class="frame-container">
    <img src="http://placehold.it/400x600" id="image" alt="test" />
    <div class="overlay"></div>
</div>
<button id="button">Add Overlay</button>

CSS

.frame-container{
    padding: 15%;
    background-color: #333333;
    -webkit-box-shadow: 4px 6px 5px -1px rgba(120,120,120,0.75);
    -moz-box-shadow: 4px 6px 5px -1px rgba(120,120,120,0.75);
    box-shadow: 4px 6px 5px -1px rgba(120,120,120,0.75);
}
#image {
    width:100%;
    overflow: hidden;
}
.frame-holder{
    border: 4em #000000 solid;
}

.overlay{
    width:100%;
    height:100%;
    background-color:fff;
    background-image: url('http://placehold.it/400x600&text=woo!');
    background-size:cover;
    z-index:9999;
    display:hidden;
}

JS

<script>
    $('#button').click(function(){
        $('.overlay').css( "display", 'inline'; );
    });
</script>

https://jsfiddle.net/vwvu5ee8/7/

我想做的就是单击按钮,它会将叠加图像添加到当前图像的顶部。

我已经尝试了各种方法,但已经开始没有想法了。我确信从这个位置可以得到一个简单的答案。

最佳答案

尝试使用 display:nonedisplay:block 而不是 display:hidden。您的 z-index 堆叠也存在问题。

HTML

<div class="frame-container">
  <div class="overlay"></div>
  <img src="http://placehold.it/400x600&text=Image" id="image" alt="test" />
</div>
<button id="addOverlay">Add Overlay</button>

CSS

.frame-container{
    padding: 15%;
    background-color: #333333;
    position:relative;
    -webkit-box-shadow: 4px 6px 5px -1px rgba(120,120,120,0.75);
    -moz-box-shadow: 4px 6px 5px -1px rgba(120,120,120,0.75);
    box-shadow: 4px 6px 5px -1px rgba(120,120,120,0.75);
}
#image {
    width:100%;
    overflow: hidden;
    position:relative;
    z-index:10;
}

.overlay{
    width:70%;
    height:70%;
    position:absolute;
    background-color:fff;
    background-image: url('http://placehold.it/400x600&text=Overlay');
    background-size:cover;
    z-index:100;
    display:none;
}

JS

$('#addOverlay').click(function(e){
  $('.overlay').css('display','block');
});

这是 demo .还有一个 alternate version使用 2 张图像而不是背景图像。

关于image - 在响应图像的顶部添加叠加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28904493/

相关文章:

css - 如何在图像的一半上创建渐变效果

c# - 在资源管理器中的文件图标上添加状态图标,例如 .NET 中的 Dropbox 或 SVN

html - 如何在android中获取可绘制对象或 ".gif"的路径

javascript - 如何使用 Javascript/HTML 在 Adob​​e AIR 应用程序中显示 'Base64' 编码图像

javascript - 当另一个 Div 进入视口(viewport)时让 Div 出现

php - 媒体查询不工作 Wordpress 主题

css - 垂直滚动条覆盖圆形边框选择与 CSS

java - 动态生成透明跟踪像素

php - imagecreatefrompng() png透明部分为黑色

javascript - 使用带有 Angular 2 组件的 flexbox