javascript - 不要调整粘性 div 的宽度

标签 javascript jquery html css

我有一个粘性 div,如果我滚动它,它会保持在顶部。但它会调整为全屏大小,我希望它保持相同的大小。

这是包装器和粘性类的 CSS 代码:

.wrapper{
margin: 0 auto; 
width: 100%;
height: 180px;
background-color:#fff;
border-top: 0;
-webkit-box-shadow: 0 8px 6px -6px #B8B8B8;
-moz-box-shadow: 0 8px 6px -6px #B8B8B8;
 box-shadow: 0 8px 6px -6px #B8B8B8;
 }

.sticky {
width: 100%;
position: fixed;
left: 0;
top: 0;
z-index: 100;
border-top: 0;
padding-left: 15px;
padding-right: 15px;
-webkit-box-shadow: 0 8px 6px -6px #B8B8B8;
-moz-box-shadow: 0 8px 6px -6px #B8B8B8;
box-shadow: 0 8px 6px -6px #B8B8B8;
}

这是JS代码:

var global = {}; 

$(document).ready(function(){

var element = $(".wrapper");
    offset = element.offset();

global.top = offset.top;
global.height = element.outerHeight();

});

$(window).scroll(function () {

var scroll_top = $(document).scrollTop();

if (scroll_top > global.top ) {
    $('.wrapper').addClass('sticky');
    $("body").css({
        "padding-top": global.height
    });

} else {

    $('.wrapper').removeClass('sticky');
    $("body").css({
        "padding-top": 0
    });
}

});

我还创建了一个 fiddle :http://jsfiddle.net/44ep8dz4/1/

最佳答案

你可以使用inherit:

.sticky {
    width: inherit;
    ...
}

对于小屏的问题,加上这个:

@media(max-width: 768px) {
    .sticky {
        width: 100%;
    }
}

如果屏幕尺寸小于 768px,这将覆盖 width: inherit

演示 jsfiddle .

关于javascript - 不要调整粘性 div 的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27403020/

相关文章:

javascript - 如何将元素 css 转换为 JSON?

javascript - 自定义配置文件 custom_config.js 不工作?

javascript - 如何使用 AJAX 将 JS 变量传递给 Controller ​​?

php - 为 HTML 输入字段格式化 MySQL 查询

javascript - 获取并显示选中的复选框索引

javascript - 正则表达式将 & 转换为 &

javascript - 初学者的 html div 覆盖

javascript - jQuery 在 `$.queue()` 中哪里做动画/计时器?

php - 如何通过从另一个下拉列表中选择值来填充下拉列表?

html - 使用 CSS 指向非事件选项卡的事件选项卡?