如何仅使用CSS让具有position:absolute
和动态高度的元素占据垂直空间? 是否可以使用容器和显示的技巧来实现?
如何仅使用CSS让具有position:absolute
和动态高度的元素占据垂直空间? 是否可以使用容器和显示的技巧来实现?
position: absolute
表示元素不占用流中的空间。但是,您不必使用margin进行动画,可以使用float
来让元素占用任何空间,并使每个元素 position:relative
。
div.animate-me {
width: 300px;
margin: 20px;
float: left;
left: -1000px; // Make them start offscreen
position: relative;
border: 1px solid red;
visibility: hidden
}
$('div').css().animate({
left: 0
});
position: absolute
元素具有固定的宽高比(例如,使用 height: auto
响应式调整大小的图像或视频),您可以利用 padding-bottom
技巧 给一个间隔元素相同的宽高比,使其与 absolute
元素同时调整大小:.spacer {
height: 0;
padding-bottom: 125%; /* for a 1.25 height/width ratio */
}
您可以阅读此链接,但这是因为使用百分比的 padding-bottom
被解释为元素宽度的百分比。
然后根据您特定的布局将间距器定位,以便精确覆盖或在下方覆盖 position: absolute
元素,并占用您的 absolute
元素本来将占用的空间。
position: absolute
表示它们不在流中占用空间。请提供您尝试做的示例。 - Ruan Mendes