首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一篇文章搞定多布局--等宽,等高,自适应

flex 又遇到flex了,用flex做这种布局太简单了,直接父级设置display: flex, 左级定宽,右级设置flex:1就行了,如果要间距,可以直接用margin。...假如父级元素总宽度为500px, 元素A, B, C三个元素flex-grow分别为1, 2, 2,那他们宽度比例为1:2:2,三个元素最终宽度为100px, 200px, 200px; flex-shrink...等高 等高布局要实现就是当一高度撑高时,另一也会跟着撑高。 等高:table 又是table,表格一行里面不同单元格天生就是等高。...padding-box: 背景裁剪到内边距框。 content-box: 背景裁剪到内容框。 等高flex 万能flex又来了,也很简单,跟前面定宽+自适应解决方案是一样。...这样做虽然左右元素看起来是一样高,但是调试可以发现,他们高度已经加了9999px,远远超过父容器了。这并不是真正意义上等高,真正意义上等高还是要用前面两种方案。

3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    CSS 基础系列:常见布局方式

    ,且正是为了防止盖住,右元素宽度才会由默认撑满屏幕变为撑满剩余部分。...布局: 设置父盒子为弹性盒后,元素默认成一行显示,之后设置右元素 flex:1。...4.等高布局 等高布局是指多个子元素在父元素中高度相等布局方式。 4.1 正 padding + 负 margin: 该方法可以解决圣杯布局各元素高度不等缺点。...4.2 利用背景图片: 这种方法是我们实现等高最早使用一种方法,就是使用背景图片,在元素上使用这个背景图进行Y轴铺放,从而实现一种等高假象。...此时弹性子元素 align-items 属性默认值是 stretch,也就是在 y 轴上将所有元素拉伸为同一高度,从而达到等高布局。

    1.8K20

    CSS布局解决方案(全屏布局)

    布局 定宽+自适应 1)使用float+overflow (1)原理、用法 原理:通过将左边框脱离文本流,设置右边规定当内容溢出元素框时发生事情以达到多布局。...以达到多布局,设置父框宽度100%,给左框子元素一个固定宽度从而达到自适应。...用法:将父框设置为display: flex,再设置flex: 1,最后设置框与间距margin-left。...定宽+自适应+两块高度一样高 1)使用float (1)原理、用法 原理:通过过分加大左右高度,辅助超出隐藏,以达到视觉上等高。...,不是真正意义上等高 2)使用table (1)原理、用法 原理:将父框转化为tabel,将框转化为tabel-cell布局,以达到定宽+自适应+两块高度一样高。

    1.8K40

    CSS布局(二)

    CSS布局(二) 等高布局 等高布局,顾名思义,就是指元素在父元素中高度相等布局。 开始之前,先看一个情境。...padding-bottom正值+ margin-bottom负值 先给元素一个非常大 padding-bottom 然后在给元素添加同样大小 margin-bottom负值 最后父元素设置 overflow...,即上面第一个元素高度 再添加 margin-bottom,值为 padding-bottom负值,就会让父元素收缩成只有最高元素高度 flex布局 因为flex布局,项目默认会拉伸为父元素高度...,且不为 auto,那么此时用flex布局就不能实现等高布局 main { display: flex; color: #eee; } main>div { width: 300px; }...布局、grid布局真nb 参考链接: 常用等高布局收藏 css实现上下固定中间自适应布局 实现粘连布局

    98030

    一次性把所有普通和经典网页布局讲得通通透透,多图预警,建议收藏

    } 简单地说,在容器上显式设置了display值为flex或inline-flex,该容器所有元素高度都相等,因为容器align-items默认值为stretch。...项目 或 Grid项目的元素高度和容器高度相同。...__container::after { content: ""; display: flex; flex: 0 1 32vw; } 注意,伪元素flex-basis建议设置和卡片...: 面对这样场景,我们需要给Flex容器添加额外空标签元素: 占位符元素数量 = 每行最大数 - 2 但是gap属性出现之后,要实现这样效果就不难了: body { padding:...其实文章提到效果,比如水平垂直居中、等高布局、平均分布和 Sticky Footer 等,在 CSS 中一直有多种解决方案,只不过随着 CSS Flexbox 布局模块和 CSS Grid 布局模块到来

    5.8K10

    Html和CSS布局技巧(转)

    :兼容性好; 不足:需要同时设置元素和父元素 使用margin:0 auto来实现 .child{width:200px;margin:0 auto;} 优点:兼容性好 缺点: 需要指定宽度 使用...实现 .parent{display:flex;justify-content:center;align-items:center;} 多布局 左定宽,右自适应 该布局方式非常常见,适用于定宽一侧常为导航...,IE6不支持,左侧left设置margin-left当作left与right之间边距,右侧利用overflow:hidden 进行形成bfc模式 如果我们需要将两设置为等高,可以用下述方法将“背景...;} 实用flex实现 .parent{display:flex;} .left{flex:1;} .right{width:100px;} 两定宽,一自适应 基本html结构为父容器为parent...{display:flex;} .right{flex:1;} 多等分布局 多等分布局常出现在内容中,多数为功能,同阶级内容并排显示等。

    4.8K20

    前端主流布局方法

    淘宝移动端应用实例 浮动 样式讲解 当元素浮动时,会脱离文档流,根据float值向左或向右移动,直到它外边界碰到父元素内边界或另一个浮动元素外边界为止,是CSS布局中实现左右布局一种方式。...弹性盒子是一种用于按行或按布局元素一维布局方法。元素可以膨胀以填充额外空间,收缩以适应更小空间。 Tips / 提示 通过给父盒子添加 flex 属性,来控制盒子位置和排列方式。...1 默认值,表示当元素宽度超出flex容器时,将其宽度收缩至父元素100% 0.5 宽度减少父元素50% 0 不对flex容器中元素宽度进行收缩 大于1 还是宽度收缩至父元素,与1效果相同...Flex子项常用布局方式 等高布局 flex元素默认高度就会与父元素等高。...: flex; align-items: center; justify-content: center } 1 2 3 4 5 这个时候会发现,多出来两个元素挤出了第一

    2.2K30

    「资深前端工程师总结」前端面试知识点大全——html篇

    ; } 只需设置父节点属性,无需设置元素 flex有兼容性问题 垂直居中 垂直居中:vertical-align:middle; 父元素高度不确定文本,图片,块级元素竖直居中:给父元素设置相同上下边距实现...: 20px; } .right { flex: 1; } 低版本浏览器兼容问题 性能问题,只适合小范围布局 我们在学会一定宽,一自适应布局后也可以方便实现 多定宽,一自适应...; padding-left: 20px; } 等高布局 1)、table table 特性为每等宽,每行等高可以用于解决此需求 <div...容器包括外层父容器和内层容器,轴包括主轴和交叉轴 父容器: 设置容器沿主轴如何排列:justify-content justify-content: flex-start | flex-end...flex 即弹性,会自动填充剩余空间,容器伸缩比例由 flex属性确定。 单独设置容器如何沿交叉轴排列:align-self 如果子容器和父容器同时设置了该值,以容器为准。

    1.9K31

    一文搞定各类前端常见布局方式

    display: table 设置当前元素display: table-cell 设置当前元素为 ,此时元素将作为单元格内容,支持 vertical-alignvertical-align...三布局&圣杯布局&双飞翼布局图片圣杯布局和双飞翼布局是指三行三布局,其中中间行中间元素自适应,重点在于第二行实现。...等分布局(栅格布局)等分布局指一行分成若干宽度相等。比如 bootstrap 会将一行分为 12 。...等高布局等高布局是指一行中每高度相同布局。7.1 display(table)利用表格单元格默认等高特性,轻松实现等高布局。...在元素上设置 order、align-self 、flex-grow、flex-shrink、flex-basis 属性实现排序、重写元素align-items交叉轴对齐方式、空间分配等。

    1.7K30

    前端面试(1)H5+css

    阻止元素浮动元素覆盖和高度坍塌 阻止浮动元素造成父级元素高度坍塌问题和遮挡其他元素问题 高度塌陷问题,这时就可以用 BFC 来清除浮动了。...圣杯布局 需求: 1.两边固定,中间自适应; 2.先加载 middle 内容; 3.三等高布局; middle...display: flex; justify-content: center; //元素水平居中 align-items: center; //元素垂直居中 /* aa只要三句话就可以实现不定宽高水平垂直居中...table(非必须),使用百分比时使用*/ display: table; } .inner { display: table-cell; /*控制元素垂直居中*/ text-align...结构伪类选择器: 选择符号 含义 相同点 E:first-child 匹配父元素第一个元素 E 带有 child,以 E 元素元素为参考 E:last-child 匹配父元素最后一个元素

    1.3K20

    CSS布局解决方案(下)

    前端布局非常重要一环就是页面框架搭建,也是最基础一环。上一篇推送为大家总结了居中布局和多布局,今天为大家讲解一下等分布局和全屏布局。...用法:先将父框修正框设置为margin-left: -*px,再设置父框display: table、width:100%、table-layout: fixed,设置display: table-cell...用法:将父框设置为display: flex,再设置flex: 1,最后设置框与间距margin-left。...(2)代码实例 (3)优缺点 优点:代码量少,与块数无关 缺点:兼容性存在一定问题 定宽+自适应+两块高度一样高 1)使用float (1)原理、用法 原理:通过过分加大左右高度,辅助超出隐藏,以达到视觉上等高...(2)代码实例 ( 3 )优缺点 优点:兼容性好 缺点:伪等高,不是真正意义上等高 2)使用table (1)原理、用法 原理:将父框转化为tabel,将框转化为tabel-cell布局,以达到定宽

    64470

    display值及作用

    display值及作用 display属性可以设置元素内部和外部显示类型,元素外部显示类型将决定该元素在流式布局中表现,例如块级或内联元素元素内部显示类型可以控制其元素布局,例如grid...display: none display: none;是CSS1规范,无兼容性问题,该属性值表示此元素不会被显示,依照词义是真正隐藏元素,使用这个属性,隐藏元素不占据任何空间,用户交互操作例如点击事件都不会生效...,读屏软件也不会读到元素内容,这个元素任何元素也会同时隐藏。...display: block display: block;是CSS1规范,无兼容性问题,该属性值表示此元素将显示为块级元素,此元素前后会带有换行符,元素独占一行,封闭后自动换行,默认宽度为100%,可以指定宽度和高度...display: table display: table;是CSS2规范,兼容性良好,该属性值表示此元素会作为块级表格来显示,类似,表格前后带有换行符。

    1.8K30

    常见布局实现

    本章主要介绍常见布局实现,包括: ---- [1] 两布局 [2] 三布局 [3] 弹性 (Flex) 布局 ---- [1] 两布局 固定宽度(设置 absolute、float),主自适应屏幕...通过 负margin 正确定位 aside * container 宽度值设为 100% * main margin-left 消除 aside 覆盖部分...通过 负margin 正确定位 side * container 宽度值设为 100% * main margin-left 消除 side 覆盖部分...三布局.png [3] 弹性 (Flex) 布局 弹性布局:采用 Flex 布局元素,称为 Flex 容器(flex container),它所有元素自动成为容器成员,称为 Flex 项目(flex...: 1px solid black; display: flex; /* 使用弹性布局 */ } #main div { flex: 1; /* 所有弹性盒模型对象元素都有相同长度

    82460

    「译」Flexbox 基本原理

    它是一种布局模型,允许我们方便地控制 html 元素之间空间分布和对齐 [2]。 Flexbox 一次只能控制一个维度定位(行或者)。二维定位控制需要依靠网格布局 [2]。...弹性项目 当为 .containerdiv 设置 display: flex 时,所有的直接 div 将成为弹性项目,并且获得新行为 [2]: 由于 flex-direction 默认值为 row,...弹性容器 display: flex 使容器拓展整个可用宽度;与之相对display: inline-flex 使容器宽度塌陷至与内容宽度相等。 ?...通过 flex-direction: column 反转主轴,容纳不下元素将会换行至另一,同时剩余空间会被平分 [1]。 ?...通过给项目设置 width: 33.3333%,容器能够完全填满。 ? 但是当你让 div 之间有空隙时,它们将不会像预期那样进行换行: ?

    2K30

    从零开始学 Web 之 CSS3(七)多布局,伸缩布局

    重要属性: display: flex; /*justify-content:设置或检索弹性盒子元素在主轴(横轴)方向上对齐方式 。...3、flex属性(元素使用) 3.1、flex-grow flow-grow:可以来扩展元素宽度:设置当前元素应该占据剩余空间比例值,这个比例值是和其他兄弟子元素占据剩余空间平分。...flex-grow 默认值为0。 比例值计算:当前元素 flex-grow 值 / 所有兄弟元素 flex-grow 值和。...元素宽度不拉伸*/ } .third{ flex-grow: 2;/*third元素宽度拉伸,拉伸宽度占据父元素剩余空间三分之二*/ } 3.2、flex-shrink 同 flex-grow...flex: auto:属性值设为auto伸缩项目,会根据主轴自动伸缩以占用所有剩余空间 3.4、flex 应用案例 需求:不管有多少个 li 标签,总是能平分父盒子(因为从服务器获取 li 标签个数可能不是固定

    4K10
    领券