响应式导航菜单

响应式导航菜单就是当网页在其他不同视口的样式,不同的设备需要不同的样式

需要掌握的知识

- 掌握媒体查询,如果你不是很懂那就看我写的CSS响应式布局

  • 掌握CSS重的display:none;
  • 简单的JS方法

下面是HTML代码

<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
<title>响应式菜单</title>
<link rel="stylesheet" type="text/css" href="demo01.css"/>
<link href="https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.css" rel="stylesheet">
</head>
<body>
<div class="nav">
<div class="btn">
<i id="btn" class="fa fa-bars"></i>
</div>
<div class="pic"></div>
<ul id="menu" class="clearfix">
<li><a href="#">首页</a></li>
<li><a href="#">产品</a></li>
<li><a href="#">购买</a></li>
<li><a href="#">服务</a></li>
<li><a href="#">联系</a></li>
</ul>
</div>
</body>
</html>

CSS样式

*{
margin:0;
padding:0;
text-decoration:none;
list-style:none;
}
.nav{
background:blue;
width:100%;
position:relative;
}
.pic{
background:url(bottom.jpg) no-repeat;
position:absolute;
width:128px;
height:46px;
top:8px;
left:60px;
}
.btn{
font-size:20px;
color:#fff;
background:#13138a;
display:none;
}
.btn i{
padding:20px;
}
ul{
margin-left:200px; }
ul li{
float:left;
}
ul li a:hover{
background:pink;
}
ul li a{
display:block;
padding:20px 30px;
color:#fff;
}
.clearfix:after{
display:block;
height:0;
content:"";
visibility:hidden;
clear:both;
}
@media screen and (max-width:768px){
ul li{
float:none;
width:100%;
text-align:center;
}
ul{
width:100%;
display:none;
margin:0;
}
.btn{
display:block;
}
.pic{
left:50%;
margin-left:-64px;
}
}

js代码:

<script type="text/javascript">
var btn=document.getElementById("btn");
var menu=document.getElementById("menu");
btn.onclick=function(){
if(menu.style.display=="block"){
menu.style.display="none";
}else{
menu.style.display="block";
}
window.onresize=function(){
var ww=document.documentElement.clientWidth;
if(ww>768){
menu.style.display="block";
}
} }
</script>

当视口大于768px的时候:

当视口小于768px的时候,导航菜单需要隐藏起来:

持续更新,欢迎大家指教

CSS+JS相应式导航菜单的更多相关文章

  1. 响应式导航菜单(css+js)

    1.响应式导航菜单 先来看下效果图把: 当视口大于640px的时候,导航条会显示在外,当视口小于768px的时候,导航菜单需要隐藏起来!代码如下: <!doctype html> < ...

  2. web--响应式导航菜单

    响应式导航菜单 代码如下 HTML代码: <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  3. 下拉的DIV+CSS+JS二级树型菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. python测试开发django-41.crispy-forms设计标签式导航菜单(TabHolder)

    前言 xadmin的详情页面主要是用form_layout布局,学会了完全可以不用写html代码,也能做出很好看的页面. xadmin的html页面是用的Bootstrap3框架设计的,layout布 ...

  5. BootStrap实现简单响应式导航菜单

    用BootStrap实现响应式导航栏,我会对其中的一些样式进行说明.   先上代码,是一个很简单的Demo. <!doctype html> <html> <head&g ...

  6. js实现当前导航菜单高亮显示

    为了增加用户体验度,增加网页的易用性和美观度,往往需要把当前导航菜单以特殊方式显示,通常是高亮显示或有不同于其它菜单的背景,有两种方法可以实现,第一种是用纯css来实现,二是用js辅助css来实现,两 ...

  7. CSS实现弹出导航菜单

    查看实际效果:http://keleyi.com/a/bjac/vksd7321.htm 完整代码,保存在html文件打开也可看到效果: <!DOCTYPE html PUBLIC " ...

  8. 用js实现超链接导航菜单点击切换选中时的状态

    项目中使用到点解导航切换不同的颜色,如果只是li选项卡还好办,这次用到的超链接选项卡,因为a链接每次点击都会刷新,所以浏览器记不住点击的状态,也没法切换点击状态,因为项目中有好多地方要用到,在网上找了 ...

  9. javascript笔记09:javascript的下拉式导航菜单

    <!DOCTYPE html> <html> <body> <script> function hideAll() { for(i=0;i<odi ...

随机推荐

  1. Dcoker 部署Tomcat+redis+war

    1.首先安装redis docker run –name my-redis -d redis 2.安装tomcat并启动 docker run -p 8383:8383 –name tomcat -v ...

  2. How Cocoa Beans Grow And Are Harvested Into Chocolate

    What is Cocoa Beans Do you like chocolate? Most people do. The smooth, brown candy is deliciously sw ...

  3. 国内外主流的三维GIS软件

    我国GIS经过三十多年的发展,理论和技术日趋成熟,在传统二维GIS已不能满足应用需求的情况下,三维GIS应运而生,并成为GIS的重要发展方向之一.上世纪八十年代末以来,空间信息三维可视化技术成为业界研 ...

  4. C++ this指针详解(精辟)

    this 是 C++ 中的一个关键字,也是一个 const 指针,它指向当前对象,通过它可以访问当前对象的所有成员. 所谓当前对象,是指正在使用的对象.例如对于stu.show();,stu 就是当前 ...

  5. Django连接SQL Server,安装相关扩展包及相关配置

    1.python下载 https://www.python.org/downloads/windows/ 2.根据当前windows和python的版本,下载pymssql相应的exe安装文件. ht ...

  6. Linux安装swoole拓展 (一键安装lnmp后安装可用完美)

    一键安装lnmp后安装可用完美 swoole(一键安装完lnmp重启下,之前出现502一直解决不了,不清楚啥情况) 找到对应php版本,在lnmp文件夹的src 1.安装swoole cd /usr/ ...

  7. IIC通信控制的AD5259------在调试过程中遇到的奇葩问题

    首先说一下的遇到的问题: 1.AD5259按照SCL是100KHz的情况下,可以正常接收上位机的数据,但是一段时间后,就不能正确的按照时序来走了 原因在于AD5259在接收到上位机的数据后需要一定的响 ...

  8. C++逆序输出字符串

    使用库函数 //使用库函数 #include <iostream> #include <string> #include <algorithm> using nam ...

  9. OpenSSL之X509系列

    OpenSSL之X509系列之1---引言和X509概述 [引言]    X509是系列的函数在我们开发与PKI相关的应用的时候我们都会用到,但是OpenSSL中对X509的描述并不是很多,鉴于些,我 ...

  10. POJ 1251 & HDU 1301 Jungle Roads

    题目: Description The Head Elder of the tropical island of Lagrishan has a problem. A burst of foreign ...