为什么这个例子中两个窗格元素之间的分隔符“偏向”第二窗格?我所说的偏置是指拖动调整大小手柄会导致手柄从光标所在的位置向左对齐,在拖动时将其拉到一边。在窗格上设置flex:none
会导致拖动调整大小正常工作,但内容会溢出父元素,这是我不希望看到的。有没有一种方法可以在没有任何JS的纯CSS中解决这个问题?
div#main-panel {
flex: auto;
}
.horizontal-container {
display: flex;
flex-flow: row nowrap;
}
.pane {
overflow: auto;
border: solid black;
flex: 1 1 auto;
}
.left-pane {
min-width: 10%;
max-width: 50%;
border: solid red;
resize: horizontal;
}
<div class="horizontal-container" id="main-panel">
<div class="pane left-pane">
sample text
</div>
<div class="pane secondary-pane">
loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong loooooooooooooooooooooooooooong
</div>
</div>
1条答案
按热度按时间bakd9h0s1#
这是因为一个固定宽度的flex子级不会被视为原样,它会收缩。因此,您可以将
flex-shrink: 0
添加到left-pane
,以便它不会缩小: