我试图在滚动条的右侧添加一些额外的填充,但当我放大浏览器窗口(使用ctrl+=和ctrl+-)时,填充的实际像素宽度会相应地增大和缩小(就像我在ems中指定的一样)。我希望容器的right属性恰好是8个像素,而不是0.5ems (8/16=0.5)。
有没有办法将top、bottom、left和right css属性设置为不随字体大小变化的固定值(如果有必要,我不介意使用JavaScript )?
这是我的CSS:
#page-bg
{
background-color: #FFFFFF;
padding: 0px;
border-width: 2px;
border-radius: 2em;
position: absolute;
top: 1em;
left: 10%;
right: 10%;
bottom: 0px;
overflow: hidden;
z-index: 0;
}
#page-content
{
overflow: scroll;
position: absolute;
top: 8px; /* these are what I'm talking about */
left: 8px;
right: 8px;
bottom: 8px;
z-index: 1;
}发布于 2011-07-28 06:36:23
要在缩放时保持“填充宽度”不变,您需要使用JavaScript找出缩放级别。
这在某种程度上是可能的,但完全不值得,因为它不可靠,请参阅:How to detect page zoom level in all modern browsers?
也许有一个更好的方法来实现同样的事情-你应该发布一个jsFiddle演示,看看你到目前为止所拥有的。
发布于 2011-07-28 07:06:47
大多数浏览器似乎实际上改变了页面的分辨率;这种改变超出了javascript和css的控制范围。简短的答案是你不能,如果你找到一个可以工作的浏览器,你必须在标准和一致性以及它在一个浏览器上的外观之间做出选择。Html、css和javascript不是为这种类型的控件而设计的
https://stackoverflow.com/questions/6852021
复制相似问题