博主信息
博文 12
粉丝 0
评论 1
访问量 16877
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
定位及FLex、Grid布局(附模态框案例)
月缺
原创
1451人浏览过

定位及FLex、Grid布局(附模态框案例

定位

定位属性介绍

定位方式 属性值
默认静态定位 static
相对定位 relative
绝对定位 absolute
绝对定位 fixed
粘性定位 sticky

粘性定位

演示效果
代码示例

模态框

模态框示例代码

Flex布局

flex用于一维布局,以直角坐标系介绍就是x轴作为主轴,y轴作为交叉轴,即横向或者纵向布局

flex布局属性 功用
flex-direction 排列方向: row:横向,columns:纵向,row/columns加上-reverse即可实现反向排列
flex-wrap 换行方式:wrap:元素在剩余空间不够时自动换;nowrap:不允许换行,若内容超出flex盒子,则项目宽度将被压缩平均分配,项目内部width不再生效
flex-row flex-direction及flex-wrap的简写,简写顺序: row wrap
align-content 定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用
justify-content 项目在主轴上的对齐方式
place-content align-content及justify-content的简写
align-items 项目在交叉轴上如何对齐
justify-items 项目在主轴上的对齐方式
place-items align-items及justify-items的简写

align-content

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

justify-content

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

align-items

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

justify-items

  • flex-end:项目位于容器的开头。
  • flex-start: 项目位于容器的结尾。
  • center:项目位于容器的中心。
  • space-between: 项目位于各行之间留有空白的容器内。
  • space-around: 项目位于各行之前、之间、之后都留有空白的容器内
flex布局内部的项目属性 功用
flex-grow 是否允许放大,默认0不允许
flex-shrink 是否允许收缩, 默认1允许
flex-basis 项目在主轴上的宽度auto
flex 上面三个属性的简写,顺序为flex-grow flex-shrink flex-basis
order 定义项目的排列顺序。数值越小,排列越靠前,默认为0

1、flex支持响应式
flex: 1 1 auto;
2、flex完全不支持响应式
flex: 0 0 auto;
3、flex属性单值
flex: 1;相当于flex-grow: 1;
4、flex属性双值
flex: 0 100px;重新分配项目空间大小

Grid布局

grid布局用于二维布局,即可同时设置横向及纵向的布局,布局方式相比于flex布局更加丰富

grid布局属性 功用
grid-template-columns 定义网格列数及列宽,fr关键字定义比例,auto关键字表示由浏览器自己决定长度,minmax()函数产生一个长度范围,表示长度就在这个范围之中。它接受两个参数,分别为最小值和最大值。
grid-template-rows 定义网格行数及行高。
grid-auto-flow 网格定义后,排列顺序默认先行后列,默认值为row,设置成column,则先列后行
grid-auto-rows 隐式网格单元格的行高
grid-auto-columns 隐式网格单元格的列宽

flex布局中用到的place-content及place-items在grid布局中也可以用到,效果也是一样的

grid布局内部的项目属性 功用
grid-column-start 左边框所在的垂直网格线索引
grid-column-end 右边框所在的垂直网格线索引
grid-row-start 上边框所在的水平网格线索引
grid-row-end 下边框所在的水平网格线索引
grid-row grid-row-start属性和grid-row-end的合并简写形式,书写方式 grid-row-start / grid-row-end
grid-column grid-column-start和grid-column-end的合并简写形式,书写方式 grid-column-start / grid-column-end
grid-area 指定项目放在哪一个区域(推荐该属性定义项目位置),行开始/列开始/行结束/列结束

思维导图区分

思维导图

批改老师:PHPzPHPz

批改状态:合格

老师批语:flex主轴并非固定x轴和y轴,flex主轴方向取决于项目排列方式,所以你的总结那是有问题的
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学