我正在尝试使用 % 设计一个流畅的布局,其中书籍位于窗口高度的 50% 处,下一本书的四分之一可见,让人想向下滚动。
调整窗口大小不应改变布局,因此书籍的图像大小、边距等应以 % 给出。
但是,.books {position: absolute}
对于包含div
s 的设置,包含的图像的大小会缩小到缩略图大小,尽管图像本身相当大......
% 作为单位如何工作?我认为 100% 始终是其包含元素的 100%。为什么要position: absolute
改变这个?
第二个问题,即使在使用 % 时,仅更改窗口宽度也会更改垂直布局。我曾假设垂直和水平方向是独立的。
以下是一些代码片段。
<div id="container">
<div class="books">
<img src="..." />
</div>
<div class="books">
<img src="..." />
</div>
<div class="books">
<img src="..." />
</div>
</div>
#container {
height: 200%;
}
.books {
height: 25%; /* =50% of window height */
}
编辑:我找到了罪魁祸首:我分配了一个以 % 为单位的上边距,但所有(左上右下)边距值都定义为父级宽度的百分比......奇怪。