flex布局


main axis:主轴;cross axis:交叉轴

容器的子元素自动成为容器成员,成为flex 项目(item)


flex容器属性

flex-direction

​ 该属性决定主轴的方向,即各flex item 的排列方向。

  • row(默认值):水平方向,起点在左端;
  • row-reverse:水平方向,起点在右端;

  • column:垂直方向,起点在上沿;
  • column-reverse:垂直方向,起点在下沿。

flex-wrap

​ 该属性决定在轴线方向排不下所有的item时的换行规则。

  • nowrap(默认值):不换行;
  • wrap:换行,第一行在上方;
  • wrap-reverse:换行,第一行在下方。

flex-flow

​ 该属性是flex-direction属性和flex-wrap属性的简写形式。

  • 默认值:row nowrap
  • 属性格式:.box { flex-flow:<flex-direction>||<flex-wrap>;}

justify-content

​ 该属性定义了item在主轴上的对齐方式。

  • flex-start(默认值):左对齐;
  • flex-end:右对齐;
  • center:居中;
  • space-between:两端对齐,item之间的间隔都相等;
  • space-around:item两侧的间隔都相等,所以,项目之间的间隔比项目与边框的间隔大一倍。

align-items

​ 该属性定义项目在交叉轴(cross axis)方向上如何对齐。

  • flex-start:item的上边框与交叉轴的起点对齐;
  • flex-end:item的下边框与交叉轴的终点对齐;
  • center:item的中线与交叉轴的中点对齐;
  • baseline:item的第一行文字的基线对齐(文字的底线);
  • stretch(默认值):如果item未设置高度或设为auto,将占满整个容器的高度。

align-content

​ 该属性定义了多条轴线的对齐方式。如果item中只有一条轴线,该属性不起作用。

  • flex-start:与交叉轴的起点对齐;
  • flex-end:与交叉轴的终点对齐
  • center:与交叉轴的中点对齐。
  • space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。
  • space-around:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。
  • stretch(默认值):轴线占满整个交叉轴。

item项目属性

order

​ 该属性决定item的排列顺序,数值越小,排列越靠前,默认为0

flex-grow

​ 该属性决定item的放大比例,默认为0,即如果存在剩余空间,也不放大。类似Android权重(weight)

flex-shrink

​ 该属性决定了item的缩小比例,默认为1,即如果空间不足,item将缩小。负值对该属性无效

flex-basis

​ 该属性决定了在分配多余空间之前,item占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。默认值auto,即item的原本大小。

​ 该属性可以设为widthheight属性一样的值(如:35px),则item将占据固定空间。

flex

​ 该属性是flex-growflex-shrinkflex-basis的简写。默认值为0 1 auto。后两个属性可选。

​ 该属性有两个快捷值:auto:1 1 auto;none:0 0 auto;建议优先使用这个属性,而不是单独写三个分离的属性,因为浏览器会推算相关值。

align-self

​ 该属性允许单个item有与其他item不一样的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同与stretch

​ 该属性可能取6个值,除了auto,其他都和align-items属性完全一致。

边框阴影

box-shadow

box-shadow: <length> <length> <length>?<length>?||<color>

也就是

box-shadow:inset x-offset y-offset blur-radius spread-radius color

换句说:box-shadow:投影方式 X轴偏移量 Y轴偏移量 阴影模糊半径 阴影扩展半径 阴影颜色

  • 投影方式:该参数为可选值,不设值时表示默认的投影方式为外阴影,如果取其唯一值insert,则表示投影方式为内阴影。
  • x-offset(x轴偏移量):指阴影水平偏移量,可以取正值或负值,若值为正,则阴影在对象的右边,反之在对象的左边。
  • y-offset(y轴偏移量):指阴影的垂直偏移量,可取正值或负值,若为正值,则阴影在对象的底部,反之在对象的顶部。
  • blur-radius(阴影模糊半径):可选,但取值只能为正值,值取0时,表示阴影不具有模糊效果。值越大,阴影的边缘就越模糊。
  • spread-radius(阴影拓展半径):可选,取值可以为正值或负值。若为正值,则整个阴影都延展扩大,反之缩小。
  • color(阴影颜色):可选,当不设定颜色时,浏览器会取默认色,但各浏览器的默认色不一样,特别是在webkit内核下的safari和chrome浏览器将无色,也就是透明,建议不要省略此参数。

圆角边框

border-radius(css3)

​ border是一个简写属性,用于设置四个border-*-radius属性。

​ 语法:border-radius: 1-4 length|% / 1-4 length|%;

​ 按此顺序设置每个 radii 的四个值。如果省略 bottom-left,则与 top-right 相同。如果省略 bottom-right,则与 top-left 相同。如果省略 top-right,则与 top-left 相同。

CSS之flex布局和边框阴影的更多相关文章

  1. “妄”眼欲穿-CSS之flex布局和边框阴影

    妄:狂妄: 不会的东西只有怀着一颗狂妄的心,假装能把它看穿吧. 作为一个什么都不会的小白,为了学习(zb),特别在拿来主义之后写一些对于某些css布局的总结,进一步加深对知识的记忆.知识是人类的共同财 ...

  2. flex布局和边框阴影

    "妄"眼欲穿-CSS之flex布局和边框阴影 妄:狂妄: 不会的东西只有怀着一颗狂妄的心,假装能把它看穿吧. flex布局 main axis:主轴:cross axis:交叉轴 ...

  3. CSS的flex布局(转载)

    我们之前已经学过一些布局模型,比如说浮动,绝对定位等等,但是这些布局方式一是不够简洁,而是使用的范围确实是太窄了. flex模型拥有比较多的属性,来设置多样的布局方式,接下来我们就详细介绍各种属性对布 ...

  4. css的flex布局调试

    学习经验-css的flex布局 今天遇到一个小问题 在给三个div布局时,设置父元素display:flex 此时三个div的宽度均为50%,他们并没有超出屏幕的宽度,还是撑满了父元素. 为什么呢? ...

  5. 详解CSS的Flex布局

    本文由云+社区发表 Flex是Flexible Box 的缩写,意为"弹性布局",是CSS3的一种布局模式.通过Flex布局,可以很优雅地解决很多CSS布局的问题.下面会分别介绍容 ...

  6. CSS之FLex布局介绍

    网页布局(layout)是CSS的一个重点应用. img 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如, ...

  7. CSS之Flex 布局:语法篇

    网页布局(layout)是 CSS 的一个重点应用. ​ 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如 ...

  8. CSS之Flex 布局

    Flex 布局教程:语法篇 网页布局(layout)是 CSS 的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性.它对于那些 ...

  9. CSS的flex布局和Grid布局

    一.什么是 flex 布局 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这 ...

随机推荐

  1. Vue--运行项目发送http://localhost:8080/sockjs-node/info请求报错,造成浏览器不能热更新

    今早习惯打开vscode 输入 npm run dev 准备修复测试提出的bug 不料一堆通红的报错,让人感到有点绿的慌. 有问题呢,就需要解决问题.经过一番排查后发现是我昨天为了让测试在我本地项目中 ...

  2. 电信NBIOT 3 - 数据下行

    电信NBIOT 1 - 数据上行(中国电信开发者平台对接流程) 电信NBIOT 2 - 数据上行(中间件获取电信消息通知) 电信NBIOT 3 - 数据下行 电信NBIOT 4 - NB73模块上行测 ...

  3. Jmeter进阶技能-数据库信息,传递参数

    因为项目的原因,假设我们要实现如下要求:从数据库的用户表里获取用户信息,并作为参数全部传递给登录请求,分别完成登录操作. 01Jmeter连接数据库 1.添加JDBC Connection Confi ...

  4. [TCP/IP] TCP如何保证可靠性

    1.数据包校验,发送方计算校验和,接收方结算校验和,进行对比2.应答机制,seq序列号与ack确认号 3.超时重传机制,发送后启动定时器,进行重传 4.连接管理,三次和四次5.对失序数据包重排序6.流 ...

  5. Shel脚本-初步入门之《02》

    Shel脚本-初步入门-什么是 Shell 脚本 2.什么是 Shell脚本 当命令或程序语句不在命令行下执行,而是通过一个程序文件来执行时,改程序就被称为 Shell 脚本.如果在 Shell 脚本 ...

  6. 11、shell_sed

    正则表达式:正则表达式,就是用一种模式,去匹配一类字符串的公式. 正则表达式的解释是用正则表达式引擎来实现的,常用正则表达式引擎有两类: 基本正则.扩展正则.   正则表达式基础: 正则表达式是由一些 ...

  7. react知识点

    http://www.cocoachina.com/webapp/20150721/12692.html http://blog.csdn.net/slandove/article/details/5 ...

  8. python27期day01:变量、常量、注释、PEP8开发规范、数据类型、Python2和Python3的区别、用户输入、流程控制语句、作业题

    1.变量:将程序中运行的中间值临时存储起来,以便下次使用. 2.变量命名规范:数字.字母.下划线.建议驼峰体.变量名具有可描述性.不能使用中文和拼音.不能数字开头和使用关键字('and', 'as', ...

  9. 页面元素定位及操作--xpath

    简介: 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档(根)节点.XML 文档是被作为节点树来对待的.树的根被称为文档节点或者根节点. /xxx 页面输出 / ...

  10. thymeleaf:在一个页面中引入其它的页面

    这个在jsp中很容易实现,但是springBoot不推荐使用jsp,建议使用thymeleaf,下面是在thymeleaf中引入界面的方法 1.修改配置文件 spring: mvc: static-p ...