如何检测滚动条是否占用Chrome OS for OS X的空间?

时间:2015-07-24 06:06:07

标签: html css macos google-chrome

我有一些代码假设OS X的垂直滚动条宽度为15px并相应地做了一些布局。

适用于Mac。但是,在Macbook上,Chrome的滚动条似乎没有占用任何额外的空间。它被视为页面内容上的叠加层。这会导致布局有点失真。

有什么方法可以检测滚动条是否为Apple台式机/笔记本电脑上的Chrome预留了空间?

1 个答案:

答案 0 :(得分:3)

您可以使用here:

中的此代码

首先在样式表中定义一些样式指南:

/* way the hell off screen */
.scrollbar-measure {
    width: 100px;
    height: 100px;
    overflow: scroll;
    position: absolute;
    top: -9999px;
}

而在你的javascript中你就是这样开始的:

// Create the measurement node
var scrollDiv = document.createElement("div");
scrollDiv.className = "scrollbar-measure";
document.body.appendChild(scrollDiv);

// Get the scrollbar width
var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;
console.warn(scrollbarWidth); // Mac:  15

// Delete the DIV 
document.body.removeChild(scrollDiv);