从侧边栏内的所有 div 中删除固定位置。
将侧边栏和缩略图都包裹在另一个 div 中,并给sidebar-container
这个 div 一个 id。您应该最终得到侧边栏的主要结构:
<div id="sidebar-container">
<div id="blue-box">...</div>
<div id="photo-grid">...</div>
</div>
修复您遇到的任何 CSS 问题。确保网站在两种情况下看起来都很好,当侧边栏有固定位置时,当它没有时。也许您想让侧边栏在这两种情况下都能正常工作。
使用 jQuery(我看到你无论如何都加载它)来确定 的高度#sidebar-container
是否小于窗口的高度,然后才添加position:fixed;
.
jQuery 代码可能是这样的:
function checkHeight() {
var sidebarHeight = jQuery("#sidebar-container").height();
var windowHeight = jQuery(window).height();
if( sidebarHeight <= windowHeight ) {
jQuery("#sidebar-container").css({ 'position' : 'fixed' });
} else {
jQuery("#sidebar-container").removeAttr("style");
}
}
jQuery(document).ready(checkHeight);
jQuery(window).resize(checkHeight);
因此,大屏幕用户将受益于固定侧边栏,而小屏幕用户将能够通过向下滚动查看整个侧边栏。