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. while例子 求1到100的和

  2. smbtar - 直接备份SMB/CIFS共享资源到UNIX磁带设备的shell脚本

    总览 smbtar -s server [-p password] [-x service] [-X] [-d directory] [-u user] [-t tape] [-b blocksize ...

  3. Kvm --05 密码保护:Kvm管理之WebVirtMgr

    目录 密码保护:Kvm管理之WebVirtMgr 1. 前言 2. 特点 3. 功能 4. 部署 1).安装相关依赖 2).安装Python需求环境 3).配置Nginx 4). 远程连接 5).更新 ...

  4. Vue:子组件如何跟父组件通信

    我们知道,父组件使用 prop 传递数据给子组件.但子组件怎么跟父组件通信呢?这个时候 Vue 的自定义事件系统就派得上用场了. 使用 v-on 绑定自定义事件 每个 Vue 实例都实现了事件接口,即 ...

  5. $NOI2014$ 购票(斜率优化 点分治)

    \(NOI2014\)购票 哇终于可以碰电脑了赶快切些火题找找感觉. 拿到这道题的时候发现简单的斜率优化推一推可以秒掉平方做法,然后一条链也可以做. 然后呢... 卧槽这个在一棵树上怎么办啊. 大力\ ...

  6. 您的加密USB驱动器是否安全?黑客又是如何攻破的?

    您如何确定您使用的“安全”USB驱动器是否真的安全,并且您存储的数据无法提取?这正是Google公司和中国网络安全研究人员在最近的2018年黑帽美国大会上以艰难的方式攻击加密的USB密钥”的问题. 研 ...

  7. SERVLET API中转发与重定向的区别?

    SERVLET API中转发与重定向的区别? 1.转发(forward方法) 转发仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址. 转发是服务器请求资源,服务器直接访问目标地址的 ...

  8. C++ 分治思想 真假银币

    #include "stdio.h" #include "iostream" #define MAXNUM 30 int FalseCoin(int coin[ ...

  9. Servlet 第一天

    package com.servlet; import java.io.IOException; import javax.servlet.Servlet; import javax.servlet. ...

  10. C#操作Access的查询、添加、删除、修改源程序

    C#操作Access的查询.添加.删除.修改源程序 using System; using System.Collections.Generic; using System.ComponentMode ...