gpt4 book ai didi

html - 对对齐 flexbox 帮助不大

转载 作者:行者123 更新时间:2023-11-27 23:09:25 25 4
gpt4 key购买 nike

我正在尝试使用 flexboxes 为我的元素构建工具提示以对齐其中的内容。这是我想象中的样子的小图片: enter image description here

这是我对上图的 CSS 代码尝试:

.hud-tt-container {
display: flex;
width: 100%;
height: auto;
box-sizing: border-box;
}

.hud-tt-info-container {
width: auto;
height: 64px;
flex-grow: 1;
border: 1px solid yellow;
box-sizing: border-box;
}

.hud-tt-info-block {
width: auto;
height: 32px;
border: 1px solid grey;
box-sizing: border-box;
}

.col-full {
width: 100%;
height: 32px;
float: left;
border: 1px solid gray;
box-sizing: border-box;
}

.col-half {
width: 50%;
height: 32px;
float: left;
border: 1px solid gray;
box-sizing: border-box;
}

.hud-tt-lv-container {
width: 64px;
height: 64px;
flex-grow: 0;
border: 1px solid blue;
box-sizing: border-box;
}
<div class="hud-tooltip f16 fwhite">
<div class="hud-tt-container">
<div class="hud-tt-info-container">
<div class="col-full"></div>
<div class="col-half"></div>
<div class="col-half"></div>
</div>
<div class="hud-tt-lv-container">
<canvas id="Bar"></canvas>
</div>
</div>
</div>

我目前正在使用 col 类以这种方式排列它们。这样它也可以工作,但我想为此使用 flexboxes,所以要使用 hud-tt-info-block级别和信息容器按照我希望的方式对齐。级别容器占用 64x64px,而信息容器占用所有剩余空间。但是我不确定如何按照我希望它们使用 flexbox 的方式对齐信息 block 由于数量众多,使用 flexbox 对齐 col 类非常重要。 Flexbox 可以随着数字变大而调整宽度,而我当前的解决方案不适用于大数字

最佳答案

可以嵌套flex元素,在.hud-tt-info-container中添加display: flex就是一个flex item,它也成为一个flex container,它的子项变成 flex 元素等等。

查看 CSS 注释

.hud-tt-container {
display: flex;
}

.hud-tt-info-container {
flex-grow: 1; /* fill remaining space */
display: flex; /* added */
flex-wrap: wrap; /* added, allow items to wrap */
height: 64px;
}

.hud-tt-info-block {
height: 32px;
border: 1px solid gray;
box-sizing: border-box;
}

.col-full {
flex-basis: 100%; /* changed, take full width and push
the other items to a new row */
}

.col-half {
flex-basis: 50%; /* changed */
}

.hud-tt-lv-container {
width: 64px;
height: 64px;
border: 1px solid blue;
box-sizing: border-box;
}
<div class="hud-tooltip f16 fwhite">
<div class="hud-tt-container">
<div class="hud-tt-info-container">
<div class="hud-tt-info-block col-full"></div>
<div class="hud-tt-info-block col-half"></div>
<div class="hud-tt-info-block col-half"></div>
</div>
<div class="hud-tt-lv-container">
<canvas id="Bar"></canvas>
</div>
</div>
</div>

关于html - 对对齐 flexbox 帮助不大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47019358/

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