有没有办法使用完整文档宽度的百分比仅使用 CSS 来定位我的元素,而不仅仅是浏览器宽度?
我正在创建一个水平滚动网站,其中所有元素的高度和顶部的对齐方式都是使用百分比设置的——这是为了适应所有浏览器大小并确保所有元素都保持比例。
如果我尝试使用类似的方式更改页面上元素的左(或右)对齐方式;
#my_element {
position: absolute;
top: 5%;
width: 34%
left: 10%;
}
这将是浏览器窗口宽度的 10%,而不是 body 或 html 元素的实际宽度——这在标准垂直滚动网站中是有意义的,但对我没有帮助。
我目前的解决方法是使用 JavaScript 定位左侧;
$('#my_element').css('left', $(document).width() / 100 * 10) //Position to 10% of the page.
这可行,但是当 JavaScript 加载速度不够快或我想使用 CSS 动画为各种元素设置动画时会导致一些问题。