CSS中的高度屬性是非常重要的,我們需要了解它的用法和注意事項。其中一個問題是:如何讓子元素的高度隨父元素的高度變化而變化呢?
很多人會犯一個錯誤,就是使用具體的高度值來定義子元素的高度,比如:
.child { height: 100px; }
這樣就會造成當父元素高度發生變化時,子元素的高度并不會隨之變化,而是一直維持在100px。正確的做法是使用height: 100%
來定義子元素的高度。如下:
.parent { height: 500px; } .child { height: 100%; }
這樣當父元素的高度變化時,子元素的高度也會隨之變化。
但是需要注意的是,使用height: 100%
前提是父元素必須要有一個固定的高度值(百分比也可以),否則無法實現子元素高度的自適應。比如下面的代碼是錯誤的:
.parent { height: auto; } .child { height: 100%; }
錯誤的原因是父元素height: auto;
,高度值是不確定的,子元素的高度無法參考。
總結一下,正確的做法是:
- 父元素必須要有一個固定的高度值(百分比也可以)
- 子元素使用
height: 100%
來自動適應父元素的高度變化