这是我们在PC端浏览的效果
这是我们在手机上浏览的效果
完整代码:
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <style type="text/css"> ul { padding: 0; margin: 0; } a { text-decoration-style: none; color: white; text-decoration: none; } li { list-style: none; } nav { text-align: center; background: #25383c; } .nav-list-item a{ color:white; display:block; padding:20px 40px; } .nav-list-item:hover> ul{ display:block; } .nav-submenu-list { display: none; } .menu-btn{ border:none; padding:8px 0; } .clearfix{ content:''; display:block; clear:both; } .btn-icon-close{ background:url("./images/cross.png") no-repeat center center; } .btn-icon-menu { background: url("./images/icon.png") no-repeat center center; } .menu-btn-icon{ border:none; width:30px; height:30px; background-size:cover; float:left; cursor:pointer; margin-left:10px; } .nav-submenu-list { background: gray; } @media all and (min-width:480px){ .nav-list-item{ display:inline-block; position:relative; } .nav-submenu-list{ display:none; position:absolute; left:0; top:100%; } .nav-container-list{ max-width:1280px; margin:0 auto; } .menu-btn{ display:none; } } </style> </head> <body> <nav> <div class="menu-btn"> <a href="javascript:void(0)" class="menu-btn-icon btn-icon-close"></a> <div class="clearfix"></div> </div> <ul class="nav-container-list"> <li class="nav-list-item"><a href="">首页</a></li> <li class="nav-list-item"><a href="">关于我</a></li> <li class="nav-list-item"> <a href="">开源项目</a> <ul class="nav-submenu-list"> <li class="nav-submenu-item"><a href="">subitem1</a></li> <li class="nav-submenu-item"><a href="">subitem1</a></li> <li class="nav-submenu-item"><a href="">subitem1</a></li> <li class="nav-submenu-item"><a href="">subitem1</a></li> </ul> </li> <li class="nav-list-item"><a href="">订阅</a></li> </ul> </nav> <script type="text/javascript"> var btn = document.querySelector('.menu-btn-icon'); var menu = document.querySelector('.nav-container-list'); var menuIsCollapse = false; btn.onclick = function () { menuIsCollapse = !menuIsCollapse; if (menuIsCollapse) { menu.style.display = 'none'; btn.classList.remove('btn-icon-close'); btn.classList.add('btn-icon-menu'); } else { menu.style.display = 'block'; btn.classList.remove('btn-icon-menu'); btn.classList.add('btn-icon-close'); } } </script> </body> </html> 代码摘抄自《高性能响应式web开发》