读文章《Flexbox详解》笔记
文章地址:Flexbox详解
属性摘抄:
flex container :
- display: other values | flex | inline-flex;
- flex-direction: row | row-reverse | column | column-reverse; 主要用来创建主轴,从而定义了伸缩项目放置在伸缩容器的方向。
- flex-wrap: nowrap | wrap | wrap-reverse; 主要用来定义伸缩容器里是单行还是多行显示,侧轴的方向决定了新行堆放的方向。
- flex-flow: <‘flex-direction’> || <‘flex-wrap’>; 这个是“flex-direction”和“flex-wrap”属性的缩写版本。同时定义了伸缩容器的主轴和侧轴。其默认值为“row nowrap”。
- justify-content: flex-start | flex-end | center | space-between | space-around; 这个是用来定义伸缩项目沿着主轴线的对齐方式。当一行上的所有伸缩项目都不能伸缩或可伸缩但是已经达到其最大长度时,这一属性才会对多余的空间进行分配。当项目溢出某一行时,这一属性也会在项目的对齐上施加一些控制。
- align-content: flex-start | flex-end | center | space-between | space-around | stretch; 这个属性主要用来调准伸缩行在伸缩容器里的对齐方式。类似于伸缩项目在主轴上使用“justify-content”一样。
- align-items: flex-start | flex-end | center | baseline | stretch; 伸缩项目在沿着侧轴线的对齐方式。
flex items :
- order: <integer>; 默认情况下(都为0),伸缩项目是按照文档流出现先后顺序排列。然而,“order”属性可以控制伸缩项目在他们的伸缩容器出现的顺序。
- align-self: auto | flex-start | flex-end | center | baseline | stretch; 用来在单独的伸缩项目上覆写默认的对齐方式。
- flex-grow: <number>; / default 0 / 根据需要用来定义伸缩项目的扩展能力。它接受一个不带单位的值做为一个比例。主要用来决定伸缩容器剩余空间按比例应扩展多少空间。
- flex-shrink: <number>; / default 1 / 根据需要用来定义伸缩项目收缩的能力。[注意:负值同样生效。]
- flex-basis: <length> | auto; / default auto / 这个用来设置伸缩基准值,剩余的空间按比率进行伸缩。
- flex: none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ] 这是“flex-grow”、“flex-shrink”和“flex-basis”三个属性的缩写。其中第二个和第三个参数(flex-shrink、flex-basis)是可选参数。默认值为“0 1 auto”。
几个属性运用的例子:
基本的html结构:
<div class="container">
<div>1</div><div>2</div><div>3</div><div>4</div>
</div>
<!-- 重复多个 -->
基本的css样式:
div { padding: 10px 20px; margin: 10px; border-radius: 10px; font-size: 2em; }
.container { background: #eee; float: left; }
.container div { background: #ccc; color: #fff; }
flex-flow:
.container { display: flex; flex-flow: row wrap; width: 200px; }
.container:nth-child(2) { flex-flow: row wrap-reverse; }
.container:nth-child(3) { flex-flow: row-reverse wrap; }
.container:nth-child(4) { flex-flow: row-reverse wrap-reverse; }
align-content:
.container { display: flex; flex-flow: row wrap; width: 200px; height: 300px; }
.container:nth-child(1) { align-content: flex-start; }
.container:nth-child(2) { align-content: center; }
.container:nth-child(3) { align-content: flex-end; }
.container:nth-child(4) { align-content: stretch; }
.container:nth-child(5) { align-content: space-around; }
.container:nth-child(6) { align-content: space-between; }
align-items:
.container { display: flex; flex-flow: row wrap; height: 300px; }
.container:nth-child(1) { align-items: flex-start; }
.container:nth-child(2) { align-items: flex-end; }
.container:nth-child(3) { align-items: stretch; }
.container:nth-child(4) { align-items: center; }
.container:nth-child(5) { align-items: baseline; }
.container div:nth-child(1) { line-height: 50px; }
.container div:nth-child(2) { line-height: 100px; }
.container div:nth-child(3) { line-height: 150px; }
.container div:nth-child(4) { line-height: 200px; }
flex-grow:
.container { display: flex; width: 60%; }
.container div:nth-child(2) { flex-grow:; }
.container:nth-child(2) div:nth-child(1) { flex-grow:; }
flex-shrink:
.container { float: none; display: flex; width: 1000px; }
.container div { width: 400px; text-align: center; }
.container div:nth-child(2) { flex-shrink:; }
.container:nth-child(1) div:nth-child(1) { flex-shrink:; }
.container:nth-child(3) { width: 300px; } /* 超过项目收缩能力 */
flex-basis:
html:
<div class="container">
<div>1</div><div>2</div><div>3</div><div>4</div>
</div>
<div class="container">
<div>1</div><div>2</div><div>33333333</div><div>4</div>
</div>
<div class="container">
<div>1</div><div>2</div><div>3</div><div>4</div>
</div>
<div class="container">
<div>1</div><div>2</div><div>33333333</div><div>4</div>
</div>
css:
.container { float: none; display: flex; width: 1000px; }
.container div { flex-grow:; text-align: center; }
.container div:nth-child(3) { flex-grow:; }
.container:nth-child(3) div, .container:nth-child(4) div { flex-basis:; }
读文章《Flexbox详解》笔记的更多相关文章
- TCP-IP详解笔记7
TCP-IP详解笔记7 TCP: 传输控制协议(初步) 使用差错校正码来纠正通信问题, 自动重复请求(Automatic Repeat Request, ARQ). 分组重新排序, 分组复制, 分组丢 ...
- TCP-IP详解笔记6
TCP-IP详解笔记6 用户数据报协议和IP分片 UDP是一种保留消息边界的面向数据报的传输层协议. 不提供差错纠正, 队列管理, 重复消除, 流量控制和拥塞控制. 提供差错检测, 端到端(end-t ...
- TCP-IP详解笔记8
TCP-IP详解笔记8 TCP超时与重传 下层网络层(IP)可能出现丢失, 重复或丢失包的情况, TCP协议提供了可靠的数据传输服务. TCP启动重传操作, 重传尚未确定的数据. 基于时间重传. 基于 ...
- TCP-IP详解笔记5
TCP-IP详解笔记5 ICMPv4和ICMPv6: Internet控制报文协议 Internet控制报文协议(Internet Control Message Protocol, ICMP)与IP ...
- TCP-IP详解笔记4
TCP-IP详解笔记4 系统配置: DHCP和自动配置 每台主机和路由器需要一定的配置信息,配置信息用于为系统指定本地名称,及为接口指定标识符(如IP地址). 提供或使用各种网络服务,域名系统(DNS ...
- TCP-IP详解笔记3
TCP-IP详解笔记3 地址解析协议 IP协议的设计目标是为跨越不同类型物理网络的分组交换提供互操作. 网络层软件使用的地址和底层网络硬件使用的地址之间进行转换. 对于TCP/IP网络,地址解析协议( ...
- http详解笔记
http详解笔记 http,(HyperText Transfer Protocol),超文本传输协议,亦成为超文本转移协议 通常使用的网络是在TCP/IP协议族的基础上运作的,HTTP属于它的一 ...
- 【TCP/IP】TCP详解笔记
目录 前言 17. TCP 传输控制协议 17.1 引言 17.2 TCP 服务 17.3 TCP的首部 18. TCP连接的建立与终止 18.1 引言 18.2 连接的建立与终止 18.2.1 建立 ...
- CDN技术详解笔记
1.影响网络传输的四个因素(1)“第一公里”:网站服务器接入互联网的链路所能提供的带宽.(2)“最后一公里”:用户接入带宽.(3)对等互联关口:不同网络之间的互联互通带宽.(4)长途骨干传输:首先是长 ...
随机推荐
- Python异步通信模块asyncore
https://docs.python.org/2/library/asyncore.html This module provides the basic infrastructure for wr ...
- boost any库
转: 原理 c++是一个强类型的语言,要实现一个万能类型可以考虑用void*来保存数据,然后用类型转换进行操作,如: class MyAny{ MyAny(void* input):content_( ...
- android adb命令
adb查看logcat adb logcat <TAG>:* *:S 查看指定TAG的Log adb查看最上层activity:linux: adb shell dumpsys activ ...
- front-end plugin, generate pdf with html5 and jquery
http://www.jqcool.net/jquery-jspdf.html[from this site] <html> <head></head> <s ...
- Jquery,jquery-cookie.js 做的点击记住用户名和密码!
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 非常简单的数据,支持excel表格下载功能
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...
- android 设计
引用:http://my.eoe.cn/blue_rain/archive/3631.html 1.一些概念 模式的定义: 每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案 ...
- web app响应式字体设置!rem之我见
之前做沙漠教育的时候,直接以设计图为准,然后强暴式,缩放处理.简单.直接,粗暴!但是,开发快.……一劳永逸! 但那是,现在开发,作为业界良心:是不能那么做的!(那个是被逼的啊 首先看代码: @medi ...
- JSON对象长度和遍历方法
摘自博客 (http://caibaojian.com/json-length.html) 原文链接:http://caibaojian.com/json-length.html JSON数组有长度j ...
- 多Web服务器之间共享Session的解决方案
一.提出问题: 为了满足足够大的应用,满足更多的客户,于是我们架设了N台Web服务器(N>=2),在多台Web服务器的情况下,我们会涉及到一个问题:用户登陆一台服务器以后,如果在跨越到另一台服务 ...