前言

最难的果然还是css,工作中经常使用display:flex; 让多个竖直排列的元素变成横向排列,直到今天才发现display:flex; 会导致子标签的宽度失效。

正文

问题

<div class="outer"><div class="inner">1</div><div class="inner">2</div><div class="inner">3</div>
</div>.outer {width: 300px;border: 1px solid black;overflow-x: auto;display: flex;.inner {width: 200px;height: 20px;background: pink;margin-right: 10px;}
}

按理说,父元素应该会出现横向滚动条,但实际结果如下:

原因

百度查了一下,原因如下:

父元素设置了display:flex,那么所有的子标签都会默认加上flex:0 1 auto;其中1 就是 flex中的 flex-shrink 属性,表示开启了元素的收缩功能,所以子元素宽度才会失效。

flex 属性是 flex-grow、flex-shrink 和 flex-basis 属性的简写属性。
flex的默认值就是 0 1 auto

解决

方法1

flex: 0 0 auto;
width: 200px;

方法2

flex: 0 0 200px;

方法3

flex-shrink: 0;
width: 200px;

方法4

min-width:200px;

效果

推荐使用方法3

css display:flex 弹性布局 子标签设置宽度无效的问题相关推荐

  1. 当display:flex弹性布局与position:absolute/fixed定位一起用,会出现的问题与解决方法

    首先放出使用场景的截图: 使用场景 导航栏固定定位 导航栏内,平均分为四块,为了适配各种移动设备,使用了flex布局. 与此同时,产品经理要求:页面上滚越过封面图时,导航栏变为固定定位,浮在页面顶部. ...

  2. HTML中用弹性布局设置位置,HTML的flex弹性布局

    flex 布局概述 1. flex 是什么flex 是 Flexible Box 的缩写,意为弹性布局 flex 2009 年就已出现,浏览器兼容性很好,请放心使用 2. flex 解决了什么问题块元 ...

  3. CSS——flex弹性布局

    创建表单,加入常用的表单控件 <form><input type="email" name='email'><button type="su ...

  4. 移动web现状、viewport视口、二倍图、移动web开发主流方案、布局技术选型(流式布局、flex弹性布局、less+rem+媒体查询布局、混合布局、媒体查询、bootstrap)

    移动端web现状: 移动端常见浏览器:UC浏览器,QQ浏览器,Opera浏览器,百度手机浏览器,360安全浏览器,谷歌浏览器,搜狗手机浏览器,猎豹浏览器及杂牌浏览器.移动端常见的浏览器都是基于webk ...

  5. html+css:display:flex属性

    博客 </a></li><li class="" title="高价值源码课程分享"><a data-report-c ...

  6. 页面布局 - flex弹性布局

    flex弹性布局 html: <!DOCTYPE html> <html><head><meta charset="utf-8" /> ...

  7. 移动端基础(2)—— flex弹性布局

    一.flex弹性布局 flexible-box-layout 弹性盒式模型,它能更加高效的控制元素的对齐.排列,更重要的是能够自动计算布局内元素的尺寸,无论这个元素的尺寸是固定的还是动态的. 父元素( ...

  8. CSS3 Flex 弹性布局用法详解

    什么是Flex弹性布局 Flex是Flexible Box的简称,意为弹性布局,顾名思义,在网页布局时,他可以给我们提供更多的灵活性. 说明: 1.flex是display的一个属性值.与之相当应的还 ...

  9. 微信小程序开发(三)——IE盒子,Flex弹性布局,色子六面

    目录 ie盒子模型 Flex弹性布局 三大特性: 块元素和内联元素的转换 background-image背景图片 尺寸单位rpx 定位 练习:色子的六面 ie盒子模型 盒子模型是css中一个重要的概 ...

最新文章

  1. mybatis 使用resultMap实现数据库的操作
  2. python 多种图片数据格式互转
  3. mysql数据库表的连接查询_mysql数据库多表连接查询问题
  4. 判断无线网卡是否支持5GHz频段
  5. 笔记合并_.NET Core开发实战(第23课:静态文件中间件:前后端分离开发合并部署骚操作)学习笔记(上)...
  6. 搭建网络及服务器系统,网络服务器搭建与管理
  7. Linux 笔记 - 第十八章 Linux 集群之(三)Keepalived+LVS 高可用负载均衡集群
  8. Oracle监听注册和sqlnet,Oracle监听的动态注册与静态注册
  9. Android自定义RadioButton
  10. 【Java中级篇】使用itextpdf生成PDF
  11. 谈谈Spring开发框架
  12. asp.net中的post和get请求操作
  13. 教你用1行Python代码制作动态二维码
  14. 95-36-032-ChannelHandler-SimpleChannelInboundHandler
  15. mysql sql归类_带有归类SQL强制转换SQL Server归类介绍
  16. SVN 错误中文对照
  17. Vuforia AR引擎开发技术博客学习汇总
  18. 打造Linux三流娱乐环境,二流办公环境,一流Java开发环境
  19. 个人陈述怎么写计算机专业自招,自主招生个人陈述范文
  20. Ubuntu 商店无法安装应用

热门文章

  1. 花钱购买制作精美的留言板或者留言板设计的HTML + CSS + DIV 源码
  2. 在荷兰男人为了公益涂指甲油 为了响应一位绝症男孩的愿望
  3. Xeon Phi协处理器相关资料
  4. 软件显示 损坏的图像
  5. 【阿里云天池】实战:街景符号识别(数据读取与数据扩增)
  6. 一分钟图情论文:《关于智慧图书馆基本理论的思考》
  7. Mac如何正确的卸载程序
  8. 网易云音乐可爱的tabbar
  9. Unity(3)-“英雄无敌”敌人+敌人生成器模块
  10. 使用Anaconda安装pytorch和tesorflow以及相关环境配置