scroll-behavior属性

当用户手动导航或者 CSSOM scrolling API 触发滚动操作时,CSS 属性 scroll-behavior 为一个滚动框指定滚动行为,当用户通过鼠标滑轮滚动或者手机触屏滚动,不受这个属性的影响。在根元素中指定这个属性时,它反而适用于视窗。

scroll-behavior属性包括: smooth | auto;

auto: 默认值,表示滚动框立即滚动到指定位置。 smooth 表示允许滚动时采用平滑过渡,而不知直接滚动到相应位置,最常见的比如回到顶部按钮和锚点。

scroll-behavior浏览器支持情况:

  1. 通过锚点的方式实现,代码如下:
    html代码:

     <div class="tab-box">
    <div class="tab-t">
    <a class="labels" href="#tab1">选项卡1</a>
    <a class="labels" href="#tab2">选项卡2</a>
    <a class="labels" href="#tab3">选项卡3</a>
    </div>
    <div class="tab-body">
    <div class="content" id="tab1">
    <p>我是选项卡1</p>
    </div>
    <div class="content" id="tab2">
    <p>我是选项卡2</p>
    </div>
    <div class="content" id="tab3">
    <p>我是选项卡3</p>
    </div>
    </div>
    </div>

    less代码:

     .tab-box{
    margin: 20px;
    .labels {
    width: 100px;
    margin-right: -1px;
    border: 1px solid #ccc;
    border-bottom:;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: #eee;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    color:#555;
    }
    .tab-body {
    height: 200px;
    border: 1px solid #ccc;
    scroll-behavior: smooth;
    overflow: hidden;
    .content {
    height: 100%;
    padding: 0 20px;
    position: relative;
    overflow: hidden;
    input {
    position: absolute;
    top:;
    height: 100%;
    width: 100px;
    border:;
    padding:;
    margin:;
    clip: rect(0 0 0 0);
    }
    }
    }
    }
  2. 通过label和表单元素得到焦点的特性实现,代码如下:
    html代码:
     <div class="tab-box">
    <div class="tab-t">
    <label class="label" for="tab1">选项卡1</label>
    <label class="label" for="tab2">选项卡2</label>
    <label class="label" for="tab3">选项卡3</label>
    </div>
    <div class="tab-body">
    <div class="content"><input id="tab1" type="text">
    <p>我是选项卡1</p>
    </div>
    <div class="content"><input id="tab2" type="text">
    <p>我是选项卡2</p>
    </div>
    <div class="content"><input id="tab3" type="text">
    <p>我是选项卡3</p>
    </div>
    </div>
    </div>

    less代码:

     .tab-box{
    margin: 20px;
    .label {
    width: 100px;
    margin-right: -1px;
    border: 1px solid #ccc;
    border-bottom:;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: #eee;
    text-align: center;
    display: inline-block;
    }
    .tab-body {
    height: 200px;
    border: 1px solid #ccc;
    scroll-behavior: smooth;
    overflow: hidden;
    .content {
    height: 100%;
    padding: 0 20px;
    position: relative;
    overflow: hidden;
    input {
    position: absolute;
    top:;
    height: 100%;
    width: 100px;
    border:;
    padding:;
    margin:;
    clip: rect(0 0 0 0);
    }
    }
    }
    }

css3中的scroll-behavior属性的更多相关文章

  1. CSS3中transform几个属性值的注意点

    transform(变形)是CSS3中的元素的属性,transform的属性值主要包括旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix 基本用法可以参考文 ...

  2. css3新增属性有哪些?css3中常用的新增属性总结

    css3新增属性有哪些?来提问这个问题的人都应该知道css3是css的升级版本,那么,css3既然是升级版本,自然是会新增一些属性,接下来本篇文章将给大家介绍关于css3中常用的新增属性. 一.css ...

  3. css3中的zoom元素属性值测试

    在样式表里头看到zoom:1的设置,很是好奇就去找了一些资料发现关于这个的讲述还是比较少. 理论知识 语法: zoom:normal | <number> | <percentage ...

  4. CSS3中盒子的box-sizing属性

    box-sizing 属性 box-sizing 属性用来改变默认的 CSS盒模型 对元素宽高的计算方式.这个属性可以用于模拟那些非正确支持标准盒模型的浏览器的表现. box-sizing:conte ...

  5. 第92天:CSS3中颜色和文本属性

    一.颜色的表示方式 1. rgba(255,0,0,0.1)  rgba是代表Red(红色) Green(绿色) Blue(蓝色)和 Alpha透明度.虽然它有的时候被描述为一个颜色空间 新增了RGB ...

  6. CSS3中的动画效果记录

    今天要记录的是CSS3中的三种属性transform.transition以及animation,这三个属性大大提升了css处理动画的能力. 一.Transform 变形 CSS中transform ...

  7. CSS3中DIV水平垂直居中-2(3)

    用到CSS3中display的新属性. HTML <div class="parent"> </div> CSS html,body{ width: 100 ...

  8. CSS3让文本自动换行——word-break属性

    1.依靠浏览器让文本自动换行 浏览器本身都自带着让文本自动换行的功能. 2.指定自动换行的处理方法 在CSS3中,可以使用word-break属性来自己决定自动换行的处理方法. div{ word-b ...

  9. CSS3中的变形与动画(二)

    CSS3动画 过渡属性transiton-property 早期在Web中要实现动画效果,都是依赖于JavaScript或Flash来完成.但在CSS3中新增加了一个新的模块transition,它可 ...

  10. 利用ie的behavior属性兼容css3的一些属性

    behavior是从Internet Explorer 5开始引入的,是一种通过使用 CSS 向 HTML 元素添加行为的方法. 但是只有 Internet Explorer 支持 behavior ...

随机推荐

  1. centos7系统之telnet命令rpm包安装

    centos7系统之telnet命令rpm包安装 1. 下载安装包 rpm包下载位置:http://vault.centos.org/6.3/os/x86_64/Packages/ [root@ywb ...

  2. spring整合消息队列rabbitmq

    ps:本文只是简单一个整合介绍,属于抛砖引玉,具体实现还需大家深入研究哈.. 1.首先是生产者配置 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...

  3. python3-Django初始化项目详细

    0.背景 近期在学习django,在初始化项目的时候遇到了一丢坑,记录一下. 1.安装django 下载安装包解压出来后,python3 setup.py install 即可 2.创建项目 djan ...

  4. 每天一个linux命令:more(13)

    more more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作.more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻 ...

  5. Python入门图

  6. Python3解leetcode Maximum SubarrayHouse Robber

    问题描述: You are a professional robber planning to rob houses along a street. Each house has a certain ...

  7. 转载--关于FPGA设计数字信号处理电路的心得

    FPGA使用的越来越广泛,除了可用于设计控制电路以为,数字信号处理电路更是FPGA的强项和难点.个人可以说才刚刚入门FPGA设计,也做过一些数字信号处理方面的电路设计,记录下个人心得体会. (一)善用 ...

  8. react教程 — redux

    一.概念:             http://caibaojian.com/react/redux-basic.html   或  https://www.cnblogs.com/maopixin ...

  9. python练习题之计算字符串中所有字符得和

    第二题:计算字符串中所有数字的和1.字符串中只有小写字母和数字2.数字可能连续,也可能不连续3.连续数字要当做一个数处s='1234adg3g11's1 = "" for i in ...

  10. linux设备驱动第二篇:构造和运行模块

      上一篇介绍了Linux驱动的概念,以及linux下设备驱动的基本分类情况及其各个分类的依据和差异,这一篇我们来描述如何写一个类似hello world的简单测试驱动程序.而这个驱动的唯一功能就是输 ...