如果我沒有設(shè)置絕對定位的話,不給html,body設(shè)置{height:100%,weight:100%}時(shí),單獨(dú)的給下面包裹的div設(shè)置height,width:50%時(shí),div的高度是有里面的字體撐開的,它的高度不是窗口的一半。按照我們理解的那樣,以百分比的形式給某個元素設(shè)置高度時(shí),它是繼承上一級父元素的高度??墒莂bsolute,在以body做爹爹的時(shí)候,body的高度也是沒有設(shè)定的呀,為什么就可以占滿屏幕的一半呢?代碼如下:<!DOCTYPE?html>
<html?lang="en">
<head>
????<meta?charset="UTF-8">
????<title>Title</title>
????<style>
????????*?{
????????????margin:?0;
????????????padding:?0;
????????}
???????body{background:yellow;}
????????div?{
????????????height:?50%;
????????????width:?50%;
????????????background:?red;
????????????color:?white;
????????????position:?absolute;
????????}
????</style>
</head>
<body>
<div>
????你是最棒的哦!
</div>
</body>
</html>如圖:去掉absolute之后:為什么添加absolute之后就可以自動充滿屏幕的一般呢?而如果沒有absolute的話,高度是自適應(yīng)文字的,它自己給定高度無效,這點(diǎn)可以明白,上面不太懂。
1 回答

帶咸魚
TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個贊
body默認(rèn)就是整個窗口啊 那里面div就占一半了啊 ? 不設(shè)absolute那啥沒有寬高了就內(nèi)容撐開 設(shè)了就默認(rèn)參照body的寬高
添加回答
舉報(bào)
0/150
提交
取消