Javascript 浮动div占用整行空间,而不是仅使用左侧空间

Javascript 浮动div占用整行空间,而不是仅使用左侧空间,javascript,css,Javascript,Css,请看下面的网页。从我发布的源代码中,您可以看到浮动div实际上位于图像div的下方,但是在页面上,图像div保持在浮动div的下方。但是我希望浮动div保持在侧栏上,并将图像div移动到主菜单的正下方 基本上我只想要一个浮动div,这样当我向下移动页面时,浮动div将始终保持在相同的位置。如何使左侧的浮动div只占用左侧的空间。我不希望图像div位于浮动div行下面。我应该改变css样式吗 我的css: .fl_left{float:left;} .clear { clear:both

请看下面的网页。从我发布的源代码中,您可以看到浮动div实际上位于图像div的下方,但是在页面上,图像div保持在浮动div的下方。但是我希望浮动div保持在侧栏上,并将图像div移动到主菜单的正下方

基本上我只想要一个浮动div,这样当我向下移动页面时,浮动div将始终保持在相同的位置。如何使左侧的浮动div只占用左侧的空间。我不希望图像div位于浮动div行下面。我应该改变css样式吗

我的css:

.fl_left{float:left;}
.clear {
     clear:both;
}

div#sticker {
    display: block;
    padding:20px;
    margin:20px 10px;
    background:#fff;
    width:170px;
    text-align: center;
}
.stick {
    position:fixed;
    top:0px;
}
我的javascript我正在使用jQuery:

<script type="text/javascript">
$(document).ready(function() {
    var s = $("#sticker");
    var pos = s.position();                    
    $(window).scroll(function() {
        var windowpos = $(window).scrollTop();
        if (windowpos >= pos.top) {
            s.addClass("stick");
        } else {
            s.removeClass("stick"); 
        }
    });
});
</script>
我的html:

<div class="wrapper row2">
    <div><img src="../images/Homepage_image.jpg" alt="" /></div>
</div>
<div class="fl_left" id="sticker">
  <p class="wechatholder"><img src="../images/wechat.png" alt=""/></p>
  <p>微信号: linaielts</p>
  <p>关注微信客服号获取更多优惠信息</p>
</div>
<div class="wrapper row3">
</div>

您的“贴纸”是浮动的,但它仍然需要一点170px宽的空间,因此如果下一个div或其他元素应该是100%宽的,那么它将没有足够的空间容纳贴纸

将下一个元素的宽度减少170px,它应该适合

.row3 {width: calc(100% - 170px);}

这不是因为jquery将标签设置为position:fixed;排名:0;或者这是在你滚动之前发生的?也许将divsticker设置为inline block而不是block。另外,请为wrapper和row2提供css