博客列表 >关于flex相关属性知识点和代码演示

关于flex相关属性知识点和代码演示

李东亚¹⁸⁰³⁹⁵⁴⁰¹²⁰
李东亚¹⁸⁰³⁹⁵⁴⁰¹²⁰原创
2020年04月10日 17:34:12814浏览

Flex布局:

Flex容器属性:

1、 flex-direction:row/colum:主轴方向,默认主轴为行,
2、 flex-wrap:nowrap/wrap;默认不换行
3、 flex-flow:简写direction和wrap;
4、 justify-content:flex-start/center/flex-end和space-between/space-evenly/space-around;
主轴上项目对其方式和排列方式
5、 align-items:flex-start/center/flex-end;项目在交叉轴上的对其方式
6、 align-content: space-between/space-evenly/space-around: 项目在交叉轴上的排列方式

Flex项目属性:

1、 order:为项目编号(int),值越小越靠前排列,无order设置的项目在最前面
2、 flex-grow/shrink/basis: grow/shrink的值为比例分配:0~1; basis:项目占据的主轴空间。简写:flex:0,0 auto;
3、 aglin-self:某个特定项目的对齐方式;值为:flex-start、center、flex-end;


代码演示:

代码部分

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>Document</title>
  7. <style>
  8. .container {
  9. width: 500px;
  10. height: 300px;
  11. display: flex;
  12. background-color: #c3c3c3;
  13. /* flex-direction: column-reverse; */
  14. /* flex-wrap: wrap; */
  15. /* flex-flow: column nowrap; */
  16. /* justify-content:默认值 */
  17. /* justify-content: flex-start; */
  18. /* justify-content: center; */
  19. /* justify-content: flex-end; */
  20. /* justify-content: space-between; */
  21. justify-content: space-evenly;
  22. /* justify-content: space-around; */
  23. /* align-items: flex-start; */
  24. /* align-items: flex-end; */
  25. align-items: center;
  26. align-content: space-between;
  27. align-content: space-around;
  28. align-content: space-evenly;
  29. }
  30. .box {
  31. width: 200px;
  32. height: 100px;
  33. background-color: #ff8080;
  34. text-align: center;
  35. line-height: 100px;
  36. outline: 1px solid #008000;
  37. /* flex-basis: 200px; */
  38. /* flex-grow: 1; */
  39. /* flex-shrink: 1; */
  40. /* flex: 0 1 auto; */
  41. flex: auto;
  42. }
  43. .box:first-child {
  44. background-color: #00ff00;
  45. order: 1;
  46. align-self: flex-start;
  47. }
  48. .box:nth-child(2) {
  49. order: 3;
  50. align-self: flex-end;
  51. }
  52. .box:nth-child(3) {
  53. order: 2;
  54. }
  55. </style>
  56. </head>
  57. <body>
  58. <div class="container">
  59. <div class="box">1</div>
  60. <div class="box">2</div>
  61. <div class="box">3</div>
  62. <div class="box">4</div>
  63. </div>
  64. </body>
  65. </html>

演示结果:

总结:

1、flex相关属性归类总结:

属性 描述
基础属性 flex-flow:direction wrap; flex项目排列方向和是否换行
布局属性 主轴:justify-content属性;副轴:align-content(分散方式)和align-items(对齐方式) 项目在容器中的布局方式
项目属性 align-self:对齐方式 ;flex:项目弹性设置;order项目排次方式 子元素相关设置

2、flex布局是响应布局常用的方式,重点在于justify-content和align-items|content属性的设置影响整体布局;
3、项目元素在于flex和align-self、order的使用;主要用于子元素的微调,顺次排列;
4、flex相关属性的简写是掌握难点,需重点记忆和熟练练习;
5、另外需要注意的就是,相关属性叠加设置的效果,是以后使用和调正过程需要重点关注的;

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议