html - 按宽度拆分 div 以填充父 div
问题描述
我有一个父 div,它有在其下动态添加的子 div。我想根据孩子的宽度完全填充父 div。子项的组合宽度始终等于 100。
到目前为止我已经尝试过了:
<div style="position:relative; background-color:red;">
<div class="progressPercent" style="display:inline-block;""width:33%">33
</div>
<div class="progressPercent" style="display:inline-block;" "width:33%">33%
</div>
<div class="progressPercent" style="display:inline-block;" "width:33%">33%
</div>
</div>
所有子 div 都是动态创建的,我正在尝试创建一个完成进度百分比栏。
正如小提琴中解释的那样,我想完全填充 GREEN div 以覆盖 RED 父 div。
解决方案
你在里面放了一些额外"
的东西——之后inline-block
。还要考虑到行尾会增加一个额外的空间,因此您的容器的总宽度将是 33% + 33% + 33% + 2 个额外的空间。
您可能想尝试使用display: flex;
<style>
.progressPercent {
color: #000!important;
background-color: green!important;
border-radius: 0.5px;
text-align: right;
height:100%;
font-weight: bolder;
}
</style>
<div style="display: flex;">
<div class="progressPercent" style="flex-basis: calc( 100% / 3 );">33%</div>
<div class="progressPercent" style="flex-basis: calc( 100% / 3 );">33%</div>
<div class="progressPercent" style="flex-basis: calc( 100% / 3 );">33%</div>
</div>
我使用calc( 100% / 3 )
它比使用 33% 的树时间更准确,比 100% 少 1%。
推荐阅读
- html - 如果没有更多空间,则将文本换行到下一行
- amazon-web-services - 在 cloud9 上安装 aws cli
- php - 如何在mysql查询中合并两个数组
- node.js - 在 Mac OS 上连接到 Cassandra 的 K8s 问题(通过 Node.js)
- three.js - chrome与firefox中PlaneBufferGeometry的不同方向
- firebase - 如何在 Flutter 中使用查询访问 Cloud Firestore 的数组索引?
- gradle - 在 gradle 复制任务中,“扩展”不能单独工作
- android - In App Billing BroadcastReceiver 内存泄漏
- vba - VBA,使用用户定义的函数从范围中查找单词
- php - 在 codeigniter 中使用 distinct 选择多个列