css - 带有阴影+文本覆盖和悬停时另一个覆盖的引导响应图像
问题描述
我想显示带有一些描述的图像,悬停时会覆盖。我有这样的事情:
<div class="container-fluid">
<div class="row">
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-3">
<div class="product-container">
<a href="#"><img src="images/img.png" class="product-img" alt=""></a>
<p class="product-descr">Some description</p>
</div>
</div>
</div>
</div>
现在我需要添加一些类(product-item、product-container、product-img、product-desc)来让它工作。但是我已经尝试了很多组合并且仍然在图像下方有描述(即使描述覆盖在正确的位置)。文本使容器脱离图像底部,并且该容器的背景可见。
目前我的风格是这样的:
.product-item {
position: relative;
}
.product-container {
background:red;
position: relative;
width:100%;
}
.product-img {
position: relative;
width: 100%;
@include hover-focus {
opacity: .5;
}
}
.product-overlay {
position: relative;
&:after {
position: absolute;
content: "";
background: #FFF;
top: -25px;
left: 0;
width: 100%;
height: 25px;
opacity: .7;
z-index:10;
}
}
任何帮助表示赞赏。谢谢你。
解决方案
您可以绝对定位您的叠加层并使用transform: translateY()
. 悬停时将其移回。这是您想要达到的效果吗?
这是一个可以使用的 CodePen:https ://codepen.io/Sixl/pen/bOdwaZ?editors=1100
.product-item {
position: relative;
}
.product-container {
background: #000;
position: relative;
width: 100%;
overflow: hidden;
}
.product-container .product-description {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
background-color: rgba(0, 0, 0, 0.6);
text-align: right;
padding: 0.2em 0.4em 0.2em;
-webkit-transform: translateY(101%);
transform: translateY(101%);
transition: -webkit-transform 200ms ease-in-out;
transition: transform 200ms ease-in-out;
transition: transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
}
.product-container:hover .product-description {
-webkit-transform: translateY(0);
transform: translateY(0);
}
.product-img {
display: block;
max-width: 100%;
height: auto;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet" />
<div class="container-fluid">
<div class="row">
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-1">
<a href="#">
<figure class="product-container">
<img class="product-img" alt="" src="https://picsum.photos/800/450?image=20">
<figcaption class="product-description">Some description</figcaption>
</figure>
</a>
</div>
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-2">
<a href="#">
<figure class="product-container">
<img class="product-img" alt="" src="https://picsum.photos/800/450?image=21">
<figcaption class="product-description">Some description</figcaption>
</figure>
</a>
</div>
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-3">
<a href="#">
<figure class="product-container">
<img class="product-img" alt="" src="https://picsum.photos/800/450?image=22">
<figcaption class="product-description">Some description</figcaption>
</figure>
</a>
</div>
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-4">
<a href="#">
<figure class="product-container">
<img class="product-img" alt="" src="https://picsum.photos/800/450?image=23">
<figcaption class="product-description">Some description</figcaption>
</figure>
</a>
</div>
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-5">
<a href="#">
<figure class="product-container">
<img class="product-img" alt="" src="https://picsum.photos/800/450?image=24">
<figcaption class="product-description">Some description</figcaption>
</figure>
</a>
</div>
<div class="product-item col-md-4 col-sm-6 col-xs-12 p-6">
<a href="#">
<figure class="product-container">
<img class="product-img" alt="" src="https://picsum.photos/800/450?image=25">
<figcaption class="product-description">Some description</figcaption>
</figure>
</a>
</div>
</div>
</div>
推荐阅读
- python - 如何在python中同一类的不同函数的文本框中显示文本
- android - Android NFC 标签 ID 识别不同的 NFC 卡类型
- python - Python 循环无法遍历 html 表的所有值
- qt - 如何在不手动操作 .ui 文件的情况下在 QtDesigner 中编辑 QtElement 的网格位置?
- python - DJANGO gte, lte 没有显示任何结果
- wpf - 从 WPF-Windows (XAML) 调用 WPF-Control 中的 RelayCommand
- serialization - 如何在 Hazelcast 上安排在 IMap 上查询的任务?
- r - 如何在 R 中创建一个用户生成的函数,将列中的所有值转换为日期格式?
- firebase - Flutter/Firebase 错误 - 未处理的异常:类型 '_CompactLinkedHashSet
' 不是类型 'FutureOr 的子类型 >>' - java - AltUnityDriver create-无法执行命令'mobiledevice tunnel -u (device udid)13000 13000'