如何设置元素width时忽略滚动条宽度?(仅CSS跨浏览器实现)
如何让CSS元素宽度忽略滚动条宽度(纯CSS、不隐藏滚动条)
我曾找到过类似问题,但我的需求有以下不同:
- 不隐藏滚动条,而是让元素宽度忽略滚动条的宽度
- 仅通过CSS实现,不使用JavaScript
- 优先寻求全浏览器兼容的非webkit专属方案,也可接受分浏览器的多方案
场景示例
我将div的宽度设为100px并开启滚动:
- 预期结果:div内容区域宽度为100px,同时正常显示滚动条
- 实际结果:div内容区域加滚动条的总宽度为100px,导致div实际内容宽度仅约85px,未达预期
- 核心问题:使用
width: 100px;时,如何让滚动条不占用这个宽度?

代码示例
div { width: 100px; height: 100px; overflow: scroll; /* 我知道这不适用于overflow,仅以此举例是否有针对滚动条的类似原生方案 */ box-sizing: content-box; }
<div> Lorem Ipsum is simply dummy text of the printing and typesetting industry. </div>
逻辑上我希望实现类似box-sizing的效果,但box-sizing仅计算border和padding的尺寸。是否已有现成的解决方案只是我没找到?
内容的提问来源于stack exchange,提问作者rozsazoltan
相关产品推荐
相关产品推荐

