html - 如何将 CSS3 过渡添加到图像叠加?

标签 html css

我正在尝试弄清楚如何为半透明图像覆盖(显示在 :hover 上)提供 CSS3 过渡(轻松)。但它不起作用。我不确定是不是因为我遗漏了一些东西,或者过渡是否只是不适用于 display 属性。关于 CSS 解决方法的任何想法(我不知道 JavaScript)?提前致谢。

相关的 HTML 和 CSS:

<div class="thumbnail">
    <figure>
        <img src="images/dude.jpg" alt=""/>
    </figure>
    <div class="thumbnail-overlay">
        <h2>Project Name</h2>
        <h3> Skills Skills Skills</h3>
        <p>This is a project description.</p>
    </div>
</div>

.thumbnail {
   position:relative;
   float:left;
   width:40%;
   margin:1.5% 1.5% 0 0;
}

.thumbnail-overlay {
   background-color: @dark-gray;
   display:none;
   opacity:.9;
   position:absolute;
   top:0;
   left:0;
   width:100%; height:100%;
   overflow:hidden;
   -webkit-transition:all .3s ease;
   -moz-transition:all .3s ease;
   transition:all.3s ease;
}


.thumbnail:hover .thumbnail-overlay {
   display:block;
}

最佳答案

在我看来是因为显示属性。 css transition 不适用于它,这就是你遇到这个问题的原因。

这是我测试过的 css 代码,工作正常:

.thumbnail .thumbnail-overlay {
background-color: @dark-gray;
display:block;
opacity:0;
position:absolute;
top:0;
left:0;
width:100%; height:100%;
overflow:hidden;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
transition: all 0.3s ease;
}

.thumbnail:hover .thumbnail-overlay {
opacity: .9;
}

希望对您有所帮助!!!

关于html - 如何将 CSS3 过渡添加到图像叠加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17962677/

相关文章:

javascript - 向下滚动页面时如何更改标题的颜色?

javascript - JQuery悬停在下拉菜单上闪烁

css - Windows 8.1 IE Snap View 分屏响应式网页设计

javascript - 下拉剧集菜单性能问题

Javascript如何设置我自己的img宽度和高度(调整大小)

javascript - 你如何在没有 jQuery 的情况下一次验证多个单选按钮?

php - Laravel - 使用复选框将数据发送到数据透视表

javascript - 离开 Canvas 时 touchleave 不会触发 jQuery

Safari 中的 CSS 变换和固定定位

javascript - 幻灯片放映中的 Zindex 图像