读文章《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: 2; }

  .container:nth-child(2) div:nth-child(1) { flex-grow: 1; }

  flex-shrink:

  .container { float: none; display: flex; width: 1000px; }
  .container div { width: 400px; text-align: center; }

  .container div:nth-child(2) { flex-shrink: 2; }
  .container:nth-child(1) div:nth-child(1) { flex-shrink: 0; }
  .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: 1; text-align: center; }
  .container div:nth-child(3) { flex-grow: 2; }

  .container:nth-child(3) div, .container:nth-child(4) div { flex-basis: 0; }
时间: 2024-10-04 00:56:16

读文章《Flexbox详解》笔记的相关文章

javascript事件详解笔记

javascript事件详解笔记: 一.事件流 1.事件流: 描述的是页面中接受事件的顺序,有事件冒泡.事件捕获两种. 2.事件冒泡: 由最具体的元素接收,然后逐级向上传播到最不具体的元素的节点(文档). 3.事件捕获: 最不具体的节点先接收事件,而最具体的节点应该是最后接收事件. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>事件</title&

canvas绘图详解笔记(一)

声明一下:这里我不会用太多文字去详解介绍canvas是什么,相信了解过canvas的人都知道它的魅力所在,如果你对canvas还比较陌生的话,建议可以查阅相关资料了解一下.这里我将对canvas绘图详解课程做一次详细的笔记,方便大家和自己日后可以学习.那么接下来就是直接进入笔记内容的学习: 首先创建一个canvas元素,我们只需要在html文件中加入这么一句代码: <canvas id="canvas">当前浏览器不支持canvas,请更换浏览器使用!</canvas

nginx配置文件详解笔记

web运维第一篇:nginx配置文件详解笔记#定义Nginx运行的用户和用户组user www www;#nginx进程数,建议设置为等于CPU总核心数.worker_processes 8;#全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]error_log /var/log/nginx/error.log info;#进程文件pid /var/run/nginx.pid;#一个nginx进程打开的最多文件描述符数目,理论值应

伪静态详解笔记

1.检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到"Loaded Modules",其中列出了所有 apache2handler已经开启的模块,如果里面包括"mod_rewrite",则已经支持,不再需要继续设置. 如果没有开启"mod_rewrite",则打开目录 您的apache安装目录"/apache/conf/" 下的 httpd.conf 文

log4j详解笔记

a). 新建Java Project>>新建package>>新建java类: b). import jar包(一个就够),这里我用的是log4j-1.2.14.jar, c). 新建log4j.properties,置于project根目录下: log4j.rootLogger=info, ServerDailyRollingFile, stdout log4j.appender.ServerDailyRollingFile=org.apache.log4j.DailyRolli

Http 协议详解笔记

HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出.HTTP协议的主要特点可概括如下:1.支持客户/服务器模式.2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径.请求方法常用的有GET.HEAD.POST.每

CDN技术详解笔记

1.影响网络传输的四个因素(1)“第一公里”:网站服务器接入互联网的链路所能提供的带宽.(2)“最后一公里”:用户接入带宽.(3)对等互联关口:不同网络之间的互联互通带宽.(4)长途骨干传输:首先是长距离传输时延问题,其次是骨干网拥塞问题 2.用户通过浏览器访问网站的过程如下图所示: ①用户在自己的浏览器中输入要访问的网站域名. ②浏览器向本地DNS服务器请求对该域名的解析. ③本地DNS服务器中如果缓存有这个域名的解析结果,则直接用户的解析请求. ④本地DNS服务器中如果没有关于这个域名的解析

JavaScript系列文章:详解正则表达式之二

在上一篇文章中我们讲了正则表达式的基本用法,接下来博主想聊聊其中的细节,今天就从正则修饰符开始吧. 正则修饰符又称为正则标记(flags),它会对正则的匹配规则做限定,进而影响匹配的最终结果.在上次的文章中我们也提到过,正则修饰符一共有以下几种,可以单独使用,也可以组合使用: /\w+/g; // global search /\w+/i; // ignore case /\w+/m; // multi-line /\w+/u; // unicode /\w+/y; // sticky /\w+

TCP/IP详解 笔记十二

简单文件传送协议 TFTP 1)         初衷是为了引导无盘系统 2)         使用UDP 3)         代码都能适合只读存储器 无盘主机通过RARP获得ip地址后进行一个TFTP请求 报文格式 正常情况下,一个无盘系统第一个请求是读请求 1)         操作码有,(1==RRQ)是读请求,(2==WRQ)写请求,3数据传输,4数据确认,5差错报文. 2)         在操作码为1,2是文件名是要写或要读的文件名以0字节结束 3)         模式分两种也以