【发布时间】:2020-02-08 22:38:12
【问题描述】:
我试图在图像上创建一个文本叠加层,我想为它添加一个轻微的边框半径。但我注意到,当将border-radius: 5px 和overflow: hidden 添加到父级时,叠加层后面的图像仍然在底角显示其边框的一小部分,就好像它忘记在那里隐藏一条像素化线一样。
.main-info {
box-shadow: 0px 0px 3px 2px #221b25c7;
border-radius: 5px;
font-size: 0.75rem;
overflow: hidden;
}
.main-info > .img {
position: relative;
}
.text {
position: absolute;
display: flex;
width: 100%;
bottom: 0;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: justify;
justify-content: space-between;
-webkit-transition: opacity 0.2s ease-out;
transition: opacity 0.2s ease-out;
opacity: 1;
color: white;
background-color: rgba(0, 0, 0, 0.65);
backdrop-filter: blur(3px);
z-index: 5;
line-height: 25px;
}
.text > .limit {
color: white;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
position: relative;
max-width: 100%;
width: 0;
padding: 0 0.5rem;
}
.text > .limit {
text-align: center;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<div class="row m-5">
<div class="col-8">
<div class="main-info">
<div class="img">
<a href="#">
<div class="text">
<div class="limit">Hello World</div>
</div>
<img src="https://placehold.it/272x154" style="width: 100%">
</a>
</div>
</div>
</div>
</div>
我曾想过只为孩子添加边框半径,但结果相同。
【问题讨论】: