css3新属性position: sticky 一分钟实现 导航栏悬停功能

前言

想必很多前端小伙伴经常会在开发中遇到这样一个需求,就是在下划时,导航栏悬停在屏幕最上方,例如咱们的csdn:



那么你们都是使用什么方法实现的呢?今天我们就用css3的一个新的属性position: sticky 来实现这个功能吧,坚持看下去,就只需一分钟就能搞定。

正文

你只需要找到你导航栏的标签,给他添加以下样式,就可以实现导航栏悬停功能:

  • 标签内容
<div class="top"></div>
<div class="tabber">导航栏</div>
<!--以下内容忽略-->
<p>网页内容1</p>
<p>网页内容2</p>
<p>网页内容3</p>
<p>网页内容4</p>
<p>网页内容5</p>
<p>网页内容6</p>
<p>网页内容7</p>
<p>网页内容8</p>
<p>网页内容9</p>
<p>网页内容10</p>
<p>网页内容11</p>
<p>网页内容12</p>
<p>网页内容13</p>
<p>网页内容14</p>
<p>网页内容15</p>
<p>网页内容16</p>
<p>网页内容17</p>
<p>网页内容18</p>
<p>网页内容19</p>
<p>网页内容20</p>
<p>网页内容21</p>
<p>网页内容22</p>
<p>网页内容23</p>
<p>网页内容24</p>
<p>网页内容25</p>
<p>网页内容26</p>
<p>网页内容27</p>
<p>网页内容28</p>
<p>网页内容29</p>
<p>网页内容30</p>
<p>网页内容31</p>
<p>网页内容32</p>
<p>网页内容33</p>
<p>网页内容34</p>
<p>网页内容35</p>
<p>网页内容36</p>
<p>网页内容37</p>
  • 样式(重点
<style>
.top{
height: 600px;
background: lightgreen;
}
.tabber{
height: 50px;
background: yellow;
text-align: center;
font-size: 30px;
/*只需添加这两个样式就可以实现悬停*/
position: sticky; //设置position: sticky样式
top: 0; //top: 0 表示当该标签顶部离浏览器只有0px的距离时,一直悬浮在窗口中
}
</style>
  • 效果图



    是不是特别的简单呢? 其实原理就是,当标签离浏览器顶部的距离没有达到我们设置的top值时,该标签都处于position: relative 的状态,占据文本流存在于内容中; 当标签离浏览器顶部的距离达到我们设置的top值时,该标签处于position: fixed,一种固定状态,所以能达到悬停的效果。

css3新属性position: sticky 一分钟实现 导航栏悬停功能的更多相关文章

  1. 基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转

    基于css3新属性transform,实现3d立方体的旋转 通过原生JS,点击事件,鼠标按下.鼠标抬起和鼠标移动事件,实现3d立方体的拖动旋转,并将旋转角度实时的反应至界面上显示 实现原理:通过获取鼠 ...

  2. 两点补充——CSS3新属性以及弹性布局

    CSS3 新属性 一.[ CSS3新增属性前缀 ] 1.-webkit-:chrome/safari 2.-moz-:火狐 3.-mo-:IE 4.-o-: Opera 欧朋 二 .[CSS 长度单位 ...

  3. 粘性固定属性 -- position:sticky

    概述 position: sticky,这是一个比较容易忽略的css3 position 新属性,它的作用即为实现粘性布局,它是 relative 与 fixed 的结合. 用法 默认情况下,其表现为 ...

  4. 使用css3新属性clip-path制作小图标

    一般一个网页上面,或多或少都会用到一些小图标,展示这些小图标的方法有很多种.最简单的做法就是将UI图上面的每个小图标都保存为图片,一个小图标就一张图片.但这也是比较笨的方法,因为浏览器同一时间最多加载 ...

  5. css3新属性@ text-shadow

    text-shodow是css3的新属性,可以利用这个属性使字体更有立体感,还可以创造有趣的效果. 1.语法形式:text-shadow : x-offset(x轴偏移量) y-offset(y轴偏移 ...

  6. css3新属性的总结

    今天继续总结css3的一些css3新样式,先列一个简单的提纲,重要的还是圆角.阴影.渐变.文字缩略,最最重要的是过度transition,变换transform和animation圆角阴影渐变 圆形渐 ...

  7. css3新属性运用

    1.css3新单位vh.vw,这个单位是相对显示窗口的宽度或高度 vh等于viewport高度的1/100.例如,如果浏览器的高是900px,1vh求得的值为9px.同理,如果显示窗口宽度为750px ...

  8. CSS3新属性注释及实例

    这里把CSS3的新属性单独拿出来讲解一下: border-radius 属性用于创建圆角 div { border:2px solid; border-radius:25px; -moz-border ...

  9. css3新属性的学习使用

    display 可选值:none隐藏元素: block显示为块级元素: inline显示为行级元素 inlineblock显示为内联块级元素,本身将是一个行级元素,但是拥有 块级元素的所有属性,比如宽 ...

随机推荐

  1. ElasticSearch(三)springboot整合ES

    最基础的整合: 一.maven依赖 <parent> <groupId>org.springframework.boot</groupId> <artifac ...

  2. Pexpect模块的简单使用

    Pexpect 是一个用来启动子程序并对其进行自动控制的 Python 模块. Pexpect 可以用来和像 ssh.ftp.passwd.telnet 等命令行程序进行自动交互.以下所有代码都是在K ...

  3. 豆瓣 9.0 分的《Python学习知识手册》|百度网盘免费下载|

    豆瓣 9.0 分的<Python学习知识手册>|百度网盘免费下载| 提取码:nuak 这是之前入门学习Python时候的学习资料,非常全面,从Python基础.到web开发.数据分析.机器 ...

  4. C#怎么统计网站当前在线人数

    1.问题背景 c#网站怎么合理的统计在线人数?我想通过全局变量来统计软件的使用情况,当启动软件时向服务器的用户表写开始使用时间,正常退出时写一个结束使用时间,来统计用户的在线使用情况. 但是有一个问题 ...

  5. 《Python测试开发技术栈—巴哥职场进化记》—初来乍到,请多关照

    上文<巴哥职场进化记-Python测试开发技术栈>开篇讲到巴哥毕业初到深圳,见到了来自五湖四海的室友.一番畅聊之后,抱着对未来职场生活的期待,大家都进入了梦乡.今天我们来看看巴哥第一天上班 ...

  6. 设在起始地址为STRING的存储空间存放了一个字符串(该串已存放在内存中,无需输入,且串长不超过99),统计字符串中字符“A”的个数,并将结果显示在屏幕上。

    问题 设在起始地址为STRING的存储空间存放了一个字符串(该串已存放在内存中,无需输入,且串长不超过99),统计字符串中字符"A"的个数,并将结果显示在屏幕上. 代码 data ...

  7. PHP array_keys() 函数

    实例 返回包含数组中所有键名的一个新数组: <?php$a=array("Volvo"=>"XC90","BMW"=>&q ...

  8. PHP timezone_version_get() 函数

    ------------恢复内容开始------------ 实例 返回时区数据库的版本: <?phpecho timezone_version_get();?> 运行实例 » 定义和用法 ...

  9. PHP zip_close() 函数

    定义和用法 The zip_close() 函数关闭由 zip_open() 函数打开的 zip 档案.高佣联盟 www.cgewang.com 语法 zip_close(zip) 参数 描述 zip ...

  10. PHP strtoupper() 函数

    实例 把所有字符转换为大写: <?php高佣联盟 www.cgewang.comecho strtoupper("Hello WORLD!");?> 定义和用法 str ...