将导航栏固定在页面顶部的方法(图文详解)

yulia
yulia 原创
2018-10-27 10:43:14 43900浏览

大家在浏览网站时有没有发现,几乎每个网站都有导航栏,而且有些导航可以固定在顶部不动,不管滚动条移动到哪里,都会固定在一个位置,你知道顶部固定导航栏怎么写吗?这篇文章就给大家讲讲如何使导航栏固定在顶部,以及导航栏固定在顶部的代码,有一定的参考价值,感兴趣的朋友可以看看。

实现将导航栏固定在顶部需要用到很多CSS中的属性,比如float浮动,position定位, list-style-type属性等等,如有不清楚的同学可以参考PHP中文网的相关文章,或者访问CSS视频教程,希望可以帮助到你。

实例详解:用html和css将导航栏固定在顶部

HTML部分:

创建一个ul标签用于制作无序列表,因为需要页面跳转的效果,还要在li标签中插入a标签,将导航内容写入a标签中。最后创建一个div,将div高度设为1500px,当滑动滚动条时,方便观察导航栏的位置,具体代码如下

<ul>
   <li><a class="active" href="#home">首页</a></li>
   <li><a href="#news">新闻动态</a></li>
   <li><a href="#contact">联系我们</a></li>
   <li><a href="#about">关于我们</a></li>
</ul>   
<div style="background-color:pink;height:1500px;"></div>

CSS部分:

基本框架已经搭建出来了,现在用CSS美化页面,用 float: left将无序列表左边浮动,排列在一行,用Padding调整导航之间的间距,用hover伪类选择器设置鼠标悬停效果,当鼠标经过导航时呈现红色,当导航被激活时,呈现黄色。最重要的一步就是将导航栏固定在页面顶部,我们用position: fixed这个属性,然后将它距离顶部的举例设为0(即top: 0),这样固定在顶部的导航就做好了,详细代码如下:

*{margin:0;padding: 0;}
   ul{
       list-style-type: none;
       overflow: hidden;
       background-color: #333;
       position: fixed;
       top: 0;
       width: 100%;
   }  
   li {
       float: left;
   }   
   li a {
       display: block;
       color: white;
       text-align: center;
       padding: 14px 16px;
       text-decoration: none;
   }   
   li a:hover:not(.active) {
       background-color: red;
   }   
   .active {
       background-color: yellow;
   }

效果图:

abc.jpg

由图可见,当滚动条往下滑动时,导航栏的位置没有发生变化,一直固定在顶部,实现导航栏固定在顶部的效果,最关键的一步就是使用定位 position并将其属性值设为 fixed,举例顶部的距离top设为0。

以上给大家介绍了导航栏固定在顶部的实现方法,比较详细,刚刚接触前端的小伙伴,一定要自己动手尝试,看看自己能不能实现更加炫酷的效果,希望这篇文章对你有所帮助!

更多相关视频教程请访问 CSS3视频教程

以上就是将导航栏固定在页面顶部的方法(图文详解)的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。