css3佈局屬性有哪些

2022-02-25 19:00:22

css3佈局屬性有:flex-direction、flex-wrap、flex-flow、justify-content、align-items、align-content、order、flex-grow、flex-shrink等等。

本教學操作環境:windows7系統、CSS3版、Dell G3電腦。

1、彈性盒模型(Flexible Box 或Flexbox)

彈性盒模型最大的特徵在於,能夠動態修改子元素的寬度和高度,以滿足在不同尺寸螢幕下的恰當佈局。

(1)彈性容器屬性

flex-direction:設定主軸方向,確定彈性子元素排列方式

flex-wrap:當彈性子元素超出彈性容器範圍時是否換行

flex-flow:flex-direction和flex-wrap屬性的快捷方式,複合屬性

justify-content:主軸上的對齊方式

align-items:側軸上的對齊方式

align-content:側軸上有空白時,側軸的對齊方式

(2)彈性子元素屬性

order:控制彈性容器裡子元素的順序

flex-grow:設定彈性子元素的擴充套件比率

flex-shrink:設定彈性子元素的收縮比率、

flex-basis:指定彈性子元素伸縮前的預設大小值,相當於width和height屬性

flex:flex-grow,flex-shrink和flex-basis屬性的複合屬性

align-self:允許獨立的彈性子元素覆蓋彈性容器的預設對齊設定

Flexbox選單專案實戰

 <!DOCTYPE html>
  <html lang="en">
  <head>
      <meta charset="UTF-8">
      <title>Flexbox</title>
      <link rel="stylesheet" href="style.css">
  </head>
  <body>
      <!--
          響應式選單html架構,emmet的方式進行簡寫
          ul.menu>li*6>a[href="#"]{HTML}
      -->
      <ul class="menu">
          <li><a href="#">HTML</a></li>
          <li><a href="#">CSS</a></li>
          <li><a href="#">JavaScript</a></li>
          <li><a href="#">Sass</a></li>
          <li><a href="#">Ruby</a></li>
          <li><a href="#">Mongo</a></li>
      </ul>
  </body>
  </html>
.menu{
      list-style-type: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-flow: row wrap;
  }
   
  .menu li{
      height: 40px;
      text-align: center;
      line-height: 40px;
      flex: 1 1 100%;
  }
   
  .menu li:nth-child(1){
      background-color: #39ADD1;
  }
  .menu li:nth-child(2){
      background-color: #3079AB;
  }
  .menu li:nth-child(3){
      background-color: #982551;
  }
  .menu li:nth-child(4){
      background-color: #E15258;
  }
  .menu li:nth-child(5){
      background-color: #CC6699;
  }
  .menu li:nth-child(6){
      background-color: #52AC43;
  }
   
  @media  (min-width:480px) {
      .menu li{
          flex: 1 1 50%;
      }
  }
   
  @media  (min-width:768px) {
      .menu{
          flex-flow: row nowrap;
      }
  }

2、多列詳解

屬性一覽:

columns:複合屬性(column-width和column-count),設定寬度和列數;

column-width:設定每列的寬度

column-count:設定列數

column-gap:設定列之間的間隙

column-rule:複合屬性(column-rule-width、column-rule-style、column-rule-color),設定列之間的邊框樣式

column-fill:設定列的高度是否統一

column-span:設定是否橫跨所有列

3、媒體查詢

最佳實踐方式:

/*超小螢幕(手機,小於768px)*/
  /*沒有任何媒體查詢相關的程式碼,移動裝置優先*/
   
  /*小螢幕(平板,大小等於768)*/
  @media (min-width: 768px) {
   
  }
   
  /*中等螢幕(桌面顯示器,大於等於992px)*/
  @media (min-width: 992px) {
   
  }
   
  /*大螢幕(大桌面顯示器,大於等於1200px)*/
  @media (min-width: 1200px) {
   
  }

(學習視訊分享:、)

以上就是css3佈局屬性有哪些的詳細內容,更多請關注TW511.COM其它相關文章!