css怎么设置div滚动条

2023-11-10

随着网页及移动端应用的发展,滚动条成为了一种不可或缺的用户体验,而 CSS3 提供的一系列滚动条样式设置使得我们可以更加灵活地定制滚动条的样式,今天我们就来一起探讨一下如何利用CSS来设置div滚动条。

一、基础设置

我们在HTML中定义一个带有内容的div,当内容超出div的大小时需要使用滚动条进行查看。下面是一个基本的HTML结构:

<div class="wrapper">
  <div class="content">
    <p>这里是一些内容</p>
    <p>这里也是一些内容</p>
    <p>这里还是一些内容</p>
  </div>
</div>

接着,我们来设置一下 div 的基本样式,可以添加如下样式:

.wrapper {
    width: 300px;
    height: 200px;
    overflow: auto; /* 滚动条设置 */
    margin: 20px;
    border: 1px solid #ccc;
    padding: 10px;
}

.content {
    width: 100%;
    height: auto;
}

通过给 .wrapper 设置 overflow: auto 属性,使得在滚动条隐藏的情况下,内容大小超过div大小时会出现滚动条,而不会向外展开并覆盖其他元素。

二、滚动条基本设置

接下来,我们可以通过以下方式对滚动条的样式进行进一步的定制:

/* 滚动条整体样式 */
.wrapper::-webkit-scrollbar {
    width: 5px;
    height: 10px;
    background-color: #f5f5f5;
}

/* 滚动条thumb(滑块)样式 */
.wrapper::-webkit-scrollbar-thumb {
    width: 5px;
    height: 10px;
    background-color: #9a9a9a;
}

/* 滚动条hover状态下thumb(滑块)样式 */
.wrapper::-webkit-scrollbar-thumb:hover {
    background-color: #555;
}

/* 滚动条上下箭头样式 */
.wrapper::-webkit-scrollbar-button {
    background-color: #ccc;
    display: none;
}

/* 滚动条左右箭头样式 */
.wrapper::-webkit-scrollbar-button:start:decrement, .wrapper::-webkit-scrollbar-add-button {
    display: none;
}

.wrapper::-webkit-scrollbar-button:end:increment, .wrapper::-webkit-scrollbar-sub-button {
    display: none;
}

代码解析:

  1. ::-webkit-scrollbar :选择所有滚动条部件。该样式可以设置滚动条整体的宽度高度和背景色。
  2. ::-webkit-scrollbar-thumb :选择滑块。该样式可以控制滑块的宽度高度和背景色。
  3. ::-webkit-scrollbar-thumb:hover :选择滑块在hover状态下的样式。
  4. ::-webkit-scrollbar-button :选择滚动条两端的箭头部分。该样式用于控制上下左右箭头的背景色和是否显示。
  5. ::-webkit-scrollbar-button:start:decrement 或者 ::-webkit-scrollbar-sub-button :选择滚动条上箭头(向上滚动)/左箭头(向左滚动)部分,当滚动条是垂直/水平方向时使用。
  6. ::-webkit-scrollbar-button:end:increment 或者 ::-webkit-scrollbar-add-button :选择滚动条下箭头(向下滚动)/右箭头(向右滚动)部分,当滚动条是垂直/水平方向时使用。

三、自定义滚动条

我们可以根据需要,自定义滚动条的样式,下面是一个自定义样式的例子:

.wrapper::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #f5f5f5;
}

.wrapper::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #f5f5f5;
}

.wrapper::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #a0a0a0;
}

.wrapper::-webkit-scrollbar-thumb:hover {
    background-color: #555;
}

.wrapper::-webkit-scrollbar-corner {
    background-color: #f5f5f5;
}

代码解析:

  1. ::-webkit-scrollbar-track :选择滚动条的 track 部分,是滑块和滚动箭头/滚动区域之间的区域,可以设置 track 的样式,如背景颜色、边框、圆角等,此例子中我们对其进行了圆角设置。
  2. ::-webkit-scrollbar-thumb :选择滑块的样式,此例子中我们对其进行了圆角设置,并设置了滑块的背景颜色以及hover状态下背景颜色。
  3. ::-webkit-scrollbar-corner :设置滚动条的角落的颜色,通常我们把它设为与容器颜色相同。

四、总结

经过以上对滚动条的设置,我们可以根据实际需求选择相应的样式进行设置,这样可以更好地体验到网页及移动端应用的交互体验。同时需要注意的是,以上示例主要适用于 Chrome 和 Safari 等一些 Webkit 内核的浏览器,如果要适配其他浏览器,需要使用不同的样式和属性。

以上就是css怎么设置div滚动条的详细内容!

原文:css怎么设置div滚动条

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

css怎么设置div滚动条 的相关文章

随机推荐

  • 位运算及诸技巧

    位运算及诸技巧 位运算概念 基于二进制的位的运算 对于位运算 注意两点 1 必须以二进制角度进行位运算 2 必须以补码角度进行位运算 位运算符 1 按位取反 求 1 具体过程 1的补码为 0000 0000 0000 0000 0000 0
  • 《机器学习》理论——速读学习3 进阶知识

    机器学习 理论 速读学习3 进阶知识 该系列文章系个人读书笔记及总结性内容 任何组织和个人不得转载进行商业活动 time 2022 01 12 学习目标 我需要了解神经网络除了工程化部分之外的更多内容 以便于在实际有效数据中可以获得抽象模型
  • OpenCV:copyMakeBorder的用法

    在OpenCV滤波算法中 有两个非常重要的基本工具函数 copyMakeBorder和borderInterpolate copyMakeBorder 函数原型 void copyMakeBorder const Mat src Mat d
  • Makefile总结

    总结下边的内容 文件中的第一个target是最终目标 命令列表中的每条命令必须以 Tab 开头 如果 prerequistes 中如果有一个以上的文件比 target 文件更新的话 command 所定义的命令就会执行 这就是 Makefi
  • 利用PCL点云下采样实现数据体素化

    利用PCL点云下采样实现数据体素化 PCL PCL Point Cloud Library 库集成了针对大体量级别的空间点数据处理所需要的算法和操作 降低了处理相关需求的复杂度 对快速建立点云数据文档和渲染有着很好的作用 体素化Voxeli
  • 100天精通Python(可视化篇)——第80天:matplotlib绘制不同种类炫酷柱状图代码实战(簇状、堆积、横向、百分比、3D柱状图)

    文章目录 0 专栏导读 1 普通柱状图 2 簇状柱形图 3 堆积柱形图 4 横向柱状图 5 横向双向柱状图 6 百分比堆积柱形图 7 3D柱形图 8 3D堆积柱形图
  • Xilinx Vivado 流水灯实验

    流水灯设计时需要考虑哪些因素 流水灯设计流程的基本步骤及各步骤主要功能 各文件的作用 流水灯IPI设计流程的基本步骤及各步骤主要功能 IP集成设计的优点 文件注释 verilog语言 当时这部分花时间自学的
  • python:thread模块

    该包在 Python 2 中属于正常可用状态 但在 Python 3 中处于即将废弃的状态 虽然还可以用 但包名被改为 thread 使用 thread 包首先要引入该包 在 Python 2 中使用下面的语句来引入 import thre
  • 实时音频编解码之十七 Opus解码 SILK解码

    本文谢绝任何形式转载 谢谢 5 2 Silk解码流程 解码器线性预测层主要使用长短时预测合成滤波器对激励信号滤波实现 线性预测层内部的工作带宽为NB MB以及WB 对于SWB以及FB的混合编码工作模式 线性预测层依然工作于WB带宽下 经过区
  • Qt Creator 5.9.9下载与安装图解详细教程

    Qt Creator 5 9 9下载与安装图解详细教程 一 Qt Creator 下载 推荐最新版5 9 9 网上可能推荐4 x x 但实际上不是做专业UI项目的话Qt Creator版本越新越好 其一 安装包给你集合到一个 exe里面 不
  • 期货开户手续费有哪些优惠?

    在网上随便找一位期货公司经纪人 直接说你有帐户但手续费高 现在想换一家手续费低的期货公司 这样通常就能开到最低手续费帐户了 或者直接点问 手续费能不能加一分 简单明了 如果手续费相同的情况下 还得考虑期货公司的保证金 交易软件 服务等因素来
  • php layui post文件上传,layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例...

    本文实例讲述了layui框架实现文件上传及TP3 2 3对上传文件进行后台处理操作 分享给大家供大家参考 具体如下 layui框架是1 0 9版本 首先html页面代码如下 js代码如下 layui use upload function
  • UDP网络基础知识简介

    作者简介 CSDN2021博客之星亚军 新星计划导师 博客专家 哪吒多年工作总结 Java学习路线总结 搬砖工逆袭Java架构师 关注公众号 哪吒编程 回复1024 获取Java学习路线思维导图 大厂面试真题 加入万粉计划交流群 一起学习进
  • OpenGL学习笔记(二)-着色器-纹理

    参考网址 LearnOpenGL 中文版 哔哩哔哩教程 第一章 入门 1 3 着色器 1 3 1 基本结构 利用着色器语言编写着色器 以顶点着色器和片段着色器为例 在着在顶点着色器中输出颜色变量vertexColor 在片段着色器中输入变量
  • JDK 17 营销初体验 —— 亚毫秒停顿 ZGC 落地实践

    前言 自 2014 年发布以来 JDK 8 一直都是相当热门的 JDK 版本 其原因就是对底层数据结构 JVM 性能以及开发体验做了重大升级 得到了开发人员的认可 但距离 JDK 8 发布已经过去了 9 年 那么这 9 年的时间 JDK 做
  • 如何理解凸优化中的共轭函数的定义?

    共轭函数的意义主要就是 一个函数即便不是凸函数 但通过共轭法获得一个凸函数 很方便求解全局最优解的问题 另外 共轭函数亦称对偶函数 极化函数 函数的某种对偶变换 过多的东西我就不再赘述了 此处我是想着重讲一讲为什么共轭函数是可以 保凸 的
  • 中国物流,驶入大航海时代

    出海的一体化 不仅仅是物流的一体化 更是产业链 供应链的一体化 在诸多问题下 想要帮助企业更好地出海 就不能只专注于自身的长板 而是需要先补齐短板 作者 斗斗 编辑 皮爷 出品 产业家 出海时代真的要来了 这种感觉从未如此强烈过 在过去两年
  • React项目中使用svg组件

    使用react svg模块 安装依赖 yarn add D react svg 新建index js文件 import React from react import ReactSVG from react svg function get
  • 【笔记】scanf函数:读取参照getchar()

    Reference 浅谈关于空格和回车对于输入函数的影响 程序猿的探索之路的博客 CSDN博客 c语言scanf输入打空格的影响 Note 回车键 依次包含 LF NL line feed new line 十进制 10 和 CR carr
  • css怎么设置div滚动条

    随着网页及移动端应用的发展 滚动条成为了一种不可或缺的用户体验 而 CSS3 提供的一系列滚动条样式设置使得我们可以更加灵活地定制滚动条的样式 今天我们就来一起探讨一下如何利用CSS来设置div滚动条 一 基础设置 我们在HTML中定义一个