Flexbox,一種CSS3的佈局模式,也叫作彈性盒子模型,用來爲盒裝模型提供最大的靈活性。最新版本兼容IE11+、firefox、safari、chrome、opera及移動端,但移動端ios7.1-8.4須要添加前綴-webkit-。ios
1.引入web
經過對伸縮容器定義兩個屬性,justify-content定義伸縮項目沿着主軸線的對齊方式爲center, align-items定義伸縮項目在側軸(垂直於主軸)的對齊方式爲center,具體以下:chrome
<style> .parent{ width: 600px; height: 400px; border: 1px solid #000; display: flex; //須要將display值定爲flex justify-content:center; align-items:center; } .child{ width: 200px; //寬度能夠爲任意 height: 100px; //高度能夠爲任意 border: 1px solid #000; } </style> <div class="parent"> <div class="child"></div> </div>
從第一個子節點能夠看到Flexbox由Flex容器和Flex項目組成,容器即父元素,項目即子元素。他們之間的一些關係能夠這樣來表示:佈局
2 伸縮容器flex
display:flexflexbox
當咱們使用flexbox佈局時候,須要先給父容器的display值定位flex(塊級)或者inline-flex(行內級)。當使用了這個值之後,伸縮容器會爲內容創建新的伸縮格式化上下文(FFC flex formatting context普通流的一種)spa
主要表如今如下幾點:firefox
[1]float、clear和vertical-align屬性在伸縮項目上沒有效果3d
[2]伸縮容器的margin與其內容的margin不會重疊code
[3]text-align屬性在伸縮容器上沒有效果,由於其只可應用於塊級block容器
[4]另外,conlumns屬性伸縮容器上沒有效果
彈性盒模型的兩種容器塊級伸縮容器和內聯伸縮容器的區別相似於block和inline-block的區別,一個獨佔一行,另外一個非獨佔一行
如下6個屬性做用在伸縮容器上
3 伸縮項目
如下6個屬性做用在伸縮容器上
具體每一個屬性的取值以及做用,在這裏就不一一解釋了,上傳一個含有詳細內容的文檔,供想要了解的人蔘考。