博客列表 >flex常用的6个属性

flex常用的6个属性

搬砖来学php
搬砖来学php原创
2022年07月13日 23:36:35981浏览

1.flex常用的6个属性

一控制主轴的方向与是否换行

  1. 1.flex-direction: row; 让元素从左往右排列

  1. 2.flex-direction: column:让元素垂直主轴从上到下垂直排列

  1. flex-wrap: wrap:换行(默认是不允许换行(flex-wrap: nowrap)

place-content 容器中的剩余空间在项目之间如何进行分配

属性 声明
place-content: start 将所有剩余空间全部分到了左边,所有项目从右边开始排列
place-content: end; 将所有剩余空间在所有项目左右二边平均分配
place-content: center 将所有剩余空间在两边分配
place-content: space-between 将剩余的项目两端对齐
place-content: space-around 分散对齐
place-content: space-evenly 平均对齐

第一种方案:使用place-content: start/place-content: end将所有剩余空间全部分到了左边,所有项目从右边开始排列

使用:place-content: center | 将所有剩余空间在两边分配

方案二: place-content: space-between 将剩余的项目两端对齐

place-content: space-around | 分散对齐 |

place-content: space-evenly | 平均对齐 |

3.palce-items 项目在交叉轴上的对齐

place-items: stretch;(自动伸展)默认情况下自动伸展,当我们给box盒子添加高度的时候就会显示出来
place-items: stretch;(自动伸展)
place-items: start;(上对齐)


place-items: end;(下对齐)

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <link rel="stylesheet" href="/css/dem1.css">
  8. <title>Document</title>
  9. </head>
  10. <style>
  11. *{
  12. margin: 0;
  13. padding: 0;
  14. box-sizing: border-box;
  15. }
  16. .main{
  17. height: 200px;
  18. display: flex; /*display属性为flex的元素即为flex容器*/
  19. background-color: rgb(237, 243, 243);
  20. }
  21. .box{
  22. width: 3em;
  23. text-align: center;
  24. line-height: 50px;
  25. border: 1px solid black;
  26. background-color: brown;
  27. }
  28. .main{
  29. /* display: flex; */
  30. /* flex-direction: row;/*让元素从左往右排列*/
  31. /* flex-direction: column; /*让元素垂直主轴从下到下垂直排列*/
  32. /*换行:flex-wrap: wrap*/
  33. /* flex-wrap: nowrap; (默认是不允许换行) */
  34. /* flex-wrap: wrap; */
  35. flex-flow: nowrap;
  36. place-content: start;
  37. place-content: end; /*将所有剩余空间全部分到了左边,所有项目从右边开始排列*/
  38. place-content: center;/*将所有剩余空间在所有项目左右二边平均分配 */
  39. /*方案二: place-content: space-between 将剩余的项目两端对*/
  40. place-content: space-between;
  41. /* 分散对齐 */
  42. place-content: space-around;
  43. /* 平均对齐 */
  44. place-content: space-evenly;
  45. /*自动伸展 (默认情况下自动伸展)*/
  46. place-items: stretch;
  47. /* 上对齐 */
  48. place-items: start;
  49. /* 下对齐 */
  50. place-items: end;
  51. }
  52. </style>
  53. <body>
  54. <div class="main">
  55. <div class="box">div1</div>
  56. <div class="box">div2</div>
  57. <div class="box">div3</div>
  58. </div>
  59. </body>
  60. </html>

flex:的属性 flex: 0 1 auto为默认值

当flex: 1 1 auto 设置第一个值是1的时候页面会随拉伸而放大
flex: 0 1 12em;如果设置了项目宽度,所以auto直接引用了width,在flex中设置了宽度的话会优先,因为flex
当没有设置宽度的时候我们flex属性的值设为flex: 1 1 auto; 页面即可进行响应式: 允许放大,允许缩小,宽度自动

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <link rel="stylesheet" href="/css/dem1.css">
  8. <title>Document</title>
  9. </head>
  10. <style>
  11. * {
  12. margin: 0;
  13. padding: 0;
  14. box-sizing: border-box;
  15. }
  16. .container {
  17. display: flex;
  18. height: 20em;
  19. border: 1px solid #000;
  20. }
  21. .container > .item {
  22. /* width: 30em; */
  23. /* min-width: 15em; */
  24. padding: 1em;
  25. background-color: lightcyan;
  26. border: 1px solid #000;
  27. flex: 0 1 auto; /*默认值*/
  28. flex: 1 1 auto;/* 完全响应式: 允许放大,允许缩小,宽度自动 */
  29. }
  30. </style>
  31. <body>
  32. <div class="container">
  33. <div class="item">item1</div>
  34. <div class="item">item2</div>
  35. <div class="item">item3</div>
  36. </div>
  37. </body>
  38. </html>

order: 可以改变项目在主轴上的排列顺序,值越小越靠前,支持负数

order:值越小越靠前,支持负数

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