css导航栏遮挡住垂直滚动条,以及100vw引起的横向滚动条出现

滚动条被导航栏遮住问题

解决前

image-20240707104117304

解决过程

一开始想要body的宽度为整个视口的宽度 100vw view width

image-20240707104405916

不过出现了横向滚动条

于是乎想着给所有元素增加 x轴溢出时隐藏

image-20240707104554737

image-20240707104642536

问题解决,不过顶部的导航栏由于设置了fixed 又把右边导航栏挡住了

可能因为 body 占100视口宽度vw,而滚动条属于多余部分给他隐藏了

可以将该隐藏设置在body

image-20240707105815492

看样子虽然问题得到解决了,不过还是有点问题,由于设置了100vw视口宽度,

这个宽度是不把滚动条算进去的 也就是说滚动条把body挡住了一部分,这也

说明了为什么前面会多出了横向滚动条,是这因为100vw+垂直滚动条的宽度,

导致你想看到完整的body就会出现横向滚动条

优化解决方案

抛弃100vw这种计算单位,使用100%,让他的宽度为html父盒子的100%宽度

而非视口,这样到时候计算body的宽度就为 html+垂直滚动条=100视口宽度

将垂直滚动条宽度包含进去,就不会出现body内容被覆盖而出现横向滚动条了

image-20240707110356736

二者对比

使用100vw和overflow-x hidden 和 width:100%

image-20240707110723641

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值