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

CSS flex笔记

flex布局因为是比较新的标准,所以在设计之初就着重解决了纵向排布的问题。而之前的css布局方式,对于纵向布局做的比较少。诸如纵向居中对齐、纵向铺满都是需要花费不少力气来处理。...在弹性布局模型中,弹性容器的子元素可以在任何方向上排布,也可以“弹性伸缩”其尺寸,既可以增加尺寸以填满未使用的空间,也可以收缩尺寸以避免父元素溢出。子元素的水平对齐和垂直对齐都能很方便的进行操控。...*/ align-items 元素在交叉轴上的对齐形式 /* align-items 交叉轴对齐形式 flex-start:交叉轴的起点对齐。...增长系数(权重) 可以理解为自由计算的bootstrap中 col-机制,flex box的grow越大,在进行分配时获得的比例越大 https://developer.mozilla.org...收缩系数 类似于flex-grow,但是shrink系数只在容器宽度不够全部元素默认宽度的时候才会发生 数字越大,收缩的时候越明显 https://developer.mozilla.org

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

    CSS3之flex兼容写法

    很久不写博文,之前的长时间不上都关闭了,但随着工作时间长越来越长,对知识的积累和总结还真的是很重要的。所以奉劝码农们每天都还是要抽出来一点时间总结点东西,以后对你受益匪浅!!...,可是在安卓4.3以后版本里。...||  ]    /*flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto,*/     align-self: auto...ms-flex: 1       /* IE 10 */               flex: 1;         /* NEW, Spec - Opera 12.1, Firefox 20+ */   } 我要说的主要部分来了...这种兼容写法不一定起效的。尤其是在底版本安卓系统中。因为什么呢?因为所有都是向下兼容的,所以写法的顺序一定要写好了才起作用。就是把旧语法写在底下,个别不兼容的移动设置才会识别,哪些是旧的语法,你懂的。

    1.6K10

    30分钟彻底弄懂flex布局

    因此,下面会通过我梳理的一个脉络去理解flex布局,包括不同属性的异同以及一些容易造成误解的细节点,彻底弄懂flex布局。...而flex-grow则决定了要不要分配以及各个分配多少。 (1)在flex布局中,容器剩余宽度默认是不进行分配的,也就是所有弹性元素的flex-grow都为0。...flex-basis设置的是元素在主轴上的初始尺寸,所谓的初始尺寸就是元素在flex-grow和flex-shrink生效前的尺寸。 1....flex-basis是指定初始尺寸,当设置为0时(绝对弹性元素),此时相当于告诉flex-grow和flex-shrink在伸缩的时候不需要考虑我的尺寸;相反当设置为auto时(相对弹性元素),此时则需要在伸缩时将元素尺寸纳入考虑...交叉轴上的单行对齐 align-items 默认值是stretch,当元素没有设置具体尺寸时会将容器在交叉轴方向撑满。

    11.1K325

    这次带大家彻底搞懂 flex 布局

    对于上下方向,对齐上边;对于左右方向,对齐左侧; flex-end:对齐交叉轴终点位置; center:居中对齐; stretch:拉伸,在交叉轴的方向拉伸,当然前提是没有设置对应的固定宽或高; baseline...即使 item 设置了 width 也会被压缩,如果你不希望被压缩,可以使用 max-width,倒是会出现溢出的效果; wrap:换行,当位置不够时,自动换行; wrap-reverse:反向换行,第一行在最下面...order 可以实现不使用 JavaScript 就可以改变 item 的位置的效果,不过我实际开发中用的还是相当少。 flex-grow flex-grow 用于设置 item 放大的权重。...对于空间不足的情况,flex 不希望 item 溢出,此时就会根据 flex-shrink 来分配不足空间的比例。...:定义 item 自己在交叉轴上的对齐方式,默认值继承自父元素的 align-items; order:顺序,越小越靠前,默认值为 1; flex-grow:容器有剩余空间时,额外占据空间的尺寸权重;

    1.3K20

    前端入门5-CSS弹性布局flex声明正文-弹性布局flex

    所以要能够正确的使用该属性来控制 items 在主轴方向的对齐方式,那么就需要注意 item 中会影响布局空白的属性,如 flex-grow,flex-basis 这些的使用。...说白点,就是行首元素和末尾元素的周边有类型 margin 值存在。 剩余的属性值不介绍了,因为我也还没有搞懂它们的含义和应用场景。 示例: ?...网上有种翻译,说这个属性是用于轴对齐,我不是很理解,我自己粗俗的分两种情况理解: 当需要进行 start, center, end 这些排版时,是将这些多行的 items 都看成一个整体,然后进行交叉轴方向上的排版控制...flex-grow 语法格式: flex-grow: 用于设置 item 在主轴方向上的拉伸因子,即如果 flex 容器还有剩余空间,会按照各 item 设置的拉伸因子比例关系分配。...拥有相同 order 属性值的元素按照它们在源代码中出现的顺序进行布局。默认值为 0,可设置负值,排序将在默认不设置的 item 前面。 示例: ?

    1.2K20

    Flexbox 布局的最简单表单

    三年前,我写过 Flexbox 的介绍(上,下),但是有些地方写得不清楚。今天,我看到一篇教程,才意识到一个最简单的表单,就可以解释 Flexbox,而且内容还很实用。...(1)两个控件元素的宽度没有发生变化,因为弹性布局默认不改变项目的宽度。 (2)弹性布局默认左对齐,所以两个控件会从行首开始排列。...如果我们希望,输入框占据当前行的所有剩余宽度,只需要指定输入框的flex-grow属性为1。 input { flex-grow: 1; } ?...上图中,按钮的宽度没变,但是输入框变宽了,等于当前行的宽度减去按钮的宽度。 flex-grow属性默认等于0,即使用本来的宽度,不拉伸。等于1时,就表示该项目宽度拉伸,占据当前行的所有剩余宽度。...flex-start:顶边对齐,高度不拉伸 flex-end:底边对齐,高度不拉伸 center:居中,高度不拉伸 stretch:默认值,高度自动拉伸 (完)

    1.6K20

    前端CSS Flex布局8大重难点知识,收藏起来吧

    分别设置固定宽 width:200px 和 width:250px; 子项.middle 不设置宽,添加 flex-grow:1;// 占满所有剩余空间 3、Flex 实现元素水平垂直居中 方法一...和.right 两端对齐 justify-content: space-between;// 两端对齐 display: flex; // 弹性布局 在.right 中构建两个子元素.item1 和....为什么是添加 n-2 个 span 元素呢 ? 当最后一行只有 1 个子元素时,他会默认靠左,不用处理 当最后一行子元素正好时,我们就不用关心这个问题。...: space-between; 使三个色子,两端对齐 第二个 2 色子加上 align-self: center; 控制自身垂直居中对齐 第三个 3 色子加上:align-self: flex-end...; 单独控制自身垂直底部对齐 当然 Flex 布局已经到了 CSS 阶段的后期阶段了,如果你没有学过 CSS,或者掌握不牢固,建议可以从开始学习下 CSS。

    1.8K10

    css3 Flex布局 学习

    4. justify-content:定义了项目在主轴的对齐方式。...flex-end:交叉轴的终点对齐 ? center:交叉轴的中点对齐 ? baseline: 项目的第一行文字的基线对齐 ? 以文字的底部为主,仔细看图可以理解。...值得注意的是,虽然在每条轴线上项目的默认值也为 stretch,但是由于我每个项目我都设置了高度,所以它并没有撑开整个容器。如果项目不设置高度的话就会变成下面这样: ?...这个我在前面也有提到(align-items),这里重点还是理解三条轴线会平分垂直轴上的空间。 flex-start:轴线全部在交叉轴上的起点对齐 ?...flex-end:轴线全部在交叉轴上的终点对齐 ? center:轴线全部在交叉轴上的中间对齐 ? space-between:轴线两端对齐,之间的间隔相等,即剩余空间等分成间隙。 ?

    1.5K40

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

    但是这样就不是我想要的了,我想要其换行怎么办?...子元素宽度不拉伸*/ } .third{ flex-grow: 2;/*third子元素宽度拉伸,拉伸的宽度占据父元素剩余空间的三分之二*/ } 3.2、flex-shrink 同 flex-grow...语法: align-items: center; // 设置子元素(伸缩项)在侧轴方向上的对齐方式 center:设置在侧轴方向上居中对齐 flex-start:设置在侧轴方向上顶对齐 flex:设置在侧轴方向上底对齐...(在子元素未设置高度时有效) baseline:以子元素中文本基线对齐来来对齐*/ 问题: align-items 既然写在父元素中,是对所有子元素在侧轴方向的对齐方式进行设置。...那么,能不能单独设置某个子元素在侧轴的对齐方式呢? 5、align-self (子元素使用) 单独设置某个子元素在侧轴的对齐方式,属性值和 align-items 相同。

    4K10

    flexbox布局指南

    容器或伸缩项在主轴方向的尺寸就是主尺寸,在交叉轴方向的尺寸是交叉尺寸。例如,最常见的: ?...两轴方向受writing-mode影响,比如日文与英文在相同的flex属性下效果不同,具体示例见Example 5 伸缩项属性 flex-grow、flex-shrink、flex、flex-basis...值,针对单伸缩项定义其交叉轴对齐方式,值含义与align-items相同 order: 整数:默认0,定义伸缩项在伸缩容器中的出现顺序(允许与源文档顺序不同),伸缩项按order值从低到高排列,相等的就按文档序...也就是说,在听觉媒体上,仍然是按文档序读出的,所以该属性可能会带来可访问性方面的问题 二.对齐方式 主轴方向的对齐方式,由容器的justify-content控制: ?...实际上,真正难以驾驭的恰恰是那些之前很容易实现的场景 P.S.为什么非得用felxbox布局?结合使用,各取所长不好吗?

    1.1K40

    【Web前端】CSS传统布局方法(补充)

    比如,CSS Grid可以轻松控制网格项之间的间距,Flexbox可以让元素在容器中均匀分布或对齐。...六、第三方网格系统 在实际项目中,很多人喜欢使用第三方网格系统来加速开发,如 Bootstrap、Foundation 等。...都使用​​flexbox​​作为底层布局机制,提供灵活的列对齐和排序。 不同之处: 断点设置:Bootstrap的断点固定且命名简单,而Foundation允许用户自定义断点。...语法简洁度:Foundation的网格语法相对更简洁,例如它使用​​cell​​代替Bootstrap的​​col​​。 定制性:Foundation更灵活,尤其在定制断点和控制列间距方面表现出色。...兼容性:Bootstrap在社区和第三方支持上稍显优势,因为它的用户和扩展库更多。 两者都非常强大,选择使用哪个框架通常取决于项目需求以及开发团队的偏好。

    8610

    总结一下CSS3中的Flex布局语法

    因此本篇博客将以这篇教程为基础(所以不可避免地在文章结构与部分内容上可能会与教程有很大部分相似),以我自己的理解重新总结一遍 Flex 布局,以方便我自己查阅。...在 Flex 容器中,默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)(不知道为什么会起这么奇怪的名字)。...3.4、justify-content justify-content 属性定义了子元素在主轴上的对齐方式(比如靠左/右/上/下、居中等等)。...| center | space-between | space-around; } 3.5、align-items align-items 属性定义子元素在交叉轴上的对齐方式(与 justify-content...注意:当子元素的宽度/高度(width/height)属性与 flex-grow 同时存在时,元素最终的宽度/高度将由 flex-grow 属性来决定。

    42110

    寒假提升 | Day10 CSS 第八部分

    清除浮动的方法 事实上我们有很多方法可以清除浮动 方法一: 给父元素设置固定高度 扩展性不好(不推荐) 方法二: 在父元素最后增加一个空的块级子元素,并且让它设置clear: both 会增加很多无意义的空标签...; 在PC端也几乎已经完全普及和使用, 只有非常少数的网站依然在用浮动来布局; 为什么需要flex布局呢?...顺序任何, 并且都可以省略; justify-content justify-content 决定了 flex items 在 main axis 上的对齐方式 flex-start(默认值):与 main...align-items 决定了 flex items 在 cross axis 上的对齐方式 normal:在弹性布局中,效果和stretch一样 stretch:当 flex items 在 cross...center:居中对齐 baseline:与基准线对齐 align-content align-content 决定了多行 flex items 在 cross axis 上的对齐方式,用法与 justify-content

    1.2K20

    Flexbox在表单布局的应用

    (1)两个控件元素的宽度没有发生变化,因为弹性布局默认不改变项目的宽度。 (2)弹性布局默认左对齐,所以两个控件会从行首开始排列。...如果我们希望,输入框占据当前行的所有剩余宽度,只需要指定输入框的flex-grow属性为1。 input { flex-grow: 1; } ?...上图中,按钮的宽度没变,但是输入框变宽了,等于当前行的宽度减去按钮的宽度。 flex-grow属性默认等于0,即使用本来的宽度,不拉伸。等于1时,就表示该项目宽度拉伸,占据当前行的所有剩余宽度。...flex-start:顶边对齐,高度不拉伸 flex-end:底边对齐,高度不拉伸 center:居中,高度不拉伸 stretch:默认值,高度自动拉伸 如果项目很多,一个个地设置align-self属性就很麻烦...这时,可以在容器元素(本例为表单)设置align-items属性,它的值被所有子项目的align-self属性继承。

    1K20
    领券