position:fixed ,锚点定位不准确的问题
2014-11-30 14:15
190 查看
解决方案:
1. 参照 stackoverflow 的做法,在主体内容前加一个暗锚
将锚点进行偏移,并隐藏占位:
2. 对于现代浏览器如果支持css的:target声明,可以这么设置:
对于IE这等落后的浏览器是不支持的.
3. 可以使用js去调整scroll,比如使用jQuery:
4. 可以使用jquery-hashchange:
https://github.com/cowboy/jquery-hash...
绑定window.onhashchange事件:
1. 参照 stackoverflow 的做法,在主体内容前加一个暗锚
将锚点进行偏移,并隐藏占位:
.target-fix { position: relative; top: -44px; // 偏移值 display: block; height: 0; overflow: hidden;}
2. 对于现代浏览器如果支持css的:target声明,可以这么设置:
article.a-post:target{ padding-top:44px;}
对于IE这等落后的浏览器是不支持的.
3. 可以使用js去调整scroll,比如使用jQuery:
$(function(){ if(location.hash){ var target = $(location.hash); if(target.length==1){ var top = target.offset().top-44; if(top > 0){ $('html,body').animate({scrollTop:top}, 1000); } } } });
4. 可以使用jquery-hashchange:
https://github.com/cowboy/jquery-hash...
绑定window.onhashchange事件:
$(function(){ /* 绑定事件*/ $(window).hashchange(function(){ var target = $(location.hash); if(target.length==1){ var top = target.offset().top-44; if(top > 0){ $('html,body').animate({scrollTop:top}, 1000); } } }); /* 触发事件 */ $(window).hashchange(); });
相关文章推荐
- position:fixed ,锚点定位不准确的问题
- 解决IE6浏览器下position:fixed固定定位问题
- 解决IE6浏览器下position:fixed固定定位问题
- position:fixed 固定定位(兼容IE6)问题及关闭浮动框的JS
- 解决 IE6 position:fixed 固定定位问题
- 解决IE6浏览器下position:fixed固定定位问题
- 解决 IE6 position:fixed 固定定位问题
- 解决 IE6 position:fixed 固定定位问题!
- 解决 IE6 position:fixed 固定定位问题
- 解决IE6浏览器下position:fixed固定定位问题
- 解决IE6浏览器下position:fixed固定定位问题
- 学习笔记 如何解决IE6 position:fixed固定定位问题{转载}
- 解决IE6下 position的fixed定位问题
- 解决 IE6 position:fixed 固定定位问题
- 解决 IE6 position:fixed 固定定位问题
- 解决 IE6 position:fixed 固定定位问题
- 解决IE6浏览器下position:fixed固定定位问题
- 解决IE6浏览器下position:fixed固定定位问题
- IE6 position:fixed 固定定位问题
- 解决 IE6 position:fixed 固定定位问题(div固定,不随着滚动条滚动)