我已经在互联网上搜索了这个问题,但是这个问题有很多变体,所提供的解决方案都不适用于我的情况。我已经问过ChatGPT,它也帮不了我。
这是我的 html 结构:
<div id="editor">
<iframe id="preview" title="editor preview"></iframe>
<div id="chat-container" class="chat-centered">
<div id="chat-header">
<span id="chat-title">Bot</span>
<button id="minimize-button">−</button>
</div>
<div id="chat-messages">
</div>
<div id="chat-input">
<div id="input-box" contenteditable="true"></div>
<button id="send-button">Send</button>
</div>
</div>
<button id="chat-toggle-button"></button>
</div>
这是相关的CSS:
#chat-container {
color: #333;
position: fixed;
bottom: 20px;
right: 20px;
max-width: 600px;
max-height: 80vh;
display: flex;
flex-direction: column;
overflow: hidden;
width: 100%;
}
#chat-messages {
flex-grow: 1;
padding: 10px;
padding-bottom: 20vh;
overflow-y: auto;
display: flex;
flex-flow: column nowrap;
justify-content: flex-end;
}
chat-messages
div 需要在溢出时滚动。然而,在我测试的每个浏览器上,它都拒绝这样做。
我已为孩子和家长添加了
height
、min-height
、position
和 flex-basis
。一切都没有得到想要的结果,也没有得到想要的结果。
我什至尝试过将 div 嵌套在另一个 div 中,外部的 div 是“弯曲的”,内部的 div 是绝对定位的。令我惊讶的是,它也没有滚动。
显然有些事情我不明白。所以,我转向你。
ps。我有一个在
patsboemwebsite.nl
上运行的实时版本,但您必须单击“启动 nu je 网站”才能看到它。
事实证明,拥有
justify-content: flex-end;
会使滚动条消失。现在我可以不用了,但很不幸。