设计响应布局时,如下所示,我遇到了一些麻烦:向下推.slideToggle内容()
如果您浏览到http://www.wickersleysixthform.net你可以看到在行动这一点。
基本上我试图创建一个响应菜单,所以在768px和以上的浏览器中,你会看到一个正常的水平导航。然后,对于481px以下的任何内容,您将看到“三行”菜单,其中一个按下的.slideToggle()效果会按下菜单。
我可以得到这个工作,但.slideToggle()没有推动我需要做的其他内容。如果我手动重新调整浏览器屏幕的大小,如果我调整大小然后刷新它将执行的页面,这三行也不会出现,但如果我这样做,那么较大屏幕大小的正常链接不会显示。我希望这是有道理的。
这是我在jQuery(document).ready(function($){})中切换时使用的jQuery;
/* getting viewport width */
var responsive_viewport = $(window).width();
/* if is below 481px */
if (responsive_viewport < 481) {
$(".top-nav").before('<div id="menu">☰</div>');
$("#menu").click(function(){
$(".top-nav").slideToggle();
});
}
/* if is above or equal to 768px */
if (responsive_viewport >= 768) {
$(".top-nav").show();
}
任何人都可以帮忙吗?毫无疑问,这很简单,但它让我疯狂。可能基于CSS而不是jQuery?
我正在使用的CSS如下(在我的基地/移动样式表)。
.header {
background-color:@blue;
padding-top:10px;
height:50px;
}
#menu {
display:block;
font-size:1.75em;
position: absolute;
right: 10px;
top: 2px;
}
.top-nav {
display:none;
}
.top-nav.open {
display:block;
background:@blue;
}
在我的768和高达样式表:
.header {
padding-top:0;
height:70px;
position:fixed;
width:100%;
z-index:10;
}
#menu {
display:none;
}
.top-nav {
display:block;
}
我的HTML结构:
<header class="header" role="banner">
<div id="inner-header" class="wrap clearfix">
<a rel="nofollow" href="http://www.wickersleysixthform.net">
<img id="logo" width="50px" height="36px" src="http://www.wickersleysixthform.net/wp-content/themes/sixthform/library/images/white.png">
</a>
<nav role="navigation">
<div id="menu">☰</div>
<ul id="menu-main-menu" class="nav top-nav clearfix">
<li><a href="http://www.wickersleysixthform.net/">About</a></li>
<li>
<a href="http://www.wickersleysixthform.net/current/">Current Students</a>
<ul class="sub-menu"></ul>
</li>
<li><a href="http://www.wickersleysixthform.net/courses/">Courses</a></li>
<li><a href="http://www.wickersleysixthform.net/student-life/">Student Life</a></li>
<li><a href="#">Prospectus</a></li>
<li><a href="http://www.wickersleysixthform.net/apply/">Apply</a></li>
<li><a href="http://www.wickersleysixthform.net/contact/">Contact</a></li>
</ul>
</nav>
</div>
</header>
最有可能的元素正在下滑是不正常的文档流。我们需要看到CSS和HTML。 –
@KevinB - 我认为看看网站会比较容易,而不是显示它,这就是为什么我没有包含它。我可以发布它,但如果这将有所帮助? – jakobjames
@EnigmaRM - 在英国,学生被评为A - E,A * - C和A * - C(包括数学和英语),学校/第六种形式,然后工作这个到他们的数据! – jakobjames