html脱离文档流,css固定定位脱离文档流怎么解决?

在我们做WEB前端开发写CSS样式的时候,有时需要使用到固定定位fixed,使用固定定位的话有时会出现固定定位的层脱离了文档流的问题,原因是没有给父级层设置相应的高度造成的,下面本篇给大家介绍一下如何解决这个问题。

dfad13a345cb16783b7718def1f41d1f.png

具体介绍

我们需要创建一个简单的示例demo.html文件,然后里面放上两个DIV并设置背景色,给子DIV设置高度,代码如图

bdb4732d0da8abf6b40d65b745d00727.png

接下来,我们运行看看,可以看到,当前的情况下,父DIV会因为子DIV的高度而被撑起来,如图所示

ada575c46a80cc30279e42ddf94d0c39.png

然后我们给子DIV设置固定定位position:fixed;,然后浏览器运行查看就会发现,父DIV不会再根据子DIV的高度撑起来,也就是我们常说的脱离文档流了。

.parent{

padding: 50px;

background: #000;

}

.son{

/*设置固定定位*/

position:fixed;

width: 200px;

height: 200px;

background: red;

}

f85be81e295f27960564eeb24cbfe0e9.png

解决方案1:

我们可以强行给父级DIV设置相应的高度,代码及运行效果如图,这个方案的缺点是不够灵活,需要自己计算要设置的高度。.parent{

/*解决方法1:css强制设置父模块宽度高度*/

height: 200px;

padding: 50px;

background: #000;

}

.son{

/*设置固定定位*/

position:fixed;

width: 200px;

height: 200px;

background: red;

}

e9b180b41fbb07a977cd57b97d01c550.png

解决方案2:

我们可以使用JS设置父级DIV的高度等于子DIV,代码及运行效果如图

fb29373ed7e938aa8efb93d2e2c10436.png

1c13f3d33bd58a100d7a906fd9f56f26.png

注意事项

需要注意浏览器兼容性的问题

本文作为示例只是以简单的情况告诉大家解决问题的思路,具体项目中需要更具体的解决方案

更多web前端自学知识,请查阅 HTML中文网 !!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值