gpt4 book ai didi

html - CSS圆匹配div内容的宽度

转载 作者:太空宇宙 更新时间:2023-11-04 07:35:45 25 4
gpt4 key购买 nike

我希望能够仅使用 CSS 在网页上圈出元素。我有一些几乎可以工作的代码 - 它在元素周围生成一个圆圈但是

  • 宽度与内容的宽度不匹配(它总是太大),并且
  • 我似乎无法以 child 为中心

下面的代码是我目前的代码

<!doctype html>
<html lang=en>
<head>
<meta charset=utf-8>
<title>MWE</title>

</head>
<body>
<style>
div.ccc {
display: run-in;
position: relative;
}

div.ccc:after {
display: inline-block;
content: '';
position: absolute;
top: -50px;
right: -50px;
bottom: -50px;
left: -50px;
opacity: 0.7;

border: 5px solid red;
border-radius: 50%;
padding: 10px;
}


</style>


<div class="ccc">
<img src="https://beautifulenvironments.files.wordpress.com/2017/12/twinkly-lights.jpg" width="10%">
</div>

<div class="ccc">
<img src="https://beautifulenvironments.files.wordpress.com/2017/12/twinkly-lights.jpg">
</div>

</body>

生成以下内容。请注意,圆圈不在图像的中心,并且宽度不对。

是否可以仅使用 CSS 来解决这个问题?

enter image description here

最佳答案

将 div 设置为 display:inline-block 即可。

默认情况下,div 是 block 级元素,这意味着它们将占据 100% 的宽度。


编辑:问题是您正在使用 % 来调整图像的大小,这取决于父级的宽度……而我们正试图根据子级调整父级的大小……所以那是行不通的。

据我所知,最接近的做法是避免在 % 上调整图像大小,并将 div 显示为内联 block

div.ccc {
position: relative;
display:inline-block;
}

div.ccc:after {
display: inline-block;
content: '';
position: absolute;
top: -50px;
right: -50px;
bottom: -50px;
left: -50px;
opacity: 0.7;

border: 5px solid red;
border-radius: 50%;
padding: 10px;
}

.small{
width:200px;
}
<div class="ccc">
<img src="https://beautifulenvironments.files.wordpress.com/2017/12/twinkly-lights.jpg" class="small">
</div>

<div class="ccc">
<img src="https://beautifulenvironments.files.wordpress.com/2017/12/twinkly-lights.jpg">
</div>

如果你真的需要将它的大小调整为 %,你将需要添加另一个容器并改为调整那个容器的大小

div.ccc {
position: relative;
display:inline-block;
}

div.ccc:after {
display: inline-block;
content: '';
position: absolute;
top: -50px;
right: -50px;
bottom: -50px;
left: -50px;
opacity: 0.7;

border: 5px solid red;
border-radius: 50%;
padding: 10px;
}

.img-container{
display:inline-block;
}

.img-container img{width:100%}

.small{
width:200px;
}
<div class="ccc">
<div class="img-container small">
<img src="https://beautifulenvironments.files.wordpress.com/2017/12/twinkly-lights.jpg">
</div>
</div>

<div class="ccc">
<div class="img-container">
<img src="https://beautifulenvironments.files.wordpress.com/2017/12/twinkly-lights.jpg">
</div>
</div>

关于html - CSS圆匹配div内容的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48968942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com