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

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

实现将导航栏固定在顶部需要用到很多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视频教程