使第二个弹性列可滚动

2024-02-25

我看到这个例子来自Flex:flex-column 内的可滚动 div https://stackoverflow.com/questions/34157058/flex-scrollable-div-inside-flex-column并尝试使用它,但我无法让它工作。出了问题,有人可以查看我的代码并告诉我代码哪里出了问题吗?

包含两列的行;左边是 75% 宽度,右边是 25% 宽度。因此,右列高度必须与左列相同;当右栏内容溢出时,右栏应该是可滚动的。

Live: http://gnt.staatus.eu/ http://gnt.staatus.eu/

HTML 代码如下:

<div id="row">
    <div id="content">
        <video id="my-video" class="video-js vjs-default-skin vjs-big-play-centered"  controls preload="auto" data-setup='{ "autoplay": true, "preload": "auto", "fluid": true }'>
            <source type="application/x-mpegURL" src="hidden" />
            <p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a></p>
        </video>
        <script src="https://vjs.zencdn.net/7.5.5/video.js"></script>
    </div>
    <div id="chat">
        <div id="chat2">
            <ul>
                <li>username: Tanaka THAI KICKU</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
            </ul>
        </div>
    </div>
    <br style="clear: both;" />
</div>

这是样式表:

#content {
    flex: 1;
    flex-basis: 75%;
    overflow: hidden;
}

#content a {
    color: white;
}

#chat {
    flex: 1;
    flex-basis: 25%;
    display: flex;
    overflow: hidden;
    flex-direction: column;

    color: white;
    word-wrap: break-word;
    padding: 0px;
}

#chat2 {
    overflow: auto;
}

#chat2 ul {
    list-style: none;
    padding: 5px;
    margin: 0;
}

#row {
    display: flex;
    background-color: #1f1f1f;
    clear: both;
    overflow: hidden;

}

使用此方法无法 100% 实现flex。您还必须使用一些自定义 CSS。 Flexbox 始终使高度适合内容的最大高度。在您的情况下,您需要从弹性视图中删除第二个元素,并需要将其放置在定位位置。

在下面的示例中,父元素有display: flex and position: relative。第二个子元素设置为position: absolute75% 留下了overflow: auto。这使得父级采用第一个子级的高度并使第二个子级可滚动。

.parent {
    display: flex;
    position: relative;
}
.child-1, .child-2 {
    border: 1px solid black;
    margin: 5px;
}
.child-1  {
    flex: 0 1 75%;
}
.child-2 {
    position: absolute;
    left: 75%;
    top: 0;
    bottom: 0;
    right: 0;
    overflow: auto;
}
<div class="parent">
    <div class="child-1">
        <p>Reference Div</p>
        <p>Reference Div</p>
        <p>Reference Div</p>
    </div>
    <div class="child-2">
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
        <p>Scrolling Div</p>
    </div>
</div>

解决您的问题:

#content {
    flex: 0 0 75%;
    /* flex-basis: 75%; */
    overflow: hidden;
}

#content a {
    color: white;
}

#chat {
    /* flex: 1; */
    /* flex-basis: 25%; */
    /* display: flex; */
    overflow: hidden;
    /* flex-direction: column; */

    color: white;
    word-wrap: break-word;
    padding: 0px;
    /* Added */
    position: absolute;
    left: 75%;
    top: 0;
    bottom: 0;
    right: 0;
    overflow: auto;
}

#chat2 {
    overflow: auto;
}

#chat2 ul {
    list-style: none;
    padding: 5px;
    margin: 0;
}

#row {
    display: flex;
    background-color: #1f1f1f;
    clear: both;
    overflow: hidden;
    /*Added*/
    position: relative;
}
<link rel="stylesheet" href="http://gnt.staatus.eu/style.css">
<link rel="stylesheet" href="https://vjs.zencdn.net/7.5.5/video-js.css">

<div id="row">
    <div id="content">
        <video id="my-video" class="video-js vjs-default-skin vjs-big-play-centered"  controls preload="auto" data-setup='{ "autoplay": true, "preload": "auto", "fluid": true }'>
            <source type="application/x-mpegURL" src="http://gnt.staatus.eu/hls/test.m3u8" />
            <p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a></p>
        </video>
        <script src="https://vjs.zencdn.net/7.5.5/video.js"></script>
    </div>
    <div id="chat">
        <div id="chat2">
            <ul>
                <li>username: Tanaka THAI KICKU</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
                <li>username: text</li>
            </ul>
        </div>
    </div>
    <br style="clear: both;" />
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使第二个弹性列可滚动 的相关文章

  • 如何使用 Angular 创建 n 个可打印页面?

    嗯 我搜索了一下 没有找到类似的东西 我想知道如何使用 Angular 创建可打印内容 跳转到页面末尾并打印更多内容 如何强制内容始终适合特定尺寸 例如 PDF 我需要 Angular 来执行此操作吗 如果不是 HTML 我可以迭代 PDF
  • 我需要在条形图中显示 HTML/Js 页面的 Div 结果?

    我需要在条形图中显示下面提到的代码的结果 是否可以显示下面代码的结果以供调查显示在条形图中 所以我按照几个伙伴的建议将代码放在这里 您可以在代码中看到我正在打印调查结果 但我也想显示蜘蛛图 但我不知道如何继续 您可以检查这个问题中的代码 h
  • HTML 电子邮件 - Outlook 2013 中图像之间的间隙

    I m composing an HTML email which looks fine in every major email client except Outlook 2013 which is adding vertical ga
  • 有没有办法将图像异步加载到用户缓存?

    我有一份物品清单 它们每个都是一个带有名称的正方形 当用户将鼠标悬停在正方形上时 将显示一个图像 这是由 jQuery 完成的 代码是这样的 square hover function var link this attr title th
  • 如何在 Popup div 中加载 iframe 内容?

    如何在 Popup div 中加载 iframe 内容 单击每个链接时将打开弹出 div 从每个链接 页面 url 将加载到弹出 div 内的 iframe href document ready function openpop clic
  • 如何缩放 SVG 路径以适应窗口大小?

    我在缩放 SVG 以适应窗口大小时遇到 了麻烦 在这个例子中 我有一个波浪路径和一个文本元素 我想在这里实现的是沿着波浪路径从左到右移动文本元素 这是由GSAP完成的 并停在路径的中间在初始负载下 当用户开始滚动时 它将移至末尾 我的问题是
  • CSS条件注释适用于除IE之外的其他浏览器吗?

    据我所知 条件注释仅支持不同版本的IE 同样 我们也可以为其他浏览器提供条件注释吗 如果是 如何 如果不是 最好的选择是什么 CSS 条件注释仅适用于 IE http msdn microsoft com en us library ms5
  • Bootstrap 按钮的检查状态

    我想在 Bootstrap 3 0 2 中设置组复选框的选中状态 docs http getbootstrap com javascript buttons html div class btn group div
  • iPhone 4 上不稳定的 CSS3 动画

    我有一个非常简单的 或者至少我认为是 动画 我所做的只是 webkit background size 的动画 bubble position relative width 397px height 326px background url
  • 如何在绝对定位的 div 内用 CSS 创建粘性页脚?

    我想创建一个粘性页脚inside绝对定位的 div 元素 我的方法是将页脚 div 也绝对定位 在另一个相对定位的 页面 div 内 其中包含页面的实际内容 div class content div class page Some Lor
  • 如何使用 file:///F:/foldername 访问 ajax 中的本地文件夹?但它适用于 http://

    在这里 我使用以下代码使用 AJAX jQuery 动态创建文件名列表 window load function var fileExt csv document ready function ajax url file F foldern
  • 动画和过渡的组合无法正常工作

    我一直在尝试添加一些基本的 CSS3 动画 目标是在按钮的单击事件上切换类 并根据添加的类对 div 进行动画处理 该代码对于 Firefox 中切换的第一次迭代完美运行 但对于 Chrome 等其他浏览器以及 Firefox 中的下一次迭
  • 设置绝对仓位和保证金

    我想设置一个元素的position to absolute并有一个margin bottom 但似乎margin bottom没有效果 HTML div div CSS container border 1px solid red posi
  • 角度材质表-表内边框

    I am using Angular material table and I want to set border inside the table Using CSS I was able to set border Normal ca
  • SVG 过滤器在 Firefox 中不显示,在 Chrome 中工作正常

    我想要深色背景上的一段深色文本外面有白色的光芒 虽然默认阴影滤镜 https developer mozilla org en US docs Web CSS filter drop shadow 2在 CSS 中 比如filter dro
  • 等高列并将最后一项与底部对齐

    我有一个列表 其中每个li有嵌套容器 我尝试为所有列表项保留相同的高度 并将最后一个 div 推到底部 我将如何使用 flex 来做到这一点 ul list container display inline flex justify con
  • 如何使弹出窗口溢出:在溢出内可见:自动上下文

    我有一个 div 列表 如果超过父框 overflow x 应该滚动 并且在悬停时 我想看到一个弹出窗口 我的问题是 如果我将鼠标悬停在任何子 div 上 弹出窗口将被考虑用于溢出计算 但我只想让它在所有内容之上可见 而不是使其扩展滚动区域
  • 无法使用python和beautifulsoup抓取网页中的某些href

    我目前正在使用 Python 3 4 和 bs4 爬取网页 以收集塞尔维亚在里约 2016 年的比赛结果 所以网址here http rio2016 fivb com en volleyball women teams srb serbia
  • Firefox -moz-border-radius 不会裁剪图像?

    如果设置了图像的边框半径 有谁知道如何让 Firefox 裁剪角 它包含的元素可以正常工作 但我会发现丑陋的角落伸出来 有什么方法可以解决此问题 而无需将图像设置为背景图像或在将其放在网站上之前对其进行处理吗 解决方法 将图像设置为容器元素
  • IE10 中的弹性盒

    我试图让弹性框在 IE10 中工作 但它不起作用 Safari Chrome 和 Firefox 工作正常 但 IE10 不工作 有人知道答案吗 代码笔 http codepen io anon pen vcEGH http codepen

随机推荐

  • 为什么 kafka-python 无法连接到 Bluemix 消息中心服务?

    我正在尝试连接到 Bluemix Message Hub 实例http bluemix net http bluemix net 这个简单的脚本 usr bin env python from kafka import KafkaProdu
  • 从 Codeigniter 中的帮助程序访问数据库配置变量

    是否可以从 Codeigniter 中的助手获取 database php 变量值 方法是这样的 一般情况下是用不到的 this在助手中 所以你必须使用get instance 我给出了 主机名 的示例 您可以使用您需要的配置名称 func
  • Eclipse 新插件项目:不可选

    只是一个简单的问题 但我在这个美妙的万维网上找不到任何答案 我只想创建一个新的插件项目基于日食赫利俄斯 通常此功能应该随此版本一起提供 版本 Helios Service Release 2 Build id 20110301 1815 但
  • pandas DataFrame 上的就地逐行操作

    假设我有这个 gt gt gt x pandas DataFrame 1 0 2 0 3 0 3 4 5 columns A B C gt gt gt print x A B C 0 1 2 3 1 3 4 5 现在我想正常化x按行 即将每
  • 使用react-bootstrap-typeahead对多个数据集进行分组

    我正在尝试使用旧的 jQuery typeahead 和react bootstrap typeahead 来复制搜索字段 它查询使用多个异步数据源 并显示按此类源的返回分组的结果 例如 如图所示 通过输入字母 b 它会查询地址数据库以及用
  • 将 HttpRequestMessage 转换为 OwinRequest 并将 OwinResponse 转换为 HttpResponseMessage

    我有一个 Web API 消息处理程序MyHandler我想作为中间件在 OWIN 管道中运行 所以像这样配置处理程序 public class Startup public void Configuration IAppBuilder a
  • MySQL中如何通过多列主键选择多行?

    我有一个带有多列主键 城市 州 日期 和更多数据列的表 我正在寻找每个城市 州的最新数据 我如何干净 高效地做到这一点 现在 我可以通过执行第一个查询来获取我尝试获取的所有行的列表 然后执行带有大量 WHERE 子句的第二个查询 SELEC
  • 在 EitherT 和 Validation 之间切换以累积误差或遍历

    假设我有以下功能 def getRemoteThingy id Id EitherT Future NonEmptyList Error Thingy Given a List Id 我可以轻松地检索List Thingy 通过使用Trav
  • Hibernate 搜索排序

    Hibernate 搜索根据相关性对结果进行排序 这是正常的 除此之外 如果两个文档具有相同的分数 则它们按主键排序 例如 book1 id 1 bookTitle 通过示例进行休眠搜索 book2 id 2 bookTitle 休眠搜索实
  • 突出显示 Visual Studio Code C++ 扩展中的错误语法

    是否可以使用 Visual Studio Code C 扩展来检查语法错误 例如 以下错误语法将突出显示 std vectorr vec Yes 微软C C https marketplace visualstudio com items
  • 在 Cordova 中使用相机后,iOS 收到内存警告

    当我拍照时 我开始不断收到内存警告 我正在使用 Cordova 3 5 和带有这些设置的相机插件 var config var pictureSource var destinationType sets the format of ret
  • Aiohttp 在浏览器正常打开的某些网站上引发证书错误

    代码示例 import aiohttp import asyncio async def main url async with aiohttp ClientSession as session async with session get
  • 使用 OAuth2 保护 Nodejs / sailsjs API

    我使用 sailsjs 开发了一个 REST API 我想添加 OAuth2 授权来保护此 API 我对 OAuth 很陌生 不知道从哪里开始 我发现了几个可用于此目的的模块 例如 oauth2orize 及其用法示例https githu
  • fastText 中的精确度和召回率?

    我实现了 fastText 进行文本分类 链接https github com facebookresearch fastText blob master tutorials supervised learning md https git
  • AWS AppSync:如何通过 DynamoDB 返回有效的 JSON

    我有一个 AppSync GraphQL API 可以对 DynamoDB 进行查询并返回 JSON 字符串 但是在我的响应映射模板中 我使用内置 util parseJson 功能如所列here https docs aws amazon
  • Jquery Ajax 验证复选框

    可能是一个简单的解决方案 所以我有点尴尬 但 JS 并不是我的强项 所以我想我会问 我正在使用Jquery表单 http jquery malsup com form 用于提交一组复选框以满足我正在制作的活动策划应用程序的要求的插件 如果没
  • 源代码管理中的 .vcxproj

    我一直在阅读很多关于 vcxproj 文件是否应该添加到源代码管理中的问题 共识似乎是他们应该这样做 但是当打开文件时 我注意到其中包含很多用户特定的路径 鉴于这是一个由很多人共同开发的项目 我还应该将其添加到源代码管理中吗 看起来它会与其
  • Json.NET - CustomCreationConverter 中单个属性的默认反序列化行为

    在下面的场景中 我如何得到CrazyItemConverter当遇到我要反序列化的类型中存在的 JSON 属性时 是否照常进行 我有一些如下所示的 JSON Item Name Apple Id null Size 5 Quality 2
  • Symfony sfDoctrineGuardPlugin 自定义登录查询

    我使用 symfony sfDoctrineGuardPlugin 来管理前端用户和后端用户的身份验证 没关系 只是我不希望前端用户能够登录后端应用程序 我可以设置凭据 但在用户通过身份验证后会检查凭据 我想要的是以表单形式登录 永远不会验
  • 使第二个弹性列可滚动

    我看到这个例子来自Flex flex column 内的可滚动 div https stackoverflow com questions 34157058 flex scrollable div inside flex column并尝试