用 border-radius 适合 div 内的图像?
fit an image inside div with border-radius?
想象一个 parent div
和一个圆角的 border-radius
。有没有办法将 img
放入 div 中,使其也符合圆角边框?
.parent-div {
background-color: gray;
border-radius: 20px;
}
.image {
width: 100%
}
<div class="parent-div">
<img class="image" src="/a-cool-image">
<p>Some text</p>
</div>
这只会导致图像具有方角,而 div 在底部具有圆角。我知道的唯一解决方法是让图像具有相同的 border-radius 属性 但仅在顶部两个角上。我发现这是一个烦人的解决方法。
正在尝试使用 overflow
https://www.w3schools.com/cssref/pr_pos_overflow.asp
.parent-div {
background-color: gray;
border-radius: 20px;
overflow: hidden;
}
这里有一个工作示例来展示我的建议:https://jsfiddle.net/4mbzpfu2/3/
你可以试试这个。
.parent-div img {
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
-ms-border-radius: 20px;
-o-border-radius: 20px;
border-radius: 20px;
}
.image {
width: 100%
}
<div class="parent-div">
<img class="image" src="https://www.w3schools.com/howto/img_avatar.png">
<p>Some text</p>
</div>
另一种解决方法可能是使用 CSS。您可以为各个角设置半径 属性。这是一个顶部是圆角,底部是方角的例子:
img.yourclass {
-webkit-border-top-left-radius: 20px;
-webkit-border-top-right-radius: 20px;
-moz-border-radius-topleft: 20px;
-moz-border-radius-topright: 20px;
border-top-left-radius: 20px;
border-top-right-radius: 20px;
}
查看此网站以生成 CSS 代码:https://border-radius.com/
想象一个 parent div
和一个圆角的 border-radius
。有没有办法将 img
放入 div 中,使其也符合圆角边框?
.parent-div {
background-color: gray;
border-radius: 20px;
}
.image {
width: 100%
}
<div class="parent-div">
<img class="image" src="/a-cool-image">
<p>Some text</p>
</div>
这只会导致图像具有方角,而 div 在底部具有圆角。我知道的唯一解决方法是让图像具有相同的 border-radius 属性 但仅在顶部两个角上。我发现这是一个烦人的解决方法。
正在尝试使用 overflow
https://www.w3schools.com/cssref/pr_pos_overflow.asp
.parent-div {
background-color: gray;
border-radius: 20px;
overflow: hidden;
}
这里有一个工作示例来展示我的建议:https://jsfiddle.net/4mbzpfu2/3/
你可以试试这个。
.parent-div img {
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
-ms-border-radius: 20px;
-o-border-radius: 20px;
border-radius: 20px;
}
.image {
width: 100%
}
<div class="parent-div">
<img class="image" src="https://www.w3schools.com/howto/img_avatar.png">
<p>Some text</p>
</div>
另一种解决方法可能是使用 CSS。您可以为各个角设置半径 属性。这是一个顶部是圆角,底部是方角的例子:
img.yourclass {
-webkit-border-top-left-radius: 20px;
-webkit-border-top-right-radius: 20px;
-moz-border-radius-topleft: 20px;
-moz-border-radius-topright: 20px;
border-top-left-radius: 20px;
border-top-right-radius: 20px;
}
查看此网站以生成 CSS 代码:https://border-radius.com/