素材牛VIP会员
div设置了position: fixed属性后如何可以做到随浏览器左右移动?
 Sm***ty  分类:Html5  人气:927  回帖:2  发布于6年前 收藏

把一个div标签,给它的属性设置position: fixed;bottom:0;固定在浏览器的最底部。

这个div标签在浏览器上下滚动的时候,会一直保持在屏幕最底部,这一点没有问题。但问题是当浏览器宽度变的时候,左右移动浏览器左右滚动条,div标签居然会跟着屏幕一起左右滚,屏幕宽度缩小后,div里的某些内容就显示不全了,
这时候需要左右滚动一下就看看挡住了的内容,但是呢浏览器往右边滚,div标签也跟着往右边滚一些,就是看不到被挡住的内容。

想要它也跟一般的页面一样,左右滚动的时候能够看到因屏幕宽度不够而挡住了的内容。

请问要怎么处理这种情况?

<div class="fixedDIV">测试测试测试测试测试测试</div>

css:

.fixedDIV{
        position: fixed;
        z-index: 99;
        bottom: 0; 
        width:300px;
        }

【问题已解决,多谢各位大神给的解决思路!】
只需要加一个计算浏览器左右滚动的js就可以了。
例子如下:

window.onscroll=function(){
    var sl=-Math.max(document.body.scrollLeft,document.documentElement.scrollLeft);
    document.getElementById('fixed').style.left=sl+'px';

};

里面的计算逻辑根据自己的页面的实际需求改变一下就可以了。

 标签:csshtml5

讨论这个帖子(2)垃圾回帖将一律封号处理……

Lv7 码师
过***天 技术总监 6年前#1

使用这个js方法,果然解决了,感谢分享 ,?

Lv6 码匠
遗***迹 学生 6年前#2

根据你要放的位置,再添加一个left:0或者right:0就可以了

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取