zoukankan      html  css  js  c++  java
  • CSS-06 弹性布局

    1 弹性布局:
    弹性布局:一种布局方式,主要解决某个元素中子元素的布局方式
    父元素设置了display:flex,让所有子元素变成弹性布局

    弹性布局的相关概念
    (1)容器:设置了display:flex的元素,称为容器;容器本身不是弹性布局.
    (2)项目:真正发生弹性布局的子元素们称为项目
    (3)主轴(4条):项目们排列方向的一条轴
    项目们如果哪找横向排列,主轴是x轴.
    项目们如果按照纵向排列,主轴是y轴
    项目们在主轴上的排列方式,称为主轴的起点和终点.
    (4)交叉轴(2条):永远与主轴垂直的轴,项目们在交叉轴上的排列方式称为交叉轴的起点和终点.

    语法:将一个元素设置display:flex.它本身就变成了弹性容器,他的儿子们就变成了弹性项目,
    display:flex--将块级元素设置为容器
    display:inline-flex--将行内元素设置为容器
    容器的text-align失效,
    项目的float/clear/vertical-align全部生效

    容器的样式属性
    ①主轴的方向:
    flex-direction:row/row-reverse(x轴/x轴翻转)
    flex-direction:column/column-reverse(y轴/y轴翻转)
    ②项目的换行
    主轴方向放不下所有项目要不要换行
    flex-wrap:nowrap(默认)/wrap(正常换行)/wrap-reverse(换行并翻转)
    ③主轴方向和换行的简写
    flex-flow:direction wrap;
    ④项目们在主轴上的排列方式
    justify-content:flex-start(默认,主轴起点对齐)/flex-end(主轴终点对齐)/center(主轴中心对齐)/space-around(每个外边距相同)/space-between(两端对齐,两端无空白)
    ⑤项目们在交叉轴上的排列方式
    align-items:flex-start(默认,交叉轴起点对齐)/flex-end(交叉轴终点对齐)/center(交叉轴中心)/stretch(项目在交叉轴上没有尺寸,充满交叉轴)

    项目的样式属性
    作用在某一个项目上,不影响其他项目
    ①设置项目在主轴上的排列顺序
    order:无单位数字,值越小,越靠近起点
    ②flex-grow:
    如果容器在株洲方向,有剩余空间,项目会变大,设置数字越大,变大的越快
    无单位数字,默认为0
    ③flex-shrink:如果容器在主轴方向,空间不够时,项目会缩小,设置的数字越大,缩小越快
    无单位整数,默认值为1
    与flex-wrap:wrap冲突
    ④单独设置某一个项目的交叉轴对齐方式
    align-self:flex-start/flex-end/center/stretch/auto(使用容器定义的align-items的值)

  • 相关阅读:
    Chrome Extension 扩展程序 小白入门
    gulp 打包报错:ReferenceError: internalBinding is not defined
    error in static/js/xxx.js from UglifyJs Unpected token: punc() [static/js/xxx.js]
    ES6-
    浏览器的渲染原理(转载)
    nodeType、nodeName和nodeValue
    浏览器 HTTP 协议缓存机制详解
    JS函数的上下文环境
    ready和onload的区别
    自定义事件
  • 原文地址:https://www.cnblogs.com/codexlx/p/12461821.html
Copyright © 2011-2022 走看看