css中一篇关于定位属性position为fixed的如何使用记载

虽然春天的劲风,着实让我不太喜欢,但不得不说,春天是个好季节,俗话说 "一年之际在于春 ",春天是一年的开始,也是让人充满希望和幻想的季节。刚刚历经了寒冬的人们,开始在春天慢慢苏醒,他们慢慢的重拾自己的梦想,渐渐骨起斗志,一步步朝着自己的梦想出发,一点点靠近理想的终端。
在html中,当一个div想要定位时,我们第一反应是position属性,而position属性除了默认值外,还有absolute,relative和fixed。当被设置成fixed时,可以通过设置left、right、top、bottom的值来相对于body定位。

代码:
复制代码
代码如下:

.my-fiexd{
position:fixed;
height:40px;
width:40px;
background-color:red;
border:0px;
}

可是当某个div随着滚动条滚动时而被设置成fixed时(置顶,很多menu都会这样),可能会发生一个小现象(可以说是bug吧)。具体代码就不上了,就说下现象和解决办法吧。

假如一个高度为100px的页面有一个id为my-fixed的div,my-fixed的高度为20px,滚动条滚动到30px时,my-fixed被添加fiexd属性,那么此时my-fixed就脱离了页面,相对应的页面高度也要减去20px,页面高度为80px,可能正好此时滚动条所能滚动的最大高度已经小于30px,这个时候my-fixed就会一直在添加和不添加fixed之间不停闪烁,最后my-fixed并没有被添加fixed。

解决办法是,给my-fixed外层添加一个div并设置和my-fixed一样的高度,这样当my-fixed脱离时,页面高度就不会减少,闪烁的现象就能很好的避免

ps:第一次写博客,文字表达上可能不是很清楚,但大概意思应该是对的,欢迎提问,同时如果有人遇到同样的问题,并有更好的解决办法,请也告诉我

到此这篇关于css中一篇关于定位属性position为fixed的如何使用记载就介绍到这了。我们都有能力去解决别人的问题,却没有自信面对自己的困难。更多相关css中一篇关于定位属性position为fixed的如何使用记载内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
css让页脚保持在底部位置的四种方案

CSS如何使用Flex和Grid布局如何实现3D骰子

Flex布局史上最简单使用语法教程

新的CSS 伪类函数 :is() 和 :where()示例详解

纯CSS打字动画的如何实现示例