vue底部导航切换(Vue实战第3章:主页设计之顶部导航栏)
前言
本篇在讲什么
本篇文章主要来制作一个导航栏 ,具体效果就按照下图来处理吧
本篇适合什么
适合初学Vue的小白
想了解建站的同学本篇需要什么
对Html语法有简单认知
对CSS语法有简单认知
对Vue有简单认知
依赖VS Code编辑器本篇的特色
具有全流程的图文教学
重实践 ,轻理论,快速上手
提供全流程的源码内容★提高阅读体验★
👉 ♠ 一级标题 👈
👉 ♥ 二级标题 👈
👉 ♣ 三级标题 👈
👉 ♦ 四级标题 👈目录
♠ 样式 ♠ 新建组件 ♠ 设计显示 ♥ 导航栏背景 ♥ 设置Logo的显示 ♥ 制作右侧导航按钮 ♠ 推送 ♠ 结语♠ 样式
♠ 新建组件
在第一章Vue-router的基础上 ,我们首先在components内新建一个名为NavBar的vue脚本 ,我们将在这个脚本内编写和顶部导航栏相关的内容
很简单的一个脚本 ,我们在App.vue内引用新脚本页面 ,然后直接显示在页面的最顶端
♠ 设计显示
首先我们要明确我们自己的需求 ,然后再去逐步的实现我们的需求
有一个带颜色的长条框框置顶 左上角有一个Logo标志 右上角存放各个跳转按钮 跳转按钮左侧带一个小图标样式♥ 导航栏背景
我们先做一个上居中的长条框框 ,设置好背景颜色 ,和框线粗细
<template> <div> <div class="header"> <!-- todo --> </div> </div> </template> <script> export default { name: "NavBar" } </script> <style> .header{ display: flex; align-items: center; justify-content: space-between; height: 70px; background-color:#F0F0F0; color: #F0F0F0; border: 1px solid #2c2c2c; } </style>如上述代码所示 ,我们做了一个名为header的的div组件 ,在style内给其设置了css的样式,高度 、填充颜色 、变现粗细等 ,最终得到了上图所示的效果
注意:默认下组件是没有贴顶部的 ,这里把App.vue下的margin-top属性删除或设置为0就好了
♥ 设置Logo的显示
我们在导航栏的左侧做一个Logo和title的显示
<template> <div> <div class="header"> <div class="box"> <h1> <img src="../assets/logo.png"> <span>Sun</span> </h1> </div> </div> </div> </template> <script> export default { name: "NavBar" } </script> <style> .header{ display: flex; align-items: center; justify-content: space-between; height: 70px; background-color:#F0F0F0; color: #F0F0F0; border: 1px solid #2c2c2c; } .box{ display: flex; align-items: center; } h1{ display: flex; align-items: center; font: normal 30px Cookie; padding: 0px 20px; color:#2c2c2c; font-family:"Microsoft YaHei"; } </style>如上述代码所示,我们新建了一个box的div模块 ,里面包含了一个h1组件 ,并且h1组件内包含了一张图片和一个title,在下方style设计好css的显示样式,即得到了上述图片演示的样子
♥ 制作右侧导航按钮
需求比较简单 ,我们不需要搜索框和其他组件 ,简单的图片+文字的导航按钮即可 ,整理下需求和资源
需求
个人介绍 工作经历 作品介绍 能力介绍资源(小logo)
<template> <div> <div class="header"> <div class="box"> <h1> <img src="../assets/logo.png" class="img_title"> <span>Sun</span> </h1> </div> <div class="box"> <nav class="nav_link"> <img src="../assets/home.png" class="img_btn"> <router-link class="link_btn" active-class="active" to="/home">首页</router-link> </nav> <nav class="nav_link"> <img src="../assets/data.png" class="img_btn"> <router-link class="link_btn" active-class="active" to="/data">个人介绍</router-link> </nav> <nav class="nav_link"> <img src="../assets/work.png" class="img_btn"> <router-link class="link_btn" active-class="active" to="/work">作品介绍</router-link> </nav> <nav class="nav_link"> <img src="../assets/power.png" class="img_btn"> <router-link class="link_btn" active-class="active" to="/power">能力介绍</router-link> </nav> </div> </div> </div> </template> <script> export default { name: "NavBar" } </script> <style> .header{ display: flex; align-items: center; justify-content: space-between; height: 70px; background-color:#ffffff; color: #ffffff; border: 1px solid #2c2c2c; } .box{ display: flex; align-items: center; } h1{ display: flex; align-items: center; font: normal 30px Cookie; padding: 0px 20px; color:#2c2c2c; font-family:"Microsoft YaHei"; } .img_title{ width: 40px; height: 40px; } .nav_link{ display: flex; align-items: center; padding: 0 30px; } .link_btn{ text-decoration:none; color: #7F7F7F; font-size: 25px; font-weight: normal; } .img_btn{ width: 30px; height: 30px; } </style>我们新增了一个div模块用来存放四个nav组件 ,该组件包含了一个图片和一个router-link组件 ,在css调整一下样式 ,就得到上图所示效果了
♠ 推送
Github https://github.com/KingSun5♠ 结语
略丑 ,就先这样吧 ,后边有空在搞搞效果吧 ,若是觉得博主的文章写的不错,不妨关注一下博主 ,点赞一下博文 ,另博主能力有限,若文中有出现什么错误的地方 ,欢迎各位评论指摘 。
👉 本文属于原创文章 ,转载请评论留言,并在转载文章头部著名作者出处👈
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!