网站导航栏下滑隐藏,上滑显示,效果杠杆,兼容性强

前言

导航栏是网站必不可少的一部分,那么,导航栏应该怎么样子实现,可以高效自定义兼容开发呢?当然,不仅要实现,而且还要实现导航栏顶部固定位置,下拉隐藏,稍微往上滑动就会出现,而且到顶端就直接显示在原有的位置。实现功能的同时,还要平缓的过渡?下面我们将一起探讨下如何去实现

一、实现的案例

实现功能:

1、左边为logo。logo有一个刷新动作

2、右边为导航栏目录

3、下拉实现隐藏

4、上滑实现固定头部

5、到达顶部显示默认位置

二、实现代码

1.html

<div><div class="top-bar"><div class="new-header container clearfix"><div class="top-bar-left pull-left navlogo"><a class="logo box" src="#"><img src="https://www.zhaojiajuwang.com/img/common/ativity_2.png" alt=""><b class="shan"></b></a></div><div class="top-bar-left header-nav fl"><ul class="top-bar-menu nav-pills"><li class="navbar-item"><a href="">首页</a></li><li class="navbar-item"><a href="">商城中心</a></li><li class="navbar-item"><a href="">公司简介</a></li><li class="navbar-item"><a href="">活动专区</a></li><li class="navbar-item"><a href="">详情介绍</a></li><li class="navbar-item"><a href="">商家中心</a></li></ul></div></div></div></div>

2.js

$(function() {var f = $(".top-bar");var R = $(document).scrollTop();var d = $(document);var L = $(".fixed-nav").outerHeight();$(window).scroll(function() {var a = $(document).scrollTop();if (d.scrollTop() >= 30) {f.addClass("fixed-nav");$(".navTmp").fadeIn()} else {f.removeClass("fixed-nav fixed-enabled fixed-appear");$(".navTmp").fadeOut()}if (a > L) {$(".fixed-nav").addClass("fixed-enabled")} else {$(".fixed-nav").removeClass("fixed-enabled")}if (a > R) {$(".fixed-nav").removeClass("fixed-appear")} else {$(".fixed-nav").addClass("fixed-appear")}R = $(document).scrollTop()})
});

3.css

.top-bar {position: relative;width: 100%;z-index: 69;box-shadow: 0px 5px 40px 0px rgba(17,58,93,0.1) !important;background-color: rgba(255,255,255,1);border-top: 0px solid rgba(221, 221, 221, .221);
}
.container {max-width: 1300px;
}
.new-header {border-bottom: 1px solid rgba(0,0,0,.05);background-color: rgba(255,255,255,0);position: relative;background-image: url(https://www.qiyueyun.cn/zb_users/theme/downlee/style/images/top-fr-bg.png);background-position: center right;background-size: auto 100%;
}
.shan {content: "";position: absolute;-webkit-animation: changeImg 3.5s;-o-animation: changeImg 3.5s;animation: changeImg 3.5s;top: 0;width: 30%;height: 100%;background: linear-gradient(to right,rgba(255, 255, 255, 0.25) 0,rgba(255, 255, 255, 0.58) 50%,rgba(255, 255, 255, 0.25) 100%);transform: skewX(-45deg);animation-iteration-count: infinite;-moz-animation-iteration-count: infinite;-webkit-animation-iteration-count: infinite;
}
@-webkit-keyframes changeImg {from {left: -100%;}100% {left: 200%;}
}
.pull-left {float: left;
}
a.logo.box {position: relative;overflow: hidden;display: block;cursor: pointer;margin: 0 auto;line-height: 50px;white-space: nowrap;
}
a.logo.box img {display: inline-block;height: 57px;
}
.top-bar-left.header-nav {margin-left: 30px;
}
.nav-pills {float: left;font-size: 14px;
}
.nav-pills li {width: auto;position: relative;list-style: none;display: block;float: left;margin-right: 30px;
}
.nav-pills li:before {width: 0;height: 2px;position: absolute;bottom: -1px;left: 50%;background-color: #0188FB;content: '';transition: all .6s;z-index: -1;
}
.nav-pills li a {line-height: 57px;display: block;color: #000000;font-size: 15px;
}
.nav-pills > li:hover:before{width: 100%;left: 0;
}.nav-pills li:hover > a{color: #0188FB;
}
.top-bar.fixed-nav{left: 0;top: 0;width: 100%;-webkit-transition: all .3s ease-out 0s;-o-transition: all .3s ease-out 0s;transition: all .3s ease-out 0s;
}
.fixed-nav.fixed-enabled {position: fixed;top: -60px;z-index: 9999;-webkit-animation-name: slideDown;-moz-animation-name: slideDown;-o-animation-name: slideDown;animation-name: slideDown;
}
.fixed-nav.fixed-appear{position: fixed;top: 0;z-index: 9999;-webkit-animation-name: slideUp;-moz-animation-name: slideUp;-o-animation-name: slideUp;animation-name: slideUp;-webkit-box-shadow: 0 0 3px 1px rgba(0,0,0,0.1);box-shadow: 0 0 3px 1px rgba(0,0,0,0.1);
}

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

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

相关文章

Python中的并发编程(2)线程的实现

Python中线程的实现 1. 线程 在Python中&#xff0c;threading 库提供了线程的接口。我们通过threading 中提供的接口创建、启动、同步线程。 例1. 使用线程旋转指针 想象一个场景&#xff1a;程序执行了一个耗时较长的操作&#xff0c;如复制一个大文件&#xff0c;我们希…

2022年第十一届数学建模国际赛小美赛D题野生动物贸易是否应长期禁止解题全过程文档及程序

2022年第十一届数学建模国际赛小美赛 D题 野生动物贸易是否应长期禁止 原题再现&#xff1a; 野生动物市场被怀疑是此次疫情和2002年SARS疫情的源头&#xff0c;食用野生肉类被认为是非洲埃博拉病毒的一个来源。在冠状病毒爆发后&#xff0c;中国最高立法机构永久性地加强了野…

【git教程】

目录 git与SVN的区别&#xff1a;集中式与分布式的区别Windows上安装Git创建版本库/仓库&#xff08;repository&#xff09;将文件添加到repository报错处理 查看仓库的状态版本回退工作区和暂存区管理和修改撤销修改删除文件远程仓库添加远程仓库警告解除本地和远程的绑定关系…

一文3000字从0到1用Python进行gRPC接口测试!

gRPC 是一个高性能、通用的开源RPC框架&#xff0c;其由 Google 主要面向移动应用开发并基于HTTP/2 协议标准而设计&#xff0c;基于 ProtoBuf(Protocol Buffers) 序列化协议开发&#xff0c;且支持众多开发语言。 自gRPC推出以来&#xff0c;已经广泛应用于各种服务之中。在测…

AI助力智慧农业,基于SSD模型开发构建田间作物场景下庄稼作物、杂草检测识别系统

智慧农业随着数字化信息化浪潮的演变有了新的定义&#xff0c;在前面的系列博文中&#xff0c;我们从一些现实世界里面的所见所想所感进行了很多对应的实践&#xff0c;感兴趣的话可以自行移步阅读即可&#xff1a;《自建数据集&#xff0c;基于YOLOv7开发构建农田场景下杂草检…

【C语言快速学习基础篇】之二控制语句、循环语句、隐式转换

文章目录 一、控制语句1.1、for循环1.2、while循环1.3、注意&#xff1a;for循环和while循环使用上面等同1.4、do while循环1.4.1while条件成立时1.4.2、while条件不成立时 C语言介绍 C语言是一门面向过程的计算机编程语言&#xff0c;与C、C#、Java等面向对象编程语言有所不同…

“分割“安卓用户,对标iOS,鸿蒙崛起~

近期关于**“华为于明年推出不兼容安卓的鸿蒙版本”**的消息传出&#xff0c;引起了业界的热议关注。自从2019年8月&#xff0c;美国制裁下&#xff0c;华为不再能够获得谷歌安卓操作系统相关付费服务&#xff0c;如此情况下&#xff0c;华为“备胎”鸿蒙操作系统一夜转正。 华…

有效解决wordpress的502 Bad Gateway错误提示

摘要&#xff1a;最近有客户反映使用阿里云虚拟云主机&#xff0c;wordpress常提示502 Bad Gateway错误&#xff0c;网关错误是网站上遇到的常... wordpress的502 Bad Gateway错误如何修复&#xff1f; 第1步&#xff1a;偶发错误可尝试重新加载网站 偶尔出现流量突发爆增或是服…

Sql Server关于表的建立、修改、删除

表的创建&#xff1a; &#xff08;1&#xff09;在“对象资源管理器”面板中展开“数据库”节点&#xff0c;可以看到自己创建的数据库&#xff0c;比如Product。展开Product节点&#xff0c;右击“表”节点&#xff0c;在弹出的快捷菜单中选择“新建表”项&#xff0c;进入“…

打工人副业变现秘籍,某多/某手变现底层引擎-Stable Diffusion简介

Stable Diffusion是2022年发布的深度学习文本到图像生成模型,它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如

K-means算法通俗原理及Python与R语言的分别实现

K均值聚类方法是一种划分聚类方法&#xff0c;它是将数据分成互不相交的K类。K均值法先指定聚类数&#xff0c;目标是使每个数据到数据点所属聚类中心的总距离变异平方和最小&#xff0c;规定聚类中心时则是以该类数据点的平均值作为聚类中心。 01K均值法原理与步骤 对于有N个…

[HITCON 2017]SSRFme perl语言的 GET open file 造成rce

这里记录学习一下 perl的open缺陷 这里首先本地测试一下 发现这里使用open打开 的时候 如果通过管道符 就会实现命令执行 然后这里注意的是 perl 中的get 调用了 open的参数 所以其实我们可以通过管道符实现命令执行 然后这里如果file可控那么就继续可以实现命令执行 这里就…

JavaSE基础50题:12. 编写代码模拟三次密码输入的场景。

概述 编写代码模拟三次输入的场景&#xff0c;最多能输入三次密码&#xff0c;密码正确&#xff0c;提示 “登录成功” &#xff0c;密码错误&#xff0c;可重新输入&#xff0c;最多输入三次&#xff0c;三次均错&#xff0c;则提示退出程序。 代码 import java.util.Scann…

Redission分布式锁原理初探

什么是分布式锁&#xff0c;为什么需要分布式锁 在多线程并发请求当中&#xff0c;为了保证我们的资源同一时刻只有一个线程进行操作&#xff08;如商品超卖问题、购票系统等&#xff09;&#xff0c;我们通常要添加锁机制&#xff0c;如ReentrantLock&#xff0c;也就是可重入…

C# 使用FluentScheduler触发定时任务

写在前面 FluentScheduler是.Net平台下的一个自动任务调度组件&#xff0c;以前经常用的是Quarz.Net&#xff0c;相对而言FluentScheduler的定时配置更为直观&#xff0c;可直接用接口进行参数化设置&#xff0c;对Cron表达式有恐惧症的人来说简直就是福音&#xff0c;使用起来…

Linux——进程状态

我们都知道进程信息被放到了PCB&#xff08;task_struct&#xff09;中&#xff0c;可以理解为进程属性的集合。 PCB中包含了进程的ID&#xff0c;时间片&#xff0c;pc指针&#xff0c;所有的寄存器&#xff0c;进程状态、优先级、I/O状态信息等等...有兴趣的可以去看看源码&…

【计算机网络笔记】物理层——频带传输基础

系列文章目录 什么是计算机网络&#xff1f; 什么是网络协议&#xff1f; 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能&#xff08;1&#xff09;——速率、带宽、延迟 计算机网络性能&#xff08;2&#xff09;…

LAMP和分离式LNMP部署

目录 一.什么是LAMP&#xff1f; 二.安装LAMP 先安装apache&#xff0c;httpd网页服务&#xff1a; 接着安装mysql&#xff1a; 安装php&#xff1a; 创建论坛&#xff1a; 三.安装分布式LNMP&#xff1a; 先安装nginx&#xff1a; 到另一台主机安装php&#xff1a; …

整数二分的建模

当题目能够使用整数二分法建模时&#xff0c;主要有整数二分法思想进行判定&#xff0c;它的基本形式如下&#xff1a; while(left < right) {int ans;//记录答案 int mid left (right - left) / 2;//二分if(check(mid)){//检查条件&#xff0c;如果成立 ans mid;//记录…

Python实现的二叉树的先序、中序、后序遍历示例

一、先序、中序、后序遍历的次序&#xff1a; 创建好一棵二叉树后&#xff0c;可以按照一定的顺序对树中所有的元素进行遍历。按照先左后右&#xff0c;树 的遍历方法有三种&#xff1a;先序遍历、中序遍历和后序遍历。 其中&#xff0c;先序遍历的次序是&#xff1a;如果二叉…