尽管我的原始帐户神秘地消失了,但这是我对本网站上天才的问题:
很长一段时间以来,我一直在“尝试”从头开始构建一个响应Wordpress主题,以便我可以将所有想法保存在一个网站上。问题恰好出现在导航菜单中。我有一些CSS在600px宽度的移动平台上做正义。但是,在大于600px的屏幕上,我设置了导航栏,使其固定在网页上并在向上和向下滚动时保持其位置。当小于600像素的屏幕访问该网站时,我将其设置为导航栏应从固定位置更改为相对位置。尽管我在样式表中改变了,但我似乎无法将导航栏从固定状态切换到相对状态。
问题图片: http://i.gyazo.com/9e8ac2c12d279bba4e5ff98418c9b0ed.png
正常在600px以上的页面上: http://i.gyazo.com/b54486fb441717e79ed9bd3b44ba2710.png
这是代码。正如您所看到的,当设置为600px以下的大小时,位置应该保持相对,但它不会:
.main-navigation {
position: fixed;
float: left;
width: 100%;
display: block;
clear: both;
font-family: 'Open Sans', sans-serif;
background: url('nav-bg.png') repeat center;
color: #fff;
-webkit-box-shadow: 0 3px 6px 0px black;
-moz-box-shadow: 0 3px 6px 0px black;
box-shadow: 0 3px 6px 0px black;
z-index: 999999;
}
.main-navigation ul {
list-style: none;
margin: 0;
padding-left: 0;
}
.main-navigation li {
float: left;
}
.main-navigation a {
display: block;
padding: 2.5em 3.5em;
font-size: 14px;
font-size: 1.4rem;
text-decoration: none;
line-height: 1.4em;
color: white;
color: hsl(0, 0%, 100%);
}
.main-navigation ul ul {
position: absolute;
left: 0;
z-index: 99999;
display: none;
float: left;
padding: 0;
background-image: url('nav-bg2.png');
}
.main-navigation ul ul ul {
left: 100%;
top: 0;
}
.main-navigation ul ul a {
width: 200px;
}
.main-navigation ul ul li {}
.main-navigation li:hover > a {
color: #fff;
color: hsl(0, 0%, 100%);
background: #313131;
opacity: 0.4;
}
.main-navigation ul ul :hover > a {}
.main-navigation ul ul a:hover {
background: #313131;
background: hsl(0, 0%, 19%);
}
.main-navigation ul li:hover > ul {
display: block;
}
.main-navigation ul ul li:hover > ul {
display: block;
}
.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a:hover,
.main-navigation .current-menu-item > a:hover {
-moz-box-shadow: inset 0 0 15px #000000;
-webkit-box-shadow: inset 0 0 15px #000000;
box-shadow: inset 0 0 15px #000000;
color: #fff;
}
.main-navigation .current_page_ancestor {
-moz-box-shadow: inset 0 0 15px #000000;
-webkit-box-shadow: inset 0 0 15px #000000;
box-shadow: inset 0 0 15px #000000;
}
.main-navigation ul ul .current_page_parent,
.main-navigation .current_page_parent .current_page_item > a {
-moz-box-shadow: inset 0 0 15px #000000;
-webkit-box-shadow: inset 0 0 15px #000000;
box-shadow: inset 0 0 15px #000000;
}
/* Menu Resize */
.menu-toggle {
display: none;
}
@media screen and (max-width: 600px) {
.menu-toggle {
display: block;
height: 3.75em;
padding: 0 1em;
font-weight: normal;
font-size: 14px;
font-size: 1.4rem;
text-decoration: none;
line-height: 3.75em;
color: white;
background-image: url('nav-bg2.png');
position: relative;
}
.main-navigation.toggled .nav-menu {
display: block;
border-top: 1px solid;
border-top-color: #fff;
border-top-color: hsla(0, 0%, 100%, .5);
}
.main-navigation ul {
display: none;
text-align: center;
padding-left: 0;
background-image: url('nav-bg2.png');
}
.main-navigation li {
float: none;
}
.main-navigation li a {
padding: 1.3em 2em;
}
.main-navigation li li a {
padding-left: 4em;
}
.main-navigation li li li a {
padding-left: 6em;
}
.main-navigation li:hover > a {
background: #313131;
background: hsl(0, 0%, 19%);
}
.main-navigation ul ul,
.main-navigation ul ul ul {
position: relative;
top: inherit;
left: 0;
display: block;
float: none;
background-image: url('nav-bg2.png');
}
.main-navigation ul ul a { width: 100%; }
.main-navigation ul a:hover,
.main-navigation ul ul a:hover {
background: #4d4d4d;
background: hsl(0, 0%, 30%);
}
.main-navigation .current_page_ancestor { background: inherit; }
.main-navigation ul ul .current_page_parent {
color: inherit;
background: inherit;
}
.main-navigation .current_page_item > a,
.main-navigation .current_page_item > a:hover,
.main-navigation .current_page_item li:hover,
.main-navigation .current_page_parent .current_page_item > a {
-moz-box-shadow: inset 0 0 15px #000000;
-webkit-box-shadow: inset 0 0 15px #000000;
box-shadow: inset 0 0 15px #000000;
}
}
答案 0 :(得分:1)
你永远不会将.main-navigation
的位置设置回相对位置 - 你这样做.menu-toggle
(我假设你是下拉按钮?)
尝试添加此内容:
@media screen and (max-width: 600px){
.main-navigation {
position: relative;
float: none;
}
}