首頁 web前端 css教學 flex佈局-回顧

flex佈局-回顧

Feb 13, 2017 pm 02:46 PM
flex

flex 即為彈性佈局。
  任何一個容器都可以指定為flex佈局。
    .box{display:flex}
  行內元素可以使用flex版面
    .box{display: inline-flex}
  webkit核心的瀏覽器必須加上-webkit 前核的瀏覽器必須加上-webkit 前核的瀏覽器。
    .box{display:-webkit-flex; display:flex;}
  注意:元素設定flex佈局以後,子元素得float ,clear 和 vertical-align 屬性將失效。
  基本概念:
    採用flex佈局的元素稱之為flex容器,它的所有子元素自動成為容器成員,稱為flex
    計畫。
    容器預設存在兩根軸,水平的主軸(main axis) 和垂直的交叉軸(cross axis)。主軸的開始位置(與邊框的交叉點)叫做main start, 結束位置叫做main end ;
      交叉軸的開始位置叫做cross start,結束位置叫做cross start,技術位置叫做cross end. 
  單單位所佔據的主軸空間項目叫做main size 佔據的交叉軸空間叫做cross size.

容器的屬性:
  有6個屬性設定在容器上。
    flex-direction    flex-wrap    flex-flow    justify-content
    align-        屬性決定主軸的方向(即專案的排列方向)
          .box{flex-direction:row | -reverse | column | column-reverse;}
            row(預設值)主軸為水平方向,起點在左端。
            row-reverse: 主軸為水平方向,起點在右端。
            column: 主軸為垂直方向,起點在上沿。
            column-reverse: 主軸為垂直方向,起點在下沿。
      2.flex-wrap 屬性
        預設情況下,項目都排列在一條線(又稱軸線  排列不下,如何換行。
            .box{flex-wrap: nowrap | wrap | wrap-reverse;}
                       H換行。
                wrap: 換行,第一行在上方。
                wrap-reverse: 換行,第一行在下方。
      3.flex-flow
        flex-flow 屬性是flex-direction 屬性和flex-wrap 屬性的簡寫方式,預設值為 .box{ flex-flow: || ;}
      4.justify-content 屬性
        屬性定義了專案在主軸上的對齊方式。
          .box{justify-content: flex-start | flex-end | center | space-between | space-around;方式與軸的方向有關,以下假設主軸為從左到右。
                                     flex-end 右對齊
                            center 居中       -er ween: 兩端對齊,項目之間的間隔都相等。
                 space-around: 每個專案兩側的間距都相等,所以專案之間的間隔比專案與邊框的間隔大一倍。
      5.align-items 
        屬性定義專案在交叉軸上如何對齊。
          .box{align-items: flex-start | flex-end | center | baseline | stretch;}
          聚下面假設交叉軸上從上到下。
              flex-start: 交叉軸的起點對齊。
              flex-end: 交叉軸的終點對齊。
              center: 交叉週的中點對齊。
              baseline:項目的第一行文字的基線對齊。
              stretch (預設值) 如果項目未設定高度或設定auto,將佔滿整個容器的高度。
      6.align-content 屬性
        屬性定義了多根軸線的對齊方式,如果項目只能有一條軸線,該屬性不起作用。
          .box{align-content: flex-start | flex-end | center | space-between | space-around『        屬性可為6個值。
              flex-start: 與交叉軸的起點對齊。
              flex-end: 與交叉軸的終點對齊。
              center: 與交叉軸的中點對齊。
              space-between;與交叉軸兩端對齊,軸線之間的間隔平均分佈。
              space-around: 每根軸線兩側的間隔都相等。
              stretch(預設值):軸線佔滿整個交叉軸。

  項目的屬性
    可以設定6個屬性在項目上。
      order flex-grow flex-shrink flex-basis flex align-self

        1.order屬性
          order 瀦     .item { order: ;}
        2.flex-grow 屬性
                項目的放大比例,預設為0,即如果存在剩餘空間,也放大。
            .item { flex-grow: ;}
    〴 
              flex-grow 屬性為2, 其他項目皆為1則前者佔據的剩餘空間將比其他項目多一倍。

        3.flex-shrink 屬性

          flex-shrink 屬性定義      flex-shrink 屬性定義項目的縮小比例,此項目縮小1,    flex-shrink 屬性定義項目的縮小比例,該項目將縮小到項目的比例縮小。
            .item{flex-shrink:;}
     將等比例縮小。
              如果一個項目的flex-shrink屬性為o,其他項目都為1,則空間不足時,前者                   不縮小。負值對該屬性無效。
        4.flex-basis 屬性
            〔        〜餘空間定義了在分配這個空間之前,根據計算的主空間      主軸是否有多餘空間。它的預設值為 auto,即項目的本來大小。
          .item {flex-basis: | auto;}
        則固定          
        5.flex 屬性
          flex 屬性是flex-grow -shrink 和    flex 屬性是flex-grow ,   為 0 1 auto. 後兩個屬性可選。
            .item { flex:none | [ ? || ]}
              該屬性有兩個快捷值:auto (1 1 auto)和none (0 0 auto)。
                建議優先使用這個屬性,而不是單獨寫三個分離的屬性,🀜     》    、  、  、  、  、  、、  、  、、 、、 、 H、  、  、  、、 H  、、 、 、 、、、 H   、、)        6.align-self 屬性
            align-self 屬性允許單一項目具有與其它,項目不對齊的方式可
      覆寫align 屬性,預設值為auto, 表示繼承父元素的align-ite   等於stretch.
              .item{align-self: auto | flex-start | flex-end | center | baseline | stretch;}
          此屬性可能取6個值,除了auto,其他都與align-items屬性完全一致。

更多flex版面-回顧相關文章請關注PHP中文網!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
手把手帶你使用CSS Flex和Grid佈局實現3D骰子(附程式碼) 手把手帶你使用CSS Flex和Grid佈局實現3D骰子(附程式碼) Sep 23, 2022 am 09:58 AM

在前端面試中,常會問到如何使用 CSS 實現骰子/麻將佈局。以下這篇文章為大家介紹一下用CSS 創建一個 3D 骰子(Flex和Grid佈局實現3D骰子)的方法,希望對大家有幫助!

常用的Flex佈局屬性有哪些 常用的Flex佈局屬性有哪些 Feb 25, 2024 am 10:42 AM

flex版面的常用屬性有哪些,需要具體程式碼範例Flex佈局是一種用於設計響應式網頁版面的強大工具。它透過使用一組靈活的屬性,可以輕鬆控制網頁中元素的排列方式和尺寸。在本文中,我將介紹Flex佈局的常用屬性,並提供具體的程式碼範例。 display:設定元素的顯示方式為Flex。 .container{display:flex;}flex-directi

一文詳解三個 flex 屬性對元素的影響 一文詳解三個 flex 屬性對元素的影響 Aug 30, 2022 pm 07:50 PM

在開發的時候常用 flex 這個屬性作用於彈性盒子的子元素,例如:flex:1或flex: 1 1 auto,那麼這個屬性到底控制了元素怎麼的行為呢? flex:1又究竟是什麼意義呢?讓這篇文章帶你徹底了解 flex 屬性吧!

帶你吃透Flex佈置的三個屬性:flex-grow、flex-shrink、flex-basis 帶你吃透Flex佈置的三個屬性:flex-grow、flex-shrink、flex-basis Dec 06, 2022 pm 08:37 PM

這篇文章帶大家深入了解CSS Flex版面的三個屬性:flex-grow、flex-shrink、flex-basis,希望能對大家有幫助!

CSS 自適應版面屬性優化技巧:flex 和 grid CSS 自適應版面屬性優化技巧:flex 和 grid Oct 21, 2023 am 08:03 AM

CSS自適應佈局屬性優化技巧:flex和grid在現代Web開發中,實現自適應佈局是一項非常重要的任務。隨著行動裝置的普及和螢幕尺寸的多樣化,確保網站在各種裝置上都能良好地展示,並適應不同的螢幕尺寸,是一個必不可少的要求。幸運的是,CSS提供了一些強大的屬性和技巧來實現自適應佈局。本文將重點放在兩個常用的屬性:flex和grid,並提供具體的程式碼範例

如何透過Css Flex 彈性佈局實現滑動選單效果 如何透過Css Flex 彈性佈局實現滑動選單效果 Sep 26, 2023 pm 02:13 PM

如何透過CSSFlex彈性佈局實現滑動選單效果在網頁設計中,滑動選單是一種常見的互動效果,它可以讓網頁更加流暢美觀。本文將教你使用CSSFlex彈性佈局來實現這一效果,並提供具體的程式碼範例。 CSSFlex是一種新的佈局方式,可以方便地實現各種複雜的佈局效果。它透過設定容器和子元素的屬性來控制佈局,其中flex屬性是最重要的屬性之一。首先,我們需要一個

詳解Css Flex 彈性佈局中的網格間距與邊框處理方法 詳解Css Flex 彈性佈局中的網格間距與邊框處理方法 Sep 26, 2023 am 10:31 AM

標題:詳解CSSFlex彈性佈局中的網格間距與邊框處理方法引言:CSSFlex彈性佈局是一種現代的頁面佈局方式,可以使網頁在不同的螢幕尺寸下自動適應,並且具有靈活性和響應性。在使用CSSFlex彈性佈局時,我們經常會遇到需要設定網格間距和邊框的情況。本文將詳細介紹CSSFlex彈性佈局中的網格間距與邊框處理方法,並提供具體的程式碼範例。一、網格間距的處

一文詳解CSS3中的Flex佈局 一文詳解CSS3中的Flex佈局 Nov 01, 2022 pm 07:29 PM

這篇文章帶大家了解CS​​S3中的Flex佈局,希望對大家有幫助!

See all articles