111.实战网页建立移动导航

news2024/11/17 19:32:10

本节课我们建立一个移动导航,如下图所示
在这里插入图片描述

首先添加这个button

 <button class="btn-mobile-nav">
          <ion-icon class="icon-mobile-nav" name="menu-outline"></ion-icon>
          <ion-icon class="icon-mobile-nav" name="close-outline"></ion-icon>
        </button>
.btn-mobile-nav {
  border: none;
  background: none;
  cursor: pointer;
}

.icon-mobile-nav {
  width: 4.8rem;
  height: 4.8rem;
  color: #333;
}

在这里插入图片描述

● 然后通过选择器的方式,默认不显示X

.icon-mobile-nav[name="close-outline"] {
    display: none;
  }

在这里插入图片描述

● 之后通过这样的方式来让移动设备上才会显示这样图标
在这里插入图片描述
在这里插入图片描述

 .main-nav {
        background-color: rgba(255, 255, 255, 0.97);  #给导航添加背景
        position: absolute;  #让导航脱离文档流
        top: 0;
        left: 0;  #表示将元素的顶部和左侧都与其父元素的顶部和左侧对齐
        width: 100%;  #占据页面整个宽度
        height: 100vh;  #占据整个页面高度

        display: flex;   #flex布局
        align-items: center;  #使得导航居中
        justify-content: center;  #垂直也居中
    }
    .main-nav-list {
        flex-direction: column;  #让导航垂直摆放
        gap: 4.8rem;  #添加间距
    }

    .main-nav-link:link, .main-nav-link:visited {
        font-size: 3rem;   #字体搞大一点
    }
}

在这里插入图片描述

目前简单的我们就写到这里,后面我们再添加Javascript实际这个功能;

但是默认的情况下,我们还是通过 opacity:0;将页面归为全透明
在这里插入图片描述

   .nav-open .main-nav {
        opacity: 1;
    }

在这里插入图片描述

● 和之前的手风琴一样,默认情况下,是全部透明的,导航将不可见,如果加上nav-open这个class类的话,导航将可见,这个取决去我们点击旁边的按钮通过JS来实现,后面我们会讲解;

● 之后我们来添加动画效果,除此之外,通过透明度的方式并不能真正的将导航隐藏

transition: all 0.5s ;

opacity: 0;
pointer-events: none;  #表示该元素不会响应鼠标事件,比如点击、悬停等
visibility: hidden;  #表示该元素在页面上不可见,但是仍然占据着页面布局中的

位置和空间。这个属性通常用于隐藏某个元素,但是希望它仍然存在于页面中,以便后续操作。与 display: none; 不同的是,display: none; 会将元素从页面中完全移除,不再占据任何空间。
● 同样,在导航出现的时候我们需要把这些参数加上

  opacity: 1;
    pointer-events: auto;
    visibility: visible; 

● 但是这里还有一个问题,我们希望打开的时候这三个杠消失,X图标出现
在这里插入图片描述

   .nav-open .icon-mobile-nav[name="close-outline"] {
        display: block;
    }

    .nav-open .icon-mobile-nav[name="menu-outline"] {
        display: none;
    }

在这里插入图片描述
在这里插入图片描述

● 除此之外,我们还可以做一个动效的效果,使得导航出现的时候,有从右侧滑出的效果;
● 首先将导航移除屏幕

transform: translateX(100%);

在这里插入图片描述

● 接着我们让其完全移出
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

 .nav-open .main-nav {
        opacity: 1;
        pointer-events: auto;
        visibility: visible;
        transform: translateX(0);
    }

在这里插入图片描述

这样当打开的时候就会产生一个从右到左边的动画
● 最后我们可以加上一个动画过渡

 transition: all 0.5s ease-in;
##ease-in 表示动画开始时速度较慢,然后逐渐加速到最大值。这种过渡函数通常用于需要突出动画结束时的效果,比如弹出菜单或者弹窗。

##ease-out 表示动画开始时速度较快,然后逐渐减速到结束。这种过渡函数通常用于需要突出动画开始时的效果,比如下拉刷新或者下拉加载更多。

##除了这两种过渡函数,还有一种常用的过渡函数是 ease-in-out,表示动画开始时速度较慢,然后逐渐加速到最大值,再逐渐减速到结束。这种过渡函数通常用于需要平滑过渡的动画,比如滚动动画、渐变动画等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/682174.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot 使用 EmbeddedDatabaseBuilder 进行数据库集成测试

SpringBoot 使用 EmbeddedDatabaseBuilder 进行数据库集成测试 在 SpringBoot 应用程序中&#xff0c;我们可以使用 EmbeddedDatabaseBuilder 进行数据库集成测试。EmbeddedDatabaseBuilder 是一个测试工具&#xff0c;可以让我们在内存中启动嵌入式数据库&#xff0c;并进行测…

PHY芯片的使用(二)使用Vivado SDK调试网络

在使用ZYNQ或者FMQL的以太网时都需要在Vivado BD中勾选Enet0/1,最好也勾选上UART0/1。 如果就使用这两个外设就可是直接生成bit然后导出硬件启动SDK了。 SDK建立工程中有以太网相关的工程&#xff0c;选用最简单的即可如下图。使用这个工程除了选Enet还要选用串口&#xff0c;…

【C】C语言实现三子棋小游戏

这里写目录标题 游戏的整体框架游戏函数的具体实现&#xff08;这里的函数声明都放到game.h中&#xff0c;函数的实现在game.c中&#xff09;初始化棋盘函数玩家下棋电脑下棋判断输赢判断棋盘是否满了 游戏的逻辑及game()的实现game.hgame.ctest.c 今天带大家用C语言来实现我们…

C语言进阶教程(再论指针和数组3)

文章目录 前言一、a和&a的区别二、数组作为函数参数总结 前言 本篇文章继续讲解指针和数组。 一、a和&a的区别 1.数组名&#xff08;例如 a&#xff09;表示整个数组。当使用数组名时&#xff0c;它会被解释为对整个数组的引用。例如&#xff0c;可以使用 a[0] 来访…

Cadence Allegro PCB设计88问解析(二十九) 之 Allegro中泪滴的使用

一个学习信号完整性仿真的layout工程师 通常添加泪滴的目的是&#xff1a;在一些接插器件或者大焊盘的时候&#xff0c;增强信号线与焊盘之间的连接强度&#xff0c;提高可靠性&#xff1b;二是为了保持高速信号的阻抗连续性&#xff0c;防止阻抗突变等&#xff0c;造成信号完整…

2023年杭州/广州/深圳NPDP产品经理认证线上班报名

产品经理国际资格认证NPDP是新产品开发方面的认证&#xff0c;集理论、方法与实践为一体的全方位的知识体系&#xff0c;为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会&#xff08;PDMA&#xff09;成立于1979年&#xff0c;是…

【数据存储概念】大端存储小端存储

这里写目录标题 大小端介绍大端小端存储的特征如何判断大小端 大小端介绍 本文采用整形来举列子说明大端存储和小端存储的区别及原理 特别注意&#xff1a;大小端模式是指字节序的大小端模式&#xff0c;当一个数据的所占的内存大于一个字节时&#xff0c;就会按照大端或小端…

vscode配置eigen3

目录 1. 头文件包含 2. c_cpp_properties.json 3. CMakeList.txt 4. 完整代码 1. 头文件包含 // Eigen 核心部分 #include <Eigen/Core> // 稠密矩阵的代数运算&#xff08;逆&#xff0c;特征值等&#xff09; #include <Eigen/Dense> 2. c_cpp_properties.…

Linux部署: (根据进程号自动关闭jar程序)或jenkins自动化部署

目录 1. 简单部署方式 1.1 在项目部署位置 1.2 上传需要启动的jar包 复制包名 ps: 注意: 打包时候需添加build依赖 1.3 特别注意一下jar包需要添加的配置和依赖 1.4 根据此jar包名字进行编写shell脚本(启动) 1.5 编写shell脚本关闭(通过进程号关闭) 1.6 vim shutdown…

基于Python+Dlib+OpenCV个人换脸应用智能实现(深度学习+机器视觉)含全部工程源码及视频演示(仅供个人学习,请勿商用)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境相关库包安装 模块实现1. 准备数据2. 提取面部标记3. 调整脸部对齐4. 混合图像5. 校正颜色6. 转换函数7. 交互式界面设计 系统测试工程源代码下载其它资料下载 前言 本项目利用Dlib提供的机器学习、数值计算、图…

Linux远程管理工具

在使用远程管理工具之前&#xff0c;应先设置宿主机 Windows 与虚拟机 Linux 能够连通。这里要注意 VMware 的网卡设置&#xff0c;Linux 中更改网络设置可以使用 ifconfig 和 setup 命令&#xff0c;若还是无法进行远程连接&#xff0c;要么就是 SSH 服务没有启动&#xff0c;…

Vlan(Access、Trunk、Hybrid)与ARP(免费ARP)讲解

目录 Vlan讲解 Vlan标签 二层接口类型 ARP ARP的作用 ARP地址解析报文讲解 免费ARP报文讲解 ARP缓存表 Vlan讲解 Vlan&#xff08;Virtual Local Area Network&#xff09;虚拟局域网&#xff0c;将一个物理的LAN在逻辑上划分为多个广播域&#xff1b;可以理解为一个V…

【MySql】MySql视图

文章目录 视图概念基本使用创建视图修改视图对基表有影响修改基表对视图有影响删除视图 视图规则和限制OJ题目 视图概念 视图就是一张虚拟表&#xff0c;其内容由查询定义。与真实的表一样&#xff0c;视图包含一系列带有名称的列和行数据。视图的数据变化影响到基表&#xff0…

[Web程序设计]实验: 开发工具使用

一、实验目的 &#xff08;1&#xff09;掌握web应用运行所必须的服务端软件使用。 &#xff08;2&#xff09;掌握web应用开发所必须的开发工具使用。 二、实验内容 Tomcat的安装及使用&#xff1b;使用idea开发一个简单的web应用。 三、实验要求 &#xff08;1&#xf…

baichuan-7B的测试教程

1.百川模型介绍 baichuan-7B不仅在C-Eval、AGIEval和Gaokao中文权威评测榜单上,以显著优势全面超过了ChatGLM-6B等其他大模型,并且在MMLU英文权威评测榜单上,大幅领先LLaMA-7B。baichuan-7B是由百川智能开发的一个开源的大规模预训练模型。基于Transformer结构,在大约1.2万…

【Linux】详解进程控制 ( fork函数 | 写时拷贝 | 进程退出 | 进程等待 )

fork函数fork函数初识fork返回值问题fork常规用法 写时拷贝进程退出进程退出码进程退出场景进程如何退出 进程等待僵尸进程进程等待的方法 fork函数 fork函数初识 在linux中fork函数时非常重要的函数&#xff0c;它从已存在进程中创建一个新进程。新进程为子进程&#xff0c;而…

第42步 深度学习图像识别:Mobilenet建模(Tensorflow)

基于WIN10的64位系统演示 一、写在前面 &#xff08;1&#xff09;Mobilenet MobileNet是谷歌研究团队于2017年发布的一种轻量级的深度学习网络架构。这种架构特别适用于移动设备和嵌入式设备上&#xff0c;因为它的模型体积小&#xff0c;计算量少&#xff0c;但又能保持相…

无人船实时路径规划与编队控制仿真研究

源自&#xff1a;系统仿真学报 作者&#xff1a;宋大雷 干文浩 许嘤枝 曲秀青 曹江丽 摘 要 安全和无碰撞导航是无人船正常航行的基础。通过Unity3D构建高保真的虚拟海洋环境&#xff0c;在无人船建模基础上&#xff0c;提出一种面向未知复杂环境的实时路径规划及编队控…

系统空间数据库设计

文章目录 1 .空间数据库2. 空间数据库实体结构属性与空间数据库关联设计 1 .空间数据库 系统空间数据库存储电力管线设备和管网各业务图的地理空间信息&#xff0c; GIS 服务器GeoServer 通过读取空间数据库的实体表中的空间信息确定地物类的位置和几何形状&#xff0c;然后将…

全志V3S嵌入式驱动开发(spi-nor image制作和烧入)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 其实&#xff0c;我们之前就讨论过怎么把image烧入到v3s的spi-nor当中去。当时使用的方法是借助于sunxi-fel工具&#xff0c;烧入的image也比计较小…