html - 在 div 中使用 ::after 时如何消除间隙?
问题描述
我想尝试一下::after
,所以我制作了三个图形(正方形、圆形和三角形),然后将它们各自放在后面,并且可以很好地处理圆形和正方形,但是三角形会产生间隙,我不明白为什么,我尝试改变位置和显示属性,但它不起作用
.maincontainer {
background-color: whitesmoke;
border-radius: 1rem;
width: 95%;
min-height: 200px;
margin: 0 auto;
display: flex;
}
.maincontainer div {
margin: 10px;
background-color: teal;
}
.cuadrado {
width: 100px;
height: 100px;
}
.circulo {
width: 100px;
height: 100px;
border-radius: 50%;
background-color: yellowgreen !important;
}
.triangulo {
width: 0px;
border-bottom: 100px solid yellow;
border-left: 50px solid transparent;
background-color: transparent !important;
border-right: 50px solid transparent;
}
.triangulo::after {
content: "Triangulo";
position: fixed;
top: 120px;
left: 28.5%;
}
.cuadrado::after {
content: "Cuadrado";
position: fixed;
top: 120px;
left: 65px;
}
.circulo::after {
content: "circulo";
position: fixed;
top: 120px;
left: 195px;
}
<div class="maincontainer">
<div class="cuadrado"></div>
<div class="circulo"></div>
<div class="triangulo"></div>
</div>
解决方案
您可以通过将高度设置为 0px 来消除间隙
注意:我也设置了 left: 48% 只是为了让triangulo
单词居中
.maincontainer {
background-color: whitesmoke;
border-radius: 1rem;
width: 95%;
min-height: 200px;
margin: 0 auto;
display: flex;
}
.maincontainer div {
margin: 10px;
background-color: teal;
}
.cuadrado {
width: 100px;
height: 100px;
}
.circulo {
width: 100px;
height: 100px;
border-radius: 50%;
background-color: yellowgreen !important;
}
.triangulo {
width: 0px;
height: 0px; /* << here */
border-bottom: 100px solid yellow;
border-left: 50px solid transparent;
background-color: transparent !important;
border-right: 50px solid transparent;
}
.triangulo::after {
content: "Triangulo";
position: fixed;
top: 120px;
left: 48%;
}
.cuadrado::after {
content: "Cuadrado";
position: fixed;
top: 120px;
left: 65px;
}
.circulo::after {
content: "circulo";
position: fixed;
top: 120px;
left: 195px;
}
<div class="maincontainer">
<div class="cuadrado"></div>
<div class="circulo"></div>
<div class="triangulo"></div>
</div>
推荐阅读
- java - 同时使用 Java 1.7 和 1.8
- javascript - 如何解释 vue.js 中 console.log() 的这种奇怪行为?
- shell - 无法回显变量值
- zend-framework - Zend 框架 OR 运算符使用
- python - 如果日期字符串具有不同的格式,则在 python 中将字符串转换为日期
- visual-studio-code - VS Code:替换内置变量launch.json中的字符
- python - 写入函数中的线程 Thread-10 错误,TypeError:write() 参数必须是 str,而不是字节
- android - 为什么 onLongclicklistener 在 kotlin 的 onBindviewholder 中不起作用
- python - 如何在没有 numpy 的情况下在 jit 装饰器上设置二维数组?
- php - 如何从 Symfony4 控制器获取“公共”目录