在 CSS 中,寬度的百分比值按預期工作,但對於高度則不然。要理解此行為,我們需要檢查區塊元素的預設高度計算。
預設高度計算:
塊元素的高度由其內容決定。如果元素包含文字、圖像或其他區塊元素,其高度將增長以容納內容。
百分比寬度與百分比高度:
當您指定時百分比寬度,元素的寬度按其父元素寬度的百分比計算。由於區塊元素本質上與其父元素一樣寬,因此此計算會產生一個明確定義的像素值。
但是,區塊元素的高度取決於其內容。指定 height: 50% 會產生歧義,因為當元素本身的內容可能會改變其高度時,不清楚父級高度的 50% 應該是多少。
打破回饋循環:
要解決這種歧義,您需要打破父母和孩子之間的回饋循環。這可以透過明確指定父元素的高度來完成。
例如:
#parent { height: 200px; } #child { height: 50%; /* Now calculates 50% of #parent's height */ }
透過為父元素提供特定高度,現在可以將子元素的高度計算為定義的高度百分比,有效地使百分比高度發揮作用。
以上是為什麼 CSS 中的百分比高度與百分比寬度不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!