html图片放大后父元素没有内撑开,子元素采用absolute定位,父元素没有设置高度,可是为什么仍然子元素会被撑开?...

博客探讨了CSS中绝对定位(absolute)与高度百分比设置的问题。当不使用绝对定位时,div的高度由内容决定。而添加了absolute后,div能占据屏幕一半,这是因为此时body被视为包含块,即使其高度未明确设置。文章通过代码示例解释了这种行为,并引发了关于CSS布局理解的讨论。
摘要由CSDN通过智能技术生成

如果我没有设置绝对定位的话,不给html,body设置{height:100%,weight:100%}时,单独的给下面包裹的div设置height,width:50%时,div的高度是有里面的字体撑开的,它的高度不是窗口的一半。

按照我们理解的那样,以百分比的形式给某个元素设置高度时,它是继承上一级父元素的高度。

可是absolute,在以body做爹爹的时候,body的高度也是没有设定的呀,为什么就可以占满屏幕的一半呢?

代码如下:html>

Title

* {

margin: 0;

padding: 0;

}

body{background:yellow;}

div {

height: 50%;

width: 50%;

background: red;

color: white;

position: absolute;

}

你是最棒的哦!

如图:

3c3161c8bca9e79164b87b72f3bab43d.png

去掉absolute之后:

41f2a4a7d8ca5fb9fbc4ff908c3a0066.png

为什么添加absolute之后就可以自动充满屏幕的一般呢?

而如果没有absolute的话,高度是自适应文字的,它自己给定高度无效,这点可以明白,上面不太懂。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值