html之div始终停留在屏幕中间部分,css – 我可以永远保持DIV在屏幕上,但并不总是处于固定位置?...

我发布了一个

sample作为评论,所以我想我会写出一个完整的答案。

标记很简单,但每个部分都有一些重要的注释。

HTML

CSS

#page {

padding: 100px;

width: 300px;

}

#header,

#header-inner { /* Note #1 */

height: 100px;

width: 300px;

}

.scrolling { /* Note #2 */

position: fixed;

top: 0;

}

JavaScript的

//jQuery used for simplicity

$(window).scroll(function(){

$('#header-inner').toggleClass('scrolling', $(window).scrollTop() > $('#header').offset().top);

//can be rewritten long form as:

var scrollPosition, headerOffset, isScrolling;

scrollPosition = $(window).scrollTop();

headerOffset = $('#header').offset().top;

isScrolling = scrollPosition > headerOffset;

$('#header-inner').toggleClass('scrolling', isScrolling);

});

注1

滚动标题将使用position:fixed连接到页面的顶部,但此样式将从内容流中删除内容,这将导致内容跳转,除非其容器保持原始高度。

笔记2

样式属于CSS,但可能难以将某些元素与其原始位置正确对齐。您可能需要通过JavaScript动态设置左或右css属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值