0

我会尽力设置我的场景,以便您理解我的问题。

我的网站目前正在利用 css 媒体查询来跨越屏幕分辨率。我有一个无法在页面加载时隐藏的主向下钻取菜单,否则菜单将无法正确计算其高度,并且无法正确显示。

作为一种在需要时仍然能够隐藏此菜单的方法,我找到了一种隐藏菜单的解决方法,但仍然允许菜单正确计算其在页面加载时的高度。

$(document).ready(function () {
    $(".hide-menu").hide();
    var $drillDown = $("#drilldown");
});

这对于不需要在移动和桌面分辨率上初始显示主菜单的页面非常有用。但是,对于我的产品页面,此解决方案将不起作用。我需要菜单在加载时隐藏移动分辨率,但也需要在加载时显示桌面分辨率。谁能想到一个可行的解决方案?我难住了。这是HTML:

<div class="drill-down-wrapper hide-menu hide-on-load hide-pd-page">
    <div id="drilldown-breadcrumbs" class="breadcrumbs skin-colorful"></div>
    <div id="drilldown" class="skin-colorful">
        <!-- #Include virtual="Menu.txt" -->
    </div>
</div>
4

2 回答 2

3

使用媒体查询根据屏幕分辨率隐藏和显示菜单。

于 2013-08-09T19:10:34.397 回答
0

尝试使用 CSS 来显示/隐藏元素,而不是 jQuery。您可以使用该display规则来执行此操作。举个例子:

.hide-menu-on-load {
  display: none;
}

@media screen and (max-width: 680px) {
  .hide-menu-on-load {
    display: block;
  }
}

注意:display: none从页面流中删除了元素。visibility: hidden保持元素在页面上的流动,但只是将其从视图中删除

于 2013-08-09T19:13:53.523 回答