我正在使用 flexbox 构建一个模态框,它具有两行设计:
|-------------------|
| A |
|-------------------|
| |
| B |
| |
| |
|-------------------|
由于A和B都是在一个高度用百分比而不是像素表示的模态中,我使用flexbox来给A一个高度,然后让B填充剩余的空间,并在需要时使用可选滚动条。
为了实现这一点,我使用以下HTML + CSS:
<div class="wrapper">
<div class="A"></div>
<div class="B"></div>
</div>
.wrapper {
display: flex;
flex-direction: colum;
height: 100%;
}
.A {
height: 70px;
width: 100%;
}
.B {
margin: 10px 20px 10px 20px;
flex: 1;
overflow-y: auto;
overflow-x: hidden;
}
问题在于,根据B的内容不同,A的高度会发生变化。对于某些内容,高度固定为70px,而对于其他一些内容,可能是24px。如果我检查css规则,可以看到高度是24px,当我点击该规则时,它会突出显示代码中的“height: 70px”行。
如果我在包装器中删除"display: flex",则无论什么类型的内容,高度都保持正确,但是div B会溢出模态框,并完全忽略规则"overflow-y: auto"。
如何解决这个问题?
flex-direction: column
而不是colum
。 - Boky