html - 悬停时的叠加层比图像宽
问题描述
我一直在尝试为我使用 Bootstrap 制作的类别卡显示悬停覆盖。叠加效果很好,但唯一的问题是叠加比我的图像宽。我还需要叠加层来匹配半径,但我不确定如何解决这个问题..
我在下面提供了我的代码:
.home-categories {
background-color: var(--bg-dark);
}
.home-category-image-container {
padding: 0px;
margin: 0px;
position: relative;
transition: .3s ease-in;
}
.home-category-image {
border-radius: 15px;
}
.home-category-image-container:hover .category-overlay {
position: absolute;
z-index: 2;
top: 0;
left: 0;
height: 100%;
width: 100%;
background-color: rgba(4, 4, 4, 0.4);
}
.home-category-title {
letter-spacing: 2px;
text-transform: uppercase;
z-index: 1000;
color: #f2f3f4;
opacity: .85;
font-family: "Russo One", sans-serif;
font-weight: 300;
margin: 0;
padding: 5px;
bottom: 5px;
right: 5px;
position: absolute;
}
.home-category-title:hover {
text-decoration: none;
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
</script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous">
</script>
<section class="home-categories">
<div class="container-fluid py-5">
<div class="row">
<div class="home-category-image-container col-lg-3 col-md-6 col-sm-6 col-xs-12 p-2">
<a href="#">
<div class="category-overlay"></div>
<img src="https://images.pexels.com/photos/47356/freerider-skiing-ski-sports-47356.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="{{category.title}}" class="home-category-image img-fluid">
<h3 class="home-category-title" data-aos="fade-in">title</h3>
</a>
</div>
<div class="home-category-image-container col-lg-3 col-md-6 col-sm-6 col-xs-12 p-2">
<a href="#">
<div class="category-overlay"></div>
<img src="https://images.pexels.com/photos/47356/freerider-skiing-ski-sports-47356.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="{{category.title}}" class="home-category-image img-fluid">
<h3 class="home-category-title" data-aos="fade-in">title</h3>
</a>
</div>
<div class="home-category-image-container col-lg-3 col-md-6 col-sm-6 col-xs-12 p-2">
<a href="#">
<div class="category-overlay"></div>
<img src="https://images.pexels.com/photos/47356/freerider-skiing-ski-sports-47356.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="{{category.title}}" class="home-category-image img-fluid">
<h3 class="home-category-title" data-aos="fade-in">title</h3>
</a>
</div>
</div>
</div>
</section>
谢谢你的帮助
解决方案
更改 CSS 喜欢
.home-category-image-container a{
position: relative;
display:block;
}
.home-category-image-container:hover .category-overlay {
border-radius:15px;
}
.home-categories {
background-color: var(--bg-dark);
}
.home-category-image-container {
padding: 0px;
margin: 0px;
position: relative;
transition: .3s ease-in;
}
.home-category-image-container a{
position: relative;
display:block;
}
.home-category-image {
border-radius: 15px;
}
.home-category-image-container:hover .category-overlay {
position: absolute;
z-index: 2;
top: 0;
left: 0;
height: 100%;
width: 100%;
border-radius:15px;
background-color: rgba(4, 4, 4, 0.4);
}
.home-category-title {
letter-spacing: 2px;
text-transform: uppercase;
z-index: 1000;
color: #f2f3f4;
opacity: .85;
font-family: "Russo One", sans-serif;
font-weight: 300;
margin: 0;
padding: 5px;
bottom: 5px;
right: 5px;
position: absolute;
}
.home-category-title:hover {
text-decoration: none;
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
</script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous">
</script>
<section class="home-categories">
<div class="container-fluid py-5">
<div class="row">
<div class="home-category-image-container col-lg-3 col-md-6 col-sm-6 col-xs-12 p-2">
<a href="#">
<div class="category-overlay"></div>
<img src="https://images.pexels.com/photos/47356/freerider-skiing-ski-sports-47356.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="{{category.title}}" class="home-category-image img-fluid">
<h3 class="home-category-title" data-aos="fade-in">title</h3>
</a>
</div>
<div class="home-category-image-container col-lg-3 col-md-6 col-sm-6 col-xs-12 p-2">
<a href="#">
<div class="category-overlay"></div>
<img src="https://images.pexels.com/photos/47356/freerider-skiing-ski-sports-47356.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="{{category.title}}" class="home-category-image img-fluid">
<h3 class="home-category-title" data-aos="fade-in">title</h3>
</a>
</div>
<div class="home-category-image-container col-lg-3 col-md-6 col-sm-6 col-xs-12 p-2">
<a href="#">
<div class="category-overlay"></div>
<img src="https://images.pexels.com/photos/47356/freerider-skiing-ski-sports-47356.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="{{category.title}}" class="home-category-image img-fluid">
<h3 class="home-category-title" data-aos="fade-in">title</h3>
</a>
</div>
</div>
</div>
</section>
推荐阅读
- node.js - WebSocket 连接到“wss://api.example.com/ws”失败:WebSocket 握手期间出错:意外响应代码:404
- gitkraken - GitKraken:无法打开公钥文件
- javascript - 如何在 javascript 中重定向自定义生成的 URL?
- android - Android 工作室 - MVP 模式
- ios - Siri,通过 Swift 改变语言识别,动态
- python - 在 Django 中的表单操作后无法重定向
- networking - 如果 TCP/IP 标头计数为 40 个字节,那么 8 个字节的 WebSocket 消息实际上得到 > 40 个字节?
- qt - 如何在 Qt 中创建和修改 .doc 和 .docx 文件?
- python-3.x - 在python中重新采样和切片数据
- swiftui - ModalView 中的 EnvironmentObject 问题