此文由卓越邁創(chuàng)小編撰寫,轉(zhuǎn)載請注明出處。有需要深圳網(wǎng)站建設(shè),高端網(wǎng)站建設(shè),營銷型網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),以及平面廣告設(shè)計(jì)服務(wù)的,請聯(lián)系卓越邁創(chuàng)深圳網(wǎng)站建設(shè)公司。
對于Display布局想必大家都有所了解,這個(gè)屬性用于定義建立布局時(shí)元素生成的顯示框類型。對于 HTML 等文檔類型,如果使用 display 不謹(jǐn)慎會很危險(xiǎn),因?yàn)榭赡苓`反 HTML 中已經(jīng)定義的顯示層次結(jié)構(gòu)。對于 XML,由于 XML 沒有內(nèi)置的這種層次結(jié)構(gòu),所有 display 是絕對必要的。今天我們給大家分享一下網(wǎng)站建設(shè)中的Display簡單快速布局:
在以往的大多數(shù)網(wǎng)頁布局中,經(jīng)常要用到浮動或定位、居中,為了實(shí)現(xiàn)這些效果,我們通常會用到CSS中 display屬性 + position屬性 + float屬性來完成,但對于某些布局非常不方便,往往花費(fèi)不必要的時(shí)間而達(dá)不到想要的效果,CSS3中新特性display: flex的出現(xiàn),使我們能節(jié)省時(shí)間和優(yōu)化代碼,并實(shí)現(xiàn)各種頁面簡單快速布局。Flex是Flexible Box的縮寫,意為"彈性布局",它的強(qiáng)大之處在為盒狀模型提供最大的靈活性。而且display: flex兼容大多數(shù)主流瀏覽器,有些瀏覽器使用時(shí)需要加上前綴,比如Webkit內(nèi)核的瀏覽器,必須加上-webkit前綴。
在使用display: flex布局父元素容器為指定彈性盒子時(shí),只需在父元素中設(shè)置:display:flex;而父元素中所包含的子元素的屬性float、clear和vertical-align是沒有效果的;而行內(nèi)元素容器彈性盒子設(shè)置為display:inline-flex;彈性盒子有兩條軸,水平的主軸(橫軸)和垂直的交叉軸(縱軸)。默認(rèn)橫軸為主軸,默認(rèn)自左向右;縱軸為輔軸,默認(rèn)自上而下。
在設(shè)置了display: flex的父元素上,常常會用到的有關(guān)彈性布局的屬性主要有 flex-direction , flex-wrap , justify-content , align-items , align-content ,這幾個(gè)屬性分別從主軸的方向、是否換行、子元素在主軸上的對齊方式、子元素在交叉軸上的對齊方式、子元素在多根軸線上的對齊方式來規(guī)定了子元素在父元素中的彈性,從而來達(dá)到所想實(shí)現(xiàn)的效果。
在定義了父元素為彈性盒子后子元素所擁有的屬性都有:order,flex-grow,flex-shrink,flex-basis,align-self。order規(guī)定了子元素出現(xiàn)的排列循序,值越小,排列越靠前,默認(rèn)為0;flex-grow定義了子元素的放大比例,默認(rèn)為0,表示即使父元素還有剩余空間也不放大該子元素。設(shè)父元素的寬度為500px,三個(gè)子元素寬度分別為100px,如果所有子元素的flex-grow的值為1,則如果父元素有剩余空間,子元素會等比例放大,即剩余出來的200/3分給三個(gè)子元素;如果是一個(gè)子元素flex-grow為1,一個(gè)為2,第三個(gè)為3,則三個(gè)子元素分別多分到,200*(1/6),200*(2/6),200*(3/6);flex-shrink定義了子元素的縮小比例,默認(rèn)為1,當(dāng)父元素空間不足時(shí),如果各個(gè)條目的flex-shrink值均為1,則表明等比例縮小,如果為0,則表示不縮小。
此文由卓越邁創(chuàng)小編撰寫,轉(zhuǎn)載請注明出處。有需要深圳網(wǎng)站建設(shè),高端網(wǎng)站建設(shè),營銷型網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),以及平面廣告設(shè)計(jì)服務(wù)的,請聯(lián)系卓越邁創(chuàng)公司。