我在一个高度未知的容器中有一个消息列表(这是一个flex子级),希望使它们可滚动。但是我无法找到flex-grow:1
,min-height:0
和其他flex技巧的适当组合来使它工作--消息列表仍然比其父项大。
当我将overflow-y:auto
添加到它的父项时-它可以工作,但是除了消息列表之外,这个父项还包括一些不应该滚动的内容。
下面是我针对这种情况的示例:https://jsfiddle.net/ecbtrn58/2/
<div class="page">
<div class="messages-section">
<div class="header">Your messages</div>
<div class="content">
<img src="https://http.cat/100" width="70" height="50"/>
<div class="messages-list">
<div class="message">Hi.</div>
<div class="message">Hello.</div>
<div class="message">Good morning.</div>
<div class="message">Yo!</div>
</div>
</div>
</div>
</div>
.page {
background-color: #ddd;
width: 300px;
height: 300px;
.messages-section {
display: flex;
flex-direction: column;
width: 50%;
height: 100%;
background-color: #ccc;
.header {
background: #bbb;
padding: 5px;
}
.content {
display: flex;
flex-direction: column;
align-items: center;
padding: 5px;
.messages-list {
display: flex;
flex-direction: column;
overflow-y: auto;
/* What to add here to make it scrollable? */
.message {
height: 50px;
margin: 10px;
padding: 10px;
background: #1dc497;
}
}
}
}
}
如何使留言列表滚动?
您必须将.content
的height
设置为100%
并使其可滚动:
null
.page {
background-color: #ddd;
width: 300px;
height: 300px;
}
.page .messages-section {
display: flex;
flex-direction: column;
width: 50%;
height: 100%;
background-color: #ccc;
}
.page .messages-section .header {
background: #bbb;
padding: 5px;
}
.page .messages-section .content {
display: flex;
flex-direction: column;
align-items: center;
padding: 5px;
height: 100%;
overflow-x: scroll;
}
.page .messages-section .content .messages-list {
display: flex;
flex-direction: column;
overflow-y: auto;
/* What to add here to make it scrollable? */
}
.page .messages-section .content .messages-list .message {
height: 50px;
margin: 10px;
padding: 10px;
background: #1dc497;
}
<div class="page">
<div class="messages-section">
<div class="header">Your messages</div>
<div class="content">
<img src="https://http.cat/100" width="70" height="50" />
<div class="messages-list">
<div class="message">Hi.</div>
<div class="message">Hello.</div>
<div class="message">Good morning.</div>
<div class="message">Yo!</div>
</div>
</div>
</div>
</div>
问题内容: 我在正确使用flexbox时遇到问题,想澄清一下嵌套父元素和子元素的工作方式。 我知道孩子继承了父母的弹性。但是,如果您需要为孩子的孩子(孩子)抚养孩子,这会被覆盖吗?flexbox的正确用法是什么? 我什么时候都适用于孩子 的 孩子(婴儿)的缘故,或将是覆盖孩子的父母柔性? 问题答案: 一个范围 柔性格式化的内容被限制在一个父/子关系。 这意味着弹性容器始终是父容器,而弹性项目始终是
我有一个名为的类,它有一个狗的列表: 狗类有一个小狗列表: 当我试图创建一个新的人类,它有一只狗,狗又有一只小狗,并且我使用带有spring的Hibernate JPA存储库来保存人类时: 我得到以下错误: 但是,如果我用默认值创建人类,并用人类存储库保存他,它就能工作,并且保存了小狗。 我不明白为什么小狗没有自动保存,我也不想使用一个单独的存储库来保存小狗。当狗定义时,Hibernate不应该自
我在根容器的第二个flex项中有一个嵌套的flex容器的行布局。我希望嵌套的flex容器是其父容器使用高度的100%。 下面是演示这个问题的小提琴:http://jsfidle.net/2zdue/316/ 如果我为嵌套的flex容器设置一个显式的高度,那么一切都正常工作。 如何告诉嵌套容器自动填充其容器的垂直空间?
问题内容: 在下面的函数中,我获得带有属性的textarea对象。 此处,嵌套解构使用和变量。但是变量不起作用。 问题答案: 第一个解构仅创建和变量。如果要创建为变量,则需要再次声明。 您可以在Babel编译器上对其进行测试: 这段代码: 被转移到: 如您所见,未创建变量。
在Firebase Structure Your Data一节中,有一个关于以下示例的讨论,其中聊天消息存储在聊天会话ID下。 如何监听进行任何对话?在上设置将发送包含所有会话的DataSnapshot。如果有大量的记录,那将是不可行的。查找整个快照中的哪个子级实际上被更新是一件很困难的事情。 如果我选择直接将消息存储在下,而每个消息都包含字段以检查其所属位置。通过在上创建,我可以通过为设置值侦听
我想让flex的孩子渲染,使位于的宽度之下,而不是容器的宽度之下。 显然flex子项不能设置为内联块? 有解决这个问题的方法吗? https://codepen.io/joshuajazleung/pen/EbwZmJ
这是我使用的一个引用,它解释了如何使一个div在其滚动条隐藏的情况下可滚动。唯一的区别是我有嵌套的div。检查我的小提琴 HTML: CSS: 像上面,我有一个溢出的水平div和我想隐藏它的滚动条。我必须使其仍然可滚动,因为否则将无法工作。 更新: 我已经读了所有的答案,但我仍然没有解决我的问题,也不知道是什么原因造成的。这是有麻烦的生活。基本上,我试图遵循这几乎完全相同的,但一定有一些原因,我的