我的页面上有一个固定的标题 div #header
,它在开始滚动之前position: fixed;
覆盖了主要内容 div 。最初移动到下面的一种解决方案是添加一个到. 但是,我的模板是响应式的,并且标题在不同的设备上会有不同的高度。有没有办法将css添加到低于20px的位置,而不依赖于实际的高度?#main
#main
#header
margin-top
#main
#main
#header
#header
问问题
774 次
2 回答
0
为什么不使用 z-index 覆盖 header 和 padding-top:20px 的#main。
于 2013-07-25T16:29:29.130 回答
0
不幸的是,不,如果不在内容上使用 margin-top(或 padding-top),这在 css 中是不可能的,因为给标题 'position:fixed' 会将其从文档流中删除,因此页面不会知道它关于相对定位其下方的任何内容。
这个问题的 jQuery 解决方案是计算页面加载时标题的高度,并将该值添加到 main.js 的顶部。
这是一个例子:http: //jsfiddle.net/CxqrY/
$(document).ready(function(){
var height = $('.header').height();
$('.main').css('padding-top', height);
});
这将在页面加载时起作用,但在方向改变时不起作用。为此,您需要一个调整大小的功能:http: //jsfiddle.net/gSFYx/
$(window).resize(function() {
var height = $('.header').height();
$('.main').css('padding-top', height);
});
于 2013-07-25T16:56:46.283 回答