html5中文学习网

您的位置: 首页 > 网页制作 > css教程 » 正文

css中关于定位属性position为fixed的使用记载_CSS教程_CSS_网页制作

[ ] 已经帮助:人解决问题
点评:当一个div想要定位时,我们第一反应是position属性,而position属性除了默认值外,还有absolute,relative和fixed,下面有个不错的示例,不懂的朋友可以参考下
在html中,当一个div想要定位时,我们第一反应是position属性,而position属性除了默认值外,还有absolute,relative和fixed。当被设置成fixed时,可以通过设置left、right、top、bottom的值来相对于body定位。 vyYHTML5中文学习网 - HTML5先行者学习网
vyYHTML5中文学习网 - HTML5先行者学习网
代码: vyYHTML5中文学习网 - HTML5先行者学习网

复制代码
代码如下:
vyYHTML5中文学习网 - HTML5先行者学习网
.my-fiexd{ vyYHTML5中文学习网 - HTML5先行者学习网
position:fixed; vyYHTML5中文学习网 - HTML5先行者学习网
height:40px; vyYHTML5中文学习网 - HTML5先行者学习网
width:40px; vyYHTML5中文学习网 - HTML5先行者学习网
background-color:red; vyYHTML5中文学习网 - HTML5先行者学习网
border:0px; vyYHTML5中文学习网 - HTML5先行者学习网
} vyYHTML5中文学习网 - HTML5先行者学习网
vyYHTML5中文学习网 - HTML5先行者学习网
可是当某个div随着滚动条滚动时而被设置成fixed时(置顶,很多menu都会这样),可能会发生一个小现象(可以说是bug吧)。具体代码就不上了,就说下现象和解决办法吧。 vyYHTML5中文学习网 - HTML5先行者学习网
vyYHTML5中文学习网 - HTML5先行者学习网
假如一个高度为100px的页面有一个id为my-fixed的div,my-fixed的高度为20px,滚动条滚动到30px时,my-fixed被添加fiexd属性,那么此时my-fixed就脱离了页面,相对应的页面高度也要减去20px,页面高度为80px,可能正好此时滚动条所能滚动的最大高度已经小于30px,这个时候my-fixed就会一直在添加和不添加fixed之间不停闪烁,最后my-fixed并没有被添加fixed。 vyYHTML5中文学习网 - HTML5先行者学习网
vyYHTML5中文学习网 - HTML5先行者学习网
解决办法是,给my-fixed外层添加一个div并设置和my-fixed一样的高度,这样当my-fixed脱离时,页面高度就不会减少,闪烁的现象就能很好的避免 vyYHTML5中文学习网 - HTML5先行者学习网
vyYHTML5中文学习网 - HTML5先行者学习网
ps:第一次写博客,文字表达上可能不是很清楚,但大概意思应该是对的,欢迎提问,同时如果有人遇到同样的问题,并有更好的解决办法,请也告诉我
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助