CSS:滚动条没有 100% 的高度/宽度

2023-12-11

是否可以强制垂直滚动条的高度小于其所属可滚动 div 的 100%使用纯 CSS 并适用于除 IE 之外的所有现代浏览器?

到目前为止我想出的只是仅限 webkit解决方案与它的::-webkit-scrollbarCSS 选择器和自定义按钮高度的技巧,如下所示:

.parent {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  border: 1px solid #000000;
  box-sizing: border-box;
  overflow-y: scroll;
}

.child {
  height: 200%;
  width: 100%;
  overflow: hidden;
}

.parent::-webkit-scrollbar {
  width: 12px;
}

.parent::-webkit-scrollbar-track {
  border: 1px solid #000000;
}

.parent::-webkit-scrollbar-thumb {
  background: #FF0000;
}

.parent::-webkit-scrollbar-button {
  background: transparent;
  height: 25%;
}
<div class="parent">
  <div class="child">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
    in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit,
    sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore
    eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
    magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
    cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
    exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia
    deserunt mollit anim id est laborum.
  </div>
</div>

我试图欺骗.parent with transform: scale仅在一个方向上,因此要缩小父项并以相同的值增加内容,如下所示:

.parent {
    transform: scale(0.5, 1);
}

.child {
    transform: scale(2, 1);
}

...但它不起作用,因为子级无法在没有绝对位置的情况下扩展父级的尺寸,这使得它对父级不可见,并且滚动条不必要。

如果还有其他方法,我会洗耳恭听,因为我更喜欢 CSS 而不是额外的 JS 插件/库/包。

这是纯 CSS 问题。我知道有 JS 插件可以创建我想要的任何滚动条。


您可以使用::-webkit-scrollbar-track-piece自定义进度条的最顶层。在这种情况下,它不会是父级高度的 100%。

.parent {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  border: 1px solid #000000;
  box-sizing: border-box;
  overflow-y: scroll;
}

.child {
  height: 200%;
  width: 100%;
  overflow: hidden;
}

.parent::-webkit-scrollbar {
  width: 12px;
}

.parent::-webkit-scrollbar-track {
  /*border: 1px solid #000000;*/
}

.parent::-webkit-scrollbar-thumb {
  background: #FF0000;
}

.parent::-webkit-scrollbar-button {
  background: transparent;
  /*height: 25%;*/
}


/* this will do the trick */
.parent::-webkit-scrollbar-track-piece {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 1px solid #000000;
}
<div class="parent">
  <div class="child">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
    in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit,
    sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore
    eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
    magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
    cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
    exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia
    deserunt mollit anim id est laborum.
  </div>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSS:滚动条没有 100% 的高度/宽度 的相关文章

  • 为什么开发者讨厌 iframe? [复制]

    这个问题在这里已经有答案了 可能的重复 iframe 被认为是 不好的做法 吗 https stackoverflow com questions 362730 are iframes considered bad practice 在与
  • 如何为 HTML 元素创建鼠标拖动滑块?

    我发现的许多滑块插件要么仅单击以查看下一个图像 要么如果它们确实具有鼠标拖动或触摸拖动功能 则仅允许图像 有谁知道为任何 html 元素编写鼠标拖动滑块的插件或可能的方法 我专门使用 SVG 但将来如果能在 div 元素之间滑动就更好了 H
  • 指南针字体输出错误的字体文件路径

    font face font family HelveticaNeueLTStd Lt src url css fonts HelveticaNeueLTStd Lt otf format opentype 这是我的指南针代码的输出 inc
  • 如何消除 HTML 内容周围的边距?

    以下 HTML 显示正常 div style width 100px height 100px background red div Hello div div
  • Masonry - imagesLoaded - 不是函数

    Masonry and imagesLoaded应加载并正常工作 已经制作了一个类似的网站 并且可以正常运行 我不知道我的问题出在哪里 所以我希望你能看到问题所在 应该是少了点什么 在 Chrome Inspect 中 我收到以下错误 Un
  • jQuery - 如何从 div > p 获取文本

    如何从 div 类中获取主题名称 div class subject img src image eng jpg p English p div div class subject img src image bio jpg p Biolo
  • Django:按钮链接

    我是一名 Django 新手用户 尝试创建一个按钮 单击该按钮会链接到我网站中的另一个页面 我尝试了一些不同的例子 但似乎没有一个对我有用 举个例子 为什么这不起作用
  • socket.io 的良好初学者教程? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • @media语法/可能的组合

    我见过其中一些 media print media screen handheld print projection media all media all and property value media screen and prope
  • 有角度的动态背景图片

    在 html 模板中 我有这种带有动态图像的样式 div style background none width 200px height 150px div 它适用于网络浏览器和 Android 浏览器 但是 使用 style 的动态背景
  • 图像无法在带有 DOM 的 IE 中加载:控制台中的 7009 错误(无法解码)

    当在 IE 中的单个页面上加载许多图像时 在 IE11 中重现 其中一些图像开始加载失败 并在控制台中出现类似以下警告的内容 DOM7009 无法解码 URL 处的图像 某些唯一的 url 当我查看网络流量时 似乎确实从服务器收到了每个图像
  • HTML5 MediaSource 适用于某些 mp4 文件,但不适用于其他文件(相同的编解码器)

    我正在玩 MediaSource API 代码直接取自 Mozilla 的示例页面 https developer mozilla org en US docs Web API MediaSource endOfStream https d
  • php - 解析html页面

    div divbox div p para1 p p para2 p p para3 p table class table tr td td tr table p para4 p p para5 p 有人可以告诉我如何解析这个 html
  • Firefox 不会在使用 jQuery AJAX 加载的内容上呈现 CSS 样式

    我有一个网站 允许用户对书籍和文章发表评论 主表单有一个搜索输入 用于查找相关书籍或文章 来源 我使用 jQuery 根据输入的搜索词从外部站点动态加载新源 然后还使用 AJAX 返回列表中的源 我有两个问题 现在 在用户输入四个字符后 j
  • 网站的主体和元素固定在 980px 宽度上,不会缩小

    我试图在 Rails 应用程序顶部启动前端 仅 HTML CSS 页面 但在使用 320px 视口时遇到问题 有些元素不会按比例缩小 我不明白为什么 我已经完成了检查元素 为各种元素提供了max width 100 and or width
  • 在 HTML5 画布中,如何用我选择的背景遮盖图像?

    我试图用画布来实现这一点 globalCompositeOperation 但没有运气 所以我在这里问 这里有类似的问题 但我没有在其中找到我的案例 我的画布区域中有图层 从下到上的绘制顺序 画布底座填充纯白色 fff 用fillRect
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • 页面上使用 HTML Editor Extender 进行回发会导致 IE11 中出现 JavaScript 错误

    我已将 HTML 编辑器扩展程序添加到我正在处理的页面中 现在每当我在页面上发回帖子时 都会收到以下 Javascript 错误 JavaScript 运行时错误 参数无效 之后什么也没有发生 这在 IE10 或更低版本以及我所知道的所有其
  • 可以设置标题样式吗? (并且使用CSS或js?)[重复]

    这个问题在这里已经有答案了 我想知道是否可以设计一个title a href title This is a title Hello a 样式问题有两个方面 文本格式 编码 我猜这是可能的 所以在问题中这样做 工具提示样式 你能把它弄大一点
  • 在 HTML 下拉列表中有一个滚动条

    我正在寻找一种在 HTML 的下拉列表中添加滚动条的方法 这样如果下拉列表包含的内容超过例如 5 项 将出现滚动条以查看其余项 这是因为我将被迫列出一些大清单 过去几个小时我一直在谷歌上搜索它 但没有运气 它需要适用于 IE8 FF 和 C

随机推荐

  • 是否可以在 WindowButtonMotionFcn 中使用多个回调?

    我创建了一个类 为构造中的图形添加功能 这个类创建一个监听器WindowMouseMotion事件 但是 为了触发此事件 我必须为该图添加一个虚拟回调函数WindowButtonMotionFcn财产 我首先检查该属性是否已填充 如果不是
  • Java 泛型和泛型类型

    我有一个 ExtA 类 其中包含一个过滤函数来过滤 ArrayList public ExtA
  • leaflet 插件和 leafletProxy 以 polylineDecorator 为例

    另请参考一个问题leaflet 插件和 leafletProxy 我想用折线装饰器插件在 R 的传单中 下列的有关如何使用 R 中的传单插件的说明 如果我将该方法与leaflet 请参阅第一个示例 它按我想要的方式工作 但如果我尝试使用相同
  • Excel 互操作:_Worksheet 还是 Worksheet?

    我目前正在撰写有关动态类型的文章 并给出了 Excel 互操作的示例 我以前几乎没有做过任何 Office 互操作 这表明了这一点 这MSDN Office 互操作教程对于 C 4 使用 Worksheet界面 但还有一个Worksheet
  • 在 Python Social Auth 中获取 Facebook 用户喜欢

    我正在使用 Django 启动一个项目 并尝试允许用户使用 Facebook 登录 出于网站目的 我想将用户喜欢存储在我的数据库中 我以 Python Social Auth 我用于该项目的库 上的示例应用程序为例 并且编写了一个用于在数据
  • 在 IIS 服务器上发布 C# 控制台应用程序

    是否可以在 IIS 服务器上部署控制台 C 应用程序 我有一个 exe 文件在一台机器上运行 该文件从命名管道获取数据 我的 C 应用程序从管道获取此数据并将其发送到使用 TCP 套接字运行的 Web 应用程序 我想知道是否可以部署我的 C
  • JavaScript 分离轴定理

    我正在尝试使用 JavaScript 中的分离轴定理来检测两个正方形碰撞 一个旋转 一个不旋转 尽管我很努力 但我无法弄清楚这在 JavaScript 中会是什么样子 也找不到任何 JavaScript 示例 请帮忙 用简单的数字或 Jav
  • 在 Google Colab 文本单元中插入图像

    我想将图像插入到 google colab 中的文本单元格中 该图像已上传到 google 云端硬盘中 为此 我使用 Markdown 语法 名称 获取可共享链接 但这不起作用 我的链接如下所示 https drive google com
  • 为什么 CSS :active on link 不会突出显示当前页面链接?

    我有下面的代码用于列表到母版页 div ul li a href default aspx Home a li li a href page1 aspx Page1 a li ul div with css header a hover c
  • 同时访问<地址>,但修改需要独占访问

    我想指定一个属性 它是一个用于在函数中进行操作的数组myFunc 但我收到此错误 这是我的代码草图 self data MyObject func myFunc x inout Int y inout Int manipulation co
  • 从Flask路线启动scrapy

    我想构建一个爬虫 它获取要抓取的网页的 URL 并将结果返回到网页 现在我从终端启动 scrapy 并将响应存储在文件中 当某些输入发布到 Flask 时 如何启动爬虫 处理并返回响应 您需要在 Flask 应用程序中创建一个 Crawle
  • C# 中如何获取目录中的文件列表

    所以 我正在用 C 开发 mp3 播放器 但我遇到了一个问题 我想从列表中的目录中获取所有文件 因此您可以选择 您要播放的歌曲 这是获取文件的代码 string music Directory GetFiles dir mp3 然后就可以玩
  • 关联对象什么时候被释放?

    我通过对象 A 的关联引用来附加对象 B 对象 B 通过 KVO 观察对象 A 的一些属性 问题是对象 B 似乎已被释放after对象 A 这意味着将自身作为对象 A 的 KVO 观察者删除为时已晚 我知道这一点是因为我收到 NSKVODe
  • 输出给定字符串中第一个重复字符的代码?

    我试图找到字符串中的第一个重复字符并使用 python 输出该字符 检查我的代码时 我可以看到我没有索引代码的最后一个字符 我究竟做错了什么 letters acbdc for a in range 0 len letters 1 prin
  • NHibernate 过滤器集合

    使用 NHibernate 我想过滤类中的集合以仅包含可能对象的子集 下面我提供了一个示例表数据来帮助解释 我找不到使用 NHibernate 来做到这一点的方法 表 数据对象 数据对象 ID PK 名称 当前版本 11 data txt
  • 如何在 Objective-C 中使用 Swift String 枚举?

    我有这个枚举String值 它将用于告诉记录到服务器的 API 方法消息具有哪种类型的服务器 我使用的是 Swift 1 2 因此枚举可以映射到 Objective C objc enum LogSeverity String case D
  • 与 Math.Round() 不一致

    我有两个函数旨在包含 180 180 和 之间的角度 其目的是给定从 inf 到 inf 的任何角度 它将在指定的间隔内保留等效角度 例如1550 的角度是 110 public double WrapBetween180 double a
  • php异步cURL请求

    我正在使用 PHP 开发一个网站并使用 cURL 发送请求 我有一个网站 它会进行一些计算 我需要从中得到响应 我正在通过 cURL 发送请求 目前我正在做的是发送请求 等待 10 秒 然后再次发送 最多 3 次 如果没有收到 良好 响应
  • Verilog、FPGA、统一寄存器的使用

    我有一个问题 关于我正在开发的 AGC SPI 控制器在我看来奇怪的行为 它是用 Verilog 完成的 针对的是 Xilinx Spartan 3e FPGA 该控制器是一个依赖外部输入来启动的 FSM FSM的状态存储在状态寄存器它没有
  • CSS:滚动条没有 100% 的高度/宽度

    是否可以强制垂直滚动条的高度小于其所属可滚动 div 的 100 使用纯 CSS 并适用于除 IE 之外的所有现代浏览器 到目前为止我想出的只是仅限 webkit解决方案与它的 webkit scrollbarCSS 选择器和自定义按钮高度