所以我正在用Reaction编写一个前端,我有一个如下所示的聊天窗口

<div id="outer-wrapper">
    <div className = "chat-window-wrapper">
        <div className="chat-window">
        <!-- chat messages go here -->
        </div>
        <div className="chat-window-textarea"></div>
    </div>

    <div id="element-below">
        <!-- other stuff -->
    </div>
</div>

在我使用Reaction从可观察到的消息数组中呈现消息的chat-window div中,chat-window中的每个消息看起来如下所示:

    <div>
        {messageStr}
    </div>

我根据Reaction中的消息数量计算了chat-window-wrapperdiv的高度,它运行得很好,我有一个最大高度,外部div可以扩展到这个高度.我正在努力让chat-window-wrapper的内部看起来很好

  • 我需要chat-window-textarea保持固定在底部,目前它位于消息的中间,下面有很多空白空间
  • 我需要chat-window-wrapper才能向上扩展,目前如果我达到最大高度,窗口就会开始向下扩展,下面的元素就会被推出屏幕.如果chat-window-wrapper达到最大高度,我想让chat-window滚动

我正在合作一个更大的项目,所以我目前将outer-wrapperelement-below视为一个黑盒,但如果绝对必要,我可以更改这些元素上的css

我该如何用css来做这件事呢? 我已经try 了很多东西,如果需要的话,我可以发布我的简陋的css文件,但我想我无论如何都要从头开始.任何建议,即使只是一个很小的建议,我们也会感激

谢谢

推荐答案

看起来你正在开发一个聊天应用程序,它可以显示从新到旧的消息,并有一个文本区来编辑消息.关于你的问题:

  1. chat-window-textarea到底部:可以在父元素chat-widnow-wrapper中使用FLEX布局,设置flex-direction: column,设置聊天窗口来占据休息空间;
  2. chat-window-wrapper向上扩展:使用Flex和Flex-Direction:列反转;

中央统计局的统计数字如下:

  .chat-window-wrapper {
    width: 100px; /* for demo */
    border: 1px solid #eaeaea; /* for demo */
    height: 100px;
    display: flex;
    flex-direction: column; /* Reverse column to make it expand upwards */
  }

  .chat-window {
    display: flex;
    flex-direction: column-reverse;
    overflow-y: auto; /* Enable vertical scroll if needed */
    flex: 1;
  }

演示:https://codepen.io/nxoglrnh-the-decoder/pen/eYXmWYW

Html相关问答推荐

当ul为Flex时,使ul元素在指定高度内可垂直滚动

如何将FlexBox项目zoom 到其包含图像的大小

如何才能只给没有孟加拉语Kar符号的字母上色?

在css嵌套 Select 器中,尾随的`&;‘是什么意思?

react :事件和转发器在特定代码段中不起作用

如何在图像中垂直和水平居中显示文本?

Tailwind CSS:overflow-y Property Not Scrolling Unreliably to Bottom with top-[63px]

有没有什么方法可以很容易地给一个SVG一个插框阴影?

四开:如何右对齐 PDF *和* HTML 中的文本

如何创建淡出研磨背景

悬停时宽度从 0 过渡到自动

当我们在vue中使用截断大文本时如何显示标题属性?

将组件移动到页面底部 Angular

Github上部署需要花费几小时时间:等待github pages部署批准

主要元素内滚动时,固定导航栏会消失

将现有内容拆分为三列或部分

如何在div中设计伪元素?

本地 css 样式表未链接

我如何使用 HTML 和 CSS 在我的下拉菜单中获得这种类型的样式