惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Announcements
Recent Announcements
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 聂微东
爱范儿
爱范儿
Jina AI
Jina AI
博客园 - Franky
IT之家
IT之家
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tailwind CSS Blog
博客园 - 三生石上(FineUI控件)
The Cloudflare Blog
M
MIT News - Artificial intelligence
aimingoo的专栏
aimingoo的专栏
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
J
Java Code Geeks
人人都是产品经理
人人都是产品经理
腾讯CDC
博客园_首页
月光博客
月光博客
有赞技术团队
有赞技术团队
C
Check Point Blog
Microsoft Security Blog
Microsoft Security Blog
MyScale Blog
MyScale Blog

博客园 - 华安

C#中Microsoft.Extensions.Caching.Memory 与 System.Runtime.Caching.MemoryCache区别 自适应网格系统:CSS Grid中repeat()、auto-fill与auto-fit的深度解析 CSS3中响应式布局两大神器display:flex和display:grid springBoot中的 pom.xml文件 bulid学习 CSS中元素的display显示方式有多种,隐藏、块级、内联、内联-块级 SQl Server 中的 go 是什么作用 CSS中 display:flex的align-items: stretch; 移动端浏览器(尤其是 iOS Safari)的橡皮筋回弹效果(Overscroll / Bounce Effect) 手机端浏览器上ES6中的Fetch回调执行 window.open没效果 用Flex实现兼容性好的全屏布局 在 VS Code 中使用 C# Dev Kit 和 Unity Tools 调试 Unity 2022 Unity 可编程物件(ScriptableObject) 微信小程序中的 联系客服 最基本的使用方法 wx.requestSubscribeMessage(Object object) 和 wx.requestSubscribeDeviceMessage(Object object) 这两个有什么区别 微信小程序中 wx.hideLoading() 后调用 wx.showToast()的问题 Windows 中启动 Nginx的常用命令 CSS进阶技巧:字体渐变、描边、倒影与渐变色描边全解析 netCore 中各DLL引用了 SkiaSharp.dll的问题 unity中预制体解包 在 Unity 中,Time.timeScale实现游戏暂停加速等 微信小程序中关联微信支付 unity中的 Navigation AI使用 C#中TaskCompletionSource(简称 TCS)学习 Unity 编辑器 中,快捷键 Ctrl + Shift + F 的功能 unity中按下 F键,让物体聚焦 微信中进入定页面的,判断时通过扫二维码进入的,还是点小程序名称进入的 MYSQL中从JSON字符串中提取指定的值 Unity2022中创建动画 Animation(旧方法) Unity 中区别,public 和 [SerializeField] Unity中 onCollisionEnter2D与OnTriggerEnter2D 区别
div display flex 如何出现横向滚动条
华安 · 2025-11-12 · via 博客园 - 华安

在使用 display: flex 布局时,如果希望内容超出容器宽度时出现横向滚动条,可以通过以下步骤实现:

1. ‌设置父容器为 Flex 容器‌

将父容器的 display 属性设置为 flex,并限制其宽度(例如,设置 width 或 max-width)。

2. ‌允许 Flex 容器横向滚动‌

通过 overflow-x: auto 或 overflow-x: scroll 启用横向滚动条。

3. ‌确保子元素总宽度超出父容器‌

子元素的宽度总和需要超过父容器的宽度,才能触发滚动条的出现。

示例代码

<div class="flex-container">
  <div class="flex-item">Item 1</div>
  <div class="flex-item">Item 2</div>
  <div class="flex-item">Item 3</div>
  <div class="flex-item">Item 4</div>
  <div class="flex-item">Item 5</div>
</div>

<style>
  .flex-container {
    display: flex;
    width: 300px; /* 限制父容器宽度 */
    overflow-x: auto; /* 启用横向滚动条 */
    white-space: nowrap; /* 防止子元素换行(可选) */
    border: 1px solid #ccc; /* 可选:添加边框以便观察 */
  }

  .flex-item {
    flex: 0 0 auto; /* 防止子元素伸缩或收缩 */
    width: 200px; /* 每个子元素的宽度 */
    height: 100px;
    margin-right: 10px; /* 可选:子元素之间的间距 */
    background-color: lightblue;
    display: flex;
    align-items: center;
    justify-content: center;
  }
</style>

关键点说明

  1. ‌父容器设置‌:

    • display: flex:启用 Flex 布局。
    • width: 300px:限制父容器的宽度,使其小于子元素的总宽度。
    • overflow-x: auto:当内容超出容器宽度时,自动显示横向滚动条。
  2. ‌子元素设置‌:

    • flex: 0 0 auto防止子元素伸缩或收缩,保持固定宽度,这个很重要,我就是没加这个,一直不出现滚动条,子元素即使我强制设置了宽度,也会被收缩。
    • width: 200px:每个子元素的宽度,确保总宽度超出父容器。
  3. ‌可选设置‌:

    • white-space: nowrap:防止子元素中的文本换行(如果子元素包含文本)。
    • margin-right:为子元素添加间距,使布局更美观。
    • 效果

      当子元素的总宽度超过父容器的宽度时,父容器会自动显示横向滚动条,用户可以通过滚动查看所有子元素。

      注意事项

      • 如果子元素的总宽度未超出父容器宽度,滚动条不会出现。
      • 可以使用 overflow-x: scroll 强制显示滚动条(即使内容未超出)。
      • 在移动端或响应式设计中,可能需要结合媒体查询调整布局。