在我的网站上,我有一个菜单,当您向下滚动到100像素时,菜单会将自己固定到浏览器的顶部(顶部:0px;位置:固定;)。
然而,我需要的是在左边的菜单内的一个小标志不显示,而菜单是在原来的位置(顶部:100像素;position:relative)但是当用户向下滚动页面并且菜单固定在浏览器窗口的顶部(top:0px;位置:固定;)
我的代码在下面。我试图做一个JS小提琴,但我不能重复我的html文件中的内容。
断续器
#menu, #menu ul {
margin: 0 auto;
padding: 0;
background-color: #FFFFFF;
}
#menu {
display: table;
width: 100%;
list-style: none;
position: relative;
top: 0px;
text-align: center;
-webkit-box-shadow: 0px 3px 23px 0px rgba(50, 50, 50, 0.75);
-moz-box-shadow: 0px 3px 23px 0px rgba(50, 50, 50, 0.75);
box-shadow: 0px 3px 23px 0px rgba(50, 50, 50, 0.75);
font-size: 18px;
height: 30px;
z-index: 101;
}
#menu.fixed {
position: fixed;
top: 0;
width: 100%;
}
#menu li {
display: table-cell;
list-style: none;
padding-right: 50px;
left: 50px;
vertical-align:middle;
}
#menu > li:hover > ul {
background:#FFF;
display: block;
left: 0;
width: 100%;
-webkit-box-shadow: 0px 3px 23px 0px rgba(50, 50, 50, 0.75);
-moz-box-shadow: 0px 3px 23px 0px rgba(50, 50, 50, 0.75);
box-shadow: 0px 3px 23px 0px rgba(50, 50, 50, 0.75);
}
#menu > li > ul {
display: none;
position: absolute;
text-align: center;
}
#menu li a {
display: block;
padding: 10px 10px;
text-decoration: none;
font-weight: lighter;
white-space: nowrap;
color: #333;
}
#menu li a:hover {
color: #CCCCCC;
font-size: 18px;
vertical-align: middle;
}
#menu li ul li {display: inline-block;
float:none; }
HTML(logo.png是当菜单固定在浏览器顶部时需要出现的内容)
<ul id="menu" name="menu">
<li><img src="logo.png" width="100" height="31" />
</li>
<li>
<div><a href="#">About Us</a>
</div>
</li>
<li><a href="#">Services</a>
<ul>
<li><a href="#">Plumbing</a>
</li>
<li><a href="#">Heating</a>
</li>
<li><a href="#">Plastering</a>
</li>
<li><a href="#">Decorating</a>
</li>
<li><a href="#">Varnish</a></li>
<li><a href="#">Greenery</a></li>
</ul>
</li>
<li><a href="#">Community</a>
<ul>
<li><a href="#">Help US!</a>
</li>
<li><a href="#">Charity Work</a>
</li>
<li><a href="#">Impress Us...</a>
</li>
<li><a href="#">Careers</a>
</li>
</ul>
</li>
<li><a href="#">Contact</a>
</li>
<li><a href="#"><img src="logocrc.png" width="100" height="25" /></a>
</li>
</li>
<li><a href="#"><img src="logoruskin.png" width="100" height="28" /></a>
</li>
</li>
<li><a href="#">Blog</a>
</li>
Javascript(当用户向下滚动100px时,这会使菜单固定在顶部)
<script>
$(document).scroll(function () {
var y = $(document).scrollTop(),
header = $("#menu");
if (y >= 100) {
header.addClass('fixed');
} else {
header.removeClass('fixed');
}
});
</script>
这就是你所需要的吗?
var logo = $('#menu li:first-child img');
if (y >= 100) {
header.addClass('fixed');
logo.show();
} else {
header.removeClass('fixed');
logo.hide();
}
给您的图像一个id
<script>
$(document).ready(function(){
//hides them logo when the page loads
$("#myImage").hide();
});
$(document).scroll(function () {
var y = $(document).scrollTop(),
image = $("#myImage"),
header = $("#menu");
if (y >= 100) {
//show the image and make the header fixed
header.addClass('fixed');
image.show();
} else {
//put the header in original position and hide image
header.removeClass('fixed');
image.hide();
}
});
</script>
我用html、css和JavaScript创建了一个响应式导航栏。当页面宽度小于768px时,将显示条形图标,单击该图标时,将显示导航菜单。问题是当导航菜单出现时,页面仍在后台滚动。导航菜单下的滚动应该停止。 null null
我的问题是,一旦页脚进入视口,侧边栏就不应该被修复。 我发现了几十个关于固定边栏的问题,但是我在这里找到的答案并没有解决我的问题。 我在这里发现了类似的东西,但我的问题是,我不能应用这个解决方案,因为我的超文本标记语言结构不同。我也希望你的答案是纯js而不是jQuery
我有一个菜单和一个子菜单。仅当将鼠标悬停在子菜单上时,才会显示该子菜单。问题1:我希望它永久显示。问题2:我希望它水平显示(而不是像现在那样垂直显示)。要明白我的意思,去http://appartement-met-zeezicht.be并停留在“英语”上。“英语”项下显示的内容应以水平(而非垂直)方式永久性地显示。谢谢!! /子菜单/ . tinynav,. tinynav1{显示:无;}
如何在活动启动上显示“滑动菜单”?我正在使用导航抽屉显示幻灯片菜单如下代码 `public class MainActivity extends Base_Activity{private DrawerLayout MDrawerLayout;public static ListView MDrawerList;private ActionBarDrawerToggle MDrawerToggle
我正在尝试用laravel动态显示菜单。 我有两个表,一个是主类,另一个是子类 下面是分类表的结构 子类别结构 这是我尝试过的 我面临的问题是,由于foreach循环,它每次都会复制主类别,例如 如您所见,每次显示子类别时,它都会复制主类别。我怎么能显示主要类别一次,然后所有子类别下面它 我有另一个模板,它有不同的菜单HTML结构 它一次又一次地生成ul和div,从而导致html错误
我的菜单显示向下,但然后水平。 我希望每一个导航项目都显示下来,在彼此的上面。 现场测试站点URL:ministerios-elim.herokuapp.com CodePen:(无法使菜单在单击CodePen时出现)。 https://codepen.io/ogonzales/pen/abnqxlg 更新2: 更新3: