在Web開發(fā)中,我們常常需要為元素設(shè)置寬度和高度。其中,寬度相對來說比較容易設(shè)置,我們可以使用width
屬性,設(shè)定一個具體的數(shù)值,或者使用百分比,讓元素寬度隨窗口大小的改變而自動調(diào)整。
但是,如何讓一個元素的高度也跟隨窗口大小自動適應(yīng)呢?這就需要用到CSS3中伸縮布局的特性。
.container { display: flex; flex-direction: column; min-height: 100vh; } .content { flex: 1; }
上面的代碼中,我們需要設(shè)置一個包裹元素.container
,并且給它添加display: flex;
和flex-direction: colum;
屬性,將其變?yōu)橐粋€縱向排列的彈性布局。接著,我們給這個元素添加一個最小高度min-height: 100vh;
,確保它的高度能夠填滿整個視窗。
然后,我們在容器中再添加一個元素.content
,并且給它添加flex: 1;
屬性,讓它能夠自動填充父容器的剩余空間。這樣,這個元素的高度就可以隨著窗口大小的變化而自適應(yīng)了。
注意,這種方式僅適用于IE10及以上、Firefox、Chrome、Safari等現(xiàn)代主流瀏覽器,而對于IE9以及以下的版本則需要使用其他方式實(shí)現(xiàn)。