我的CSS有问题,我不明白为什么我无法为我的覆盖元素(.afterDim)创建转换。我的叠加层正在工作,但我找不到如何在两个状态之间进行转换。我试着玩我的课程,但似乎什么都没有用,我有点失落,我需要你的帮助。
.dimImgContainer .afterDim {
position: absolute;
top: 0;
left:10px;
width:calc(100% - 20px);
height: 100%;
display: none;
color: #FFF;
-moz-transition: all 0.3s ease-in-out;
-o-transition: all 0.3s ease-in-out;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.dimImgContainer:hover > .afterDim {
display: block;
background: rgba(0, 0, 0, .6);
}
<div class="hidden-xs col-sm-4 col-md-4 iqitcontent-column iqitcontent-element iqitcontent-element-id-12 banner-column ">
<a href="https://biospera.com/graines-potageres/"><div class="dimImgContainer">
<div class="afterDim">Hello there</div>
<img src="https://biospera.com/img/cms/Homepage/hp-banners/pct/graines-potageres-banner-pct-2.jpg" class="img-responsive banner-image" alt="Grievous">
<h2 class="headingDevDimPCT">General Kenobi</h2>
</div></a>
</div>
我也在这里使用完全相同的代码制作了一个codepen:
答案 0 :(得分:0)
显示属性为ON或OFF,不能与过渡一起使用。而是使用可以具有一系列值的属性,例如不透明度。
.image-container .afterDim {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0; /* CHANGE DISPLAY to OPACITY */
color: #FFF;
-moz-transition: all 0.3s ease-in-out;
-o-transition: all 0.3s ease-in-out;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.image-container:hover .afterDim {
opacity: 1; /* CHANGE DISPLAY to OPACITY */
background: rgba(0, 0, 0, .6);
}