鼠标滚动,导航置顶.纯css3的position: sticky;

position: sticky; 这东西来自css3,并且瞬间就完成了置顶的效果.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .a{  //定位头部置顶效果
            top: 0;
            position: sticky;
        }
        .b{    //当纯的给个滚动的高度
            width: 100%;
            height: 3000px;
        }

    </style>
</head>
<body>
    <div class="a">awsfwegwea</div>
    <div class="b">
        11111111111111111111111111111111111111 <br>
        22222222222222222<br>
        333333333333333333333333333333333333333 <br>
        4444444444444444444444444444444 <br>
        555555555555555555555555555 <br>
        666666666666666666666 <br>
        77777777777777777777777 <br>
        88888888888888888888888888888 <br>
        99999999999999999999999999999999 <br>
    </div>
</body>
</html>

复制粘贴滚动滑轮即可见到效果……(至于兼容问题,暂且就不考虑了。反正俺也不会!呵呵吧。。。)

由于没什么写的,就顺便将position定位的属性都

static

  •   --即默认不应用

relative(相对定位):

absolute(绝对定位):

  •   --一般这两个会组合使用,所谓的自绝父相.

    •   即.relative盒子里面有.absolute 而absolute里需要加top|botton 和 left|right 进行相对于.relative里的空间定位.

fixed:

  • 相对显示器定位,即屏幕本身,不会随滚动条的变化而变化

    •   同样需要加top|botton 和 left|right 进行空间定位.

center:absolute一致,但偏移定位是以定位祖先元素的中心点为参考。盒子在其包含容器垂直水平居中。

(CSS3)page:absolute一致。元素在分页媒体或者区域块内,元素的包含块始终是初始包含块,否则取决于每个absolute模式。

  • 官方定义如上,可试了半天也没效果,然后看到游览器兼容性列表显示全部不支持后……我就释然了

(CSS3)sticky:对象在常态时遵循常规流。它就像是relativefixed的合体,当在屏幕中时按常规流排版,当卷动到屏幕外时则表现如fixed。该属性的表现是现实中你见到的吸附效果。(CSS3)

  • 这个就实现了鼠标下滚,拥有这个样式的板块在网页上置顶的效果

    •   支持的游览器有:Firefox(32.0+),Safari(6.1-9.0-webkit-),iOS Safari(6.0-9.0-webkit-)。当前下能支持的。

以下为简单导航效果。

主要是class=“a”和class=“b”两部分。

  a类是导航,b则是内容,因为懒,所以内容就对付了。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .a{
            top: 0;
            position: sticky;    //这是那个css3样式
        }
        *{padding: 0;margin: 0;}
        nav{              //这是个导航
            width: 100%;
            background: #284f86;
            overflow: hidden;
        }
        .ju{
            width: 80%;
            margin: 0 auto;
        }
        .ju ul{
            list-style-type: none;
        }
        .ju ul li{
            padding: 0 10px;
            float: left;
            overflow: hidden;
        }
        .ju ul li a{
            padding: 10px 20px;
            color: #fff;
            display: block;
            text-decoration: none;
        }
        .ju ul li a:hover{
            background: #fff;
            color: #f00;
            border-radius: 5px;
        }
       .b{
            width: 80%;
            height: 800px;  //因为没内容,所以就先加了个高度
            margin: 0 auto;
        }
    </style>
</head>
<body>
        <nav class="a">
        <div class="ju">
            <ul>
                <li><a href="#">首页</a></li>
                <li><a href="#">教科书</a></li>
                <li><a href="#">工具书</a></li>
                <li><a href="#">绘图书</a></li>
                <li><a href="#">程序书</a></li>
            </ul>
        </div>
    </nav>
    <div class="b">
        11111111111111111111111111111111111111 <br>
        22222222222222222<br>
        333333333333333333333333333333333333333 <br>
        4444444444444444444444444444444 <br>
        555555555555555555555555555 <br>
        666666666666666666666 <br>
        77777777777777777777777 <br>
        88888888888888888888888888888 <br>
        99999999999999999999999999999999 <br>
    </div>
</body>
</html>

原文地址:https://www.cnblogs.com/yinwangyizhi/p/9041797.html

时间: 2024-10-07 10:25:06

鼠标滚动,导航置顶.纯css3的position: sticky;的相关文章

CSS3的position:sticky介绍

用户的屏幕越来越大,而页面太宽的话会不宜阅读,所以绝大部分网站的主体宽度和之前相比没有太大的变化,于是浏览器中就有越来越多的空白区域,所以你可能注意到很多网站开始在滚动的时候让一部分内容保持可见,比如,侧边栏的部分区域.position:sticky为此而生. position:sticky用法 position:sticky是一个新的css3属性,它的表现类似position:relative和position:fixed的合体,在目标区域在屏幕中可见时,它的行为就像position:rela

javascript平时小例子⑧(导航置顶效果)

<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> *{ margin: 0;padding: 0; } .wrap{ width: 100%; height: 300px; position: relative; } .wrap .top{ wid

在UWP中页面滑动导航栏置顶

最近在研究掌上英雄联盟,主要是用来给自己看新闻,顺便copy个界面改一下段位装装逼,可是在我copy的时候发现这个东西 当你滑动到一定距离的时候导航栏会置顶不动,这个特性在微博和淘宝都有,我看了@ms-uap的文章,淘宝的实现方式是改变顶部显示栏的大小,我本来准备按照他那个思路去做的,但发现效果不理想,在滑动的时候,底部的界面也跟着在滑动,这样使得很不友好,所以我准备自己实现一个 先上个最终效果图吧,图比较大,请耐心等待 思路大概是这样的 将这个界面分为两行 <Grid.RowDefinitio

导航栏置顶固定悬浮

<!doctype html><html><head><meta charset="utf-8"><title>网友分享jQuery导航菜单悬浮置顶特效</title><style type="text/css"> *{ margin:0; padding:0;} body{ background:#eee; text-shadow:0px 1px 0px rgba(255,255,

一款简洁的纯css3代码实现的动画导航

之前为大家介绍了好多导航菜单,今天给大家分享一款简洁的纯css3代码实现的动画导航.鼠标经过的时候以背景色以菱形渐变为长方形.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div align="center" style="background-color: #ee1d27; padding: 20px;"> <div class="contener_link"> <div class=&qu

[知了堂学习笔记]_css3特效第二篇--行走的线条&amp;&amp;置顶导航栏

一.行走的线条. 效果图(加载可能会慢一点儿,请稍等...): html代码: 1 <div class="movingLines"> 2 <img src="images/ser2.jpg" alt=""><!-- 背景图片--> 3 <div class="cover cover2"><!-- 遮盖层--> 4 <div class="innerB

自定义ScrollView,实现导航条悬浮置顶

Android ScrollView向上滑动控件顶部悬浮效果实现 * 导航栏实现悬浮置顶效果(顶部图片隐藏,下面的单选框导航悬浮) [上滑停靠顶端的悬浮框]里的实现方法是使用两个控件,滑动时,监听ScrollView的滚动Y值, * 从而通过对两个控件的显示隐藏来实现控件的顶部悬浮.但是实际应用场景中, * 有可能需要悬浮的控件里面的内容是比较多的,如果通过显示隐藏的方式来实现的话, * 操作控件里的内容时,需要重复定义两套变量,对控件里的内容进行修改时也是要操作再次,非常麻烦. 本文的方法是通

纯CSS3悬停图标旋转导航动画代码

分享一款纯CSS3悬停图标旋转导航动画代码.这是一款鼠标移到图标上动画旋转显示导航菜单.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div id="x_contant"> <a class="xzt1" href="#"><img src="images/xztz_1.png" /></a> <a class="xzt2" hr

一款纯css3实现的动画加载导航

之前为大家介绍了好几款导航菜单,今天为给大家再带来一款纯css3实现的动画加载导航.该导航出现的时候以动画的形式出现.效果图如下: 在线预览   源码下载 实现的代码. html代码: <ul class="main-menu"> <li class="main-menu-item active"><a href="#">Home</a></li><li class="m