详情参见此篇博客

http://www.w3cplus.com/css/creaet-equal-height-columns

建议掌握方法四、五

其实,利用最新的flex布局

http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html

http://www.ruanyifeng.com/blog/2015/07/flex-examples.html

对于之前盒子模型基于position+display+float 很难实现的特殊布局,诸如居中对齐(justify content属性,主轴上的对齐方式),等高列(align-items:侧轴上的对齐方式)也提供了简洁的解决方案。

Flex相关语法

flex是flexible box的缩写,意即“弹性布局”

1)display:flex 为容器指定flex布局。

2)下面6个属性设置在容器上

flex-direction:row/row-reverse/column/column-reverse; 该属性决定主轴上的排列方向;

flex-wrap:no-wrap/wrap/wrap-reverse;决定如何换行;

flex-flow:常用,是flex-direction和flex-wrap属性的简写形式,默认是row nowrap;

justify-content:flex-start|flex-end|center|space-between|space_around; 定义了项目在主轴上的对齐方式;

align-items:flex-start|flex-end|center|baseline|stretch;定义了项目在交叉轴上如何对齐;

align-content:flex-start|flex-end|center|space-between|space-around|stretch;定义了多行的对齐方式,如果只有一行,那么该属性不起作用。

3)以下6个属性设置在项目上

order:定义项目的排列顺序,数值越小,排列越靠前,默认为0;

flex-grow:定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。

flex-shrink:定义项目的缩小比例,默认为1,即如果空间不够,该项目将缩小。

flex-basis: 定义在分配多余空间以前,项目占据的主轴空间,浏览器根据这个属性,计算主轴是否有多余空间。其默认值为auto,即项目本来大小。

flex:是flex-grow,flex-shrink和flex-basis的简写,默认值为0 1 auto。后两个属性可选

align-self:允许单个项目有与其他项目不同的对齐方式,可覆盖align-items属性。默认为auto,表示继承父元素的align-items属性。

实现多列等高布局_flex布局的更多相关文章

  1. CSS3_伸缩盒模型_弹性布局_等分布局_flex 布局

    伸缩盒模型 CSS3 引入的布局模式 Flexbox 布局 主要思想: 让容器有能力让其子项目能够改变其宽度,高度,以最佳方式填充可用空间. 特点: display: flex;    只能控制其子元 ...

  2. CSS3中flexbox如何实现水平垂直居中和三列等高布局

    最近这些天都在弥补css以及css3的基础知识,在打开网页的时候,发现了火狐默认首页上有这样一个东西.

  3. css设置多列等高布局

    初始时,多个列内容大小不同,高度不同.现在需要设置不同的背景来显示,而且各个列的高度需要保持一致.那么这就需要利用到多列等高布局. 最终需要的效果: 1. 真实等高布局 flex 技术点:弹性盒子布局 ...

  4. 【CSS】 布局之多列等高

    这两天看了不少文章,对于css布局多了一些理解,现在来总结下. 我们来写一个最普遍的Top.Left.Content.Right.Foot布局. 第一步:自然是写一个坯子 <!DOCTYPE H ...

  5. 纯css实现div三列等高布局的最简单方法简化版/也可以多列

    使用正padding和负margin对冲实现多列布局方法 这种方法很简单,就是在所有列中使用正的上.下padding和负的上.下margin,并在所有列外面加上一个容器,并设置overflow:hid ...

  6. CSS技巧 (2) · 多列等高布局

    前言  最近,面试的时候都碰到一些关于利用CSS实现多列等高布局或者一侧宽度固定,另一侧宽度自适应的问题,下面稍微总结一下: 先看一道题目 巧妙的多列等高布局 规定下面的布局,实现多列等高布局,要求两 ...

  7. 正padding负margin实现多列等高布局(转)

    转自: 巧妙运用CSS中的负值 (http://www.webhek.com/post/2345qwerqwer.html) 代码来自: https://codepen.io/Chokcoco/pen ...

  8. JQuery插件:动态列和无间隙网格布局Mason.js

    来源:GBin1.com 在线演示 JavaScript提供很多强有力的方案,解决动态列的网格布局(例如:Pinterest).这些方案很有效,但是,有时候,会造成网格的间隙或粗糙的边缘. Mason ...

  9. 移动开发day2_css预处理器_flex布局

    css预处理器 一种技术,可以提高编写css代码的技术而已. 有3种预处理器常见 less sass stylues less使用流程 编写符合less语法的less文件 使用工具 将less编译成 ...

随机推荐

  1. 5. Java的注释,标识符、标识符的命名规范

      什么是标识符符? 凡是可以由自己命名的地方都称为修饰符. 例: 项目名 ,包名 ,类名 .方法名 2.   命名规范. ①    不可使用java关键字和保留字,但是可以包含关键字和保留字. ②  ...

  2. JS ES7

    指数运算符(幂) ** console.log(3 ** 2); //9 判断数组中包含 Array.prototype.includes(value) var arr1 = [1,2,'a','b' ...

  3. docker 第四篇 网络

    安装docker以后自动添加三种网络方式 bridge: 表示桥接网络 (在本地自动创建一个软交换机) host: 表示让容器使用宿主机的网络名称空间 none: 表示没有网络 不能执行网络通信. 创 ...

  4. 安卓开发之SimpleAdapter的使用

    package com.lidaochen.test; import android.support.v7.app.AppCompatActivity; import android.os.Bundl ...

  5. static成员函数和static成员

    C++的静态成员是和类关联的,它属于某个类,但是不属于某个特定的对象.静态成员变量只存储一份供所有对象共用.所以在所有对象中都可以共享它.使用静态成员变量实现多个对象之间的数据共享不会破坏隐藏的原则, ...

  6. Dart 面向对象 类 方法

    Dart是一门使用类和单继承的面向对象语言,所有的对象都是类的实例,并且所有的类都是Object的子类. 面向对象编程(OOP)的三个基本特征是:封装.继承.多态 封装:封装是对象和类概念的主要特性. ...

  7. os.path:平台独立的文件名管理

    介绍 利用os.path模块中包含的函数,很容易编写代码来处理多个平台上的文件 解析路径 import os.path ''' os.path中的第一组函数可以用来将表示文件名的字符串解析为文件名的各 ...

  8. web开发:jquery高级

    一.jq选择器 二.属性操作 三.jq轮播图 四.样式操作 五.jq动事件 六.jq动画 七.自定义动画 八.jq动画案例 一.jq选择器 - css3语法选择器 ```js$('css3选择器位') ...

  9. iview 如何在表格中给操作图标添加Tooltip文字提示?

    项目需要用到的iview 表格中操作项目有各种各样的图标,而各种各样的图标代表不同的操作,面对新用户可能很懵,那如何给这些图标添加Tooltip文字提示? 废话不多讲,直接看代码: <templ ...

  10. git -C <other-git-repo-path> [git-command] 指定其它路径的仓库 执行命令

    git -C <other-git-repo-path> [git-command] 指定其它路径的仓库 执行命令 注意,-C 要在命令之前 例如: git -C d:/testRepo ...