解決前端一切布局的神器:CSS3 Flex彈性布局_第1頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、解決前端一切布局的神器:css3 flex彈性布局flex(flexible box),意為彈性布局。彈性,顧名思義,就是具有彈簧的特性,能夠自由的伸縮(有點自適應的意思)。解決前端一切布局的神器:css3 flex彈性布局其實flex并不是最近才浮現(xiàn)的,而是早在十年前它就被提出。2009年,w3c提出了一種新的計劃—-flex布局,可以簡便、完整、響應式地實現(xiàn)各種頁面布局。目前,它已經(jīng)得到了全部掃瞄器的支持,這意味著,現(xiàn)在就能很平安地用法這項功能。解決前端一切布局的神器:css3 flex彈性布局任何一個容器都可以指定為flex布局行內(nèi)元素也可以用法flex布局示例:解決

2、前端一切布局的神器:css3 flex彈性布局采納flex布局的元素,稱為flex容器(flex container),簡稱容器。它的全部子元素自動成為容器成員,稱為flex項目(flex item),簡稱項目。解決前端一切布局的神器:css3 flex彈性布局容器默認存在兩根軸:水平的主軸(main axis)和垂直的交錯軸(cross axis)。主軸的開頭位置(與邊框的交錯點)叫做main start,結(jié)束位置叫做main end;交錯軸的開頭位置叫做cross start,結(jié)束位置叫做cross end。 項目默認沿主軸羅列。單個項目占領的主軸空間叫做main size,占領的交錯軸空

3、間叫做cross size。是不是感覺又學到了?概念的東西了解就好了,這個不用記憶,不會跟上學背課文一樣,還考試了。一、flex-direction:打算項目(item)的羅列方向flex-direction有四個值:1、row(默認值):主軸為水平方向,起點在左端。2、row-reverse:主軸為水平方向,起點在右端。3、column:主軸為垂直方向,起點在上沿。4、column-reverse:主軸為垂直方向,起點在下沿。上方那個示例圖,我們稍稍變陣一下,主軸設置為垂直方向,就會浮現(xiàn)下圖布局。示例:解決前端一切布局的神器:css3 flex彈性布局還可以設置主軸為垂直方向,起點在下沿。示

4、例:解決前端一切布局的神器:css3 flex彈性布局是不是覺得以后布局就用他(flex)了?二、flex-wrap默認狀況下,item都排在一條線(又稱軸線)上。flex-wrap屬性定義了,假如一條軸線排不下,item的換行方式。示例:解決前端一切布局的神器:css3 flex彈性布局flex-wrap有三個值:1、nowrap(默認):不換行2、wrap:換行,第一行在上方。3、wrap-reverse:換行,第一行在下方。示例:解決前端一切布局的神器:css3 flex彈性布局三、flex-flowflex-flow屬性是flex-direction屬性和flex-wrap屬性的簡寫形

5、式,默認值為row nowrap。示例:解決前端一切布局的神器:css3 flex彈性布局四、justify-content:定義了item在主軸上的對齊方式justify-content有五個值:1、flex-start(默認值):左對齊2、flex-end:右對齊3、center: 居中4、space-between:兩端對齊,項目之間的間隔都相等。5、space-around:每個item兩側(cè)的間隔相等。所以,item之間的間隔比item與邊框的間隔大一倍。示例:解決前端一切布局的神器:css3 flex彈性布局五、align-items:item在交錯軸上如何對齊1、flex-star

6、t:交錯軸的起點對齊。2、flex-end:交錯軸的盡頭對齊。3、center:交錯軸的中點對齊。示例:解決前端一切布局的神器:css3 flex彈性布局4、baseline: 項目的第一行文字的基線對齊。解決前端一切布局的神器:css3 flex彈性布局5、stretch(默認值):假如項目未設置高度或設為auto,將占滿囫圇容器的高度。六、align-content:多根軸線的對齊方式多根軸線如何浮現(xiàn)?寬度超出,換行后就會有多根軸線了。1、flex-start:與交錯軸的起點對齊。2、flex-end:與交錯軸的盡頭對齊。3、center:與交錯軸的中點對齊。4、space-between

7、:與交錯軸兩端對齊,軸線之間的間隔平均分布。5、space-around:每根軸線兩側(cè)的間隔都相等。所以,軸線之間的間隔比軸線與邊框的間隔大一倍。6、stretch(默認值):軸線占滿囫圇交錯軸。對照一下添加align-content和沒有align-content的區(qū)分: 示例:解決前端一切布局的神器:css3 flex彈性布局一、orderitem的羅列挨次。數(shù)值越小,羅列越靠前,默認為0。示例:解決前端一切布局的神器:css3 flex彈性布局給予item,一個排序值,按照這個值舉行排序。沒有設置值的默認是0。二、flex-grow定義item的放大比例,默認為0,即假如存在剩余空間,也

8、不放大。意思就是將100%寬/高按什么比例分。解決前端一切布局的神器:css3 flex彈性布局舉例:假如全部項目的flex-grow屬性都為1,則它們將等分剩余空間(假如有的話)。假如一個項目的flex-grow屬性為2,其他項目都為1,則前者占領的剩余空間將比其他項多一倍。(看上圖示例)三、flex-shrink定義了item的縮小比例,默認為1,即假如空間不足,該項目將縮小解決前端一切布局的神器:css3 flex彈性布局看上圖:3個item的寬度和:100+200+200=500px,超出了box(400px)的寬度(超出了100px的寬),這時候item1/item2都設置了flex

9、-shrink為0,而item3設置了flex-shrink為1,所以,寬度不夠時,item3將收縮,這里item3實際的寬度就是100px。再看下圖:解決前端一切布局的神器:css3 flex彈性布局item1/item3設置flex-shrink為1,而item2的flex-shrink為0,也就是說,此時寬度超出后,將由item1、item3來等比縮小寬度,item2保持原有寬度。四、flex-basisflex-basis屬性定義了在分配多余空間之前,item占領的主軸空間(main size)。掃瞄器按照這個屬性,計算主軸是否有多余空間。它的默認值為auto,即item的原來大小。示

10、例:解決前端一切布局的神器:css3 flex彈性布局這個屬性可以挺直設置寬高代替,如上圖注釋部分。五、flexflex屬性是flex-grow, flex-shrink 和 flex-basis的簡寫,默認值為0 1 auto。后兩個屬性可選。所以最前面的幾個示例,都挺直寫的flex,其實flex就flex-grow, flex-shrink 和 flex-basis的簡寫。六、align-selfalign-self屬性允許單個item有與其他item不一樣的對齊方式,可籠罩align-items屬性。默認值為auto,表示繼承父元素的align-items屬性,假如沒有父元素,則等同于stretch。示例:解決前端一切布局的神器:css3 flex彈性布局這樣,就會把容器的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論