网页设计菜单栏导航实例 html5导航栏代码


网页设计菜单栏导航实例 html5导航栏代码

文章插图
H5自适应是现在主流的技术 , 导航栏菜单是最常见的一种 , 今天我们一起来学习一下它是如何使用HTML , CSS和JavaScript来构建响应式导航栏和汉堡菜单的 。
这就是它的样子 , 是不是很熟悉呢?
H5导航菜单
好的 , 那就先从HTML开始:
<header class=”header”><nav class=”navbar”><a href=https://www.520longzhigu.com/diannao/”#” class=”nav-logo”>WebDev.
通过这些代码 , 我们实现了:
给header标签指定名为header的CSS类的 , 可以作为导航菜单的容器 。给nav标签指定名为navbar的CSS类 。具有nav-logo类的链接具有nav-menu类的ul在ul内部 , 我们有4个具有nav-item类的li在每个nav-item中 , 都有一个包含nav-link类的链接至于汉堡菜单 , 我已在代码中添加了一个具有hamburger类的div , 且此div中有3个带bar类的span以上就是我们需要的HTML代码 。
现在让我们添加CSS样式重置代码
(此外 , 我们将导入所需的字体 , 并添加一些基本的CSS来重置所有的默认样式 。)
@import url(‘https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,500;1,400&display=swap’);* {margin: 0;padding: 0;box-sizing: border-box;}html {font-size: 62.5%;font-family: ‘Roboto’, sans-serif;}li {list-style: none;}a {text-decoration: none;}现在让我们给每个元素逐个添加样式:
header和navbar:
.header{border-bottom: 1px solid #E2E8F0;}.navbar {display: flex;justify-content: space-between;align-items: center;padding: 1rem 1.5rem;}hamburger样式:
.hamburger {display: none;}.bar {display: block;width: 25px;height: 3px;margin: 5px auto;-webkit-transition: all 0.3s ease-in-out;transition: all 0.3s ease-in-out;background-color: #101010;}其他元素的基本样式:
.nav-menu {display: flex;justify-content: space-between;align-items: center;}.nav-item {margin-left: 5rem;}.nav-link{font-size: 1.6rem;font-weight: 400;color: #475569;}.nav-link:hover{color: #482ff7;}.nav-logo {font-size: 2.1rem;font-weight: 500;color: #482ff7;}完成这些之后 , 看起来应该是这样的:
但是它不是响应式的 , 所以我们还需要添加媒体查询css代码 。
@media only screen and (max-width: 768px) {.nav-menu {position: fixed;left: -100%;top: 5rem;flex-direction: column;background-color: #fff;width: 100%;border-radius: 10px;text-align: center;transition: 0.3s;box-shadow:0 10px 27px rgba(0, 0, 0, 0.05);}.nav-menu.active {left: 0;}.nav-item {margin: 2.5rem 0;}.hamburger {display: block;cursor: pointer;}}这里媒体查询就是通过设置position: fixed; left: -100%;来隐藏nav-menu 。
此外 , 我们将hamburger设置为display: block; , 所以现在可见 。
我们还添加了一个额外的类.nav-menu.active , 它在nav-menu上设置left: 0; 。现在 , 到了添加javascript的时候了 , 以便在我们单击汉堡菜单时 , 会在nav-menu上添加此active类 。
添加JavaScript
const hamburger = document.querySelector(“.hamburger”);const navMenu = document.querySelector(“.nav-menu”);hamburger.addEventListener(“click”, mobileMenu);function mobileMenu() {hamburger.classList.toggle(“active”);navMenu.classList.toggle(“active”);}此处的函数mobileMenu()在hamburger和nav-menu上也添加了一个active类 , 从而打开mobile menu 。单击hamburger时 , 我们可以使用hamburger上的active类来创建X动画 。现在就开始做吧 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: