Как заставить div поплавать вертикально? Если над div находится пустое место, оно должно подниматься вверх и заполнять пространство, оставляя пустое пространство внизу.
float:left // for floating horizontally
У меня много div, которые плавают горизонтально с фиксированной шириной, но не фиксированной высотой. Я хочу, чтобы они устроились, не покидая пустого места.
Как это может быть сделано?
Позвольте мне предположить, что у вас возникает следующая проблема: у вас есть несколько divs с разными высотами один за другим в нескольких строках. Скажем, там очень высокий в первом ряду, заставляя все divs второго ряда "погружаться" глубже. У меня есть сильное чувство, что нет кросс-браузерного чистейшего способа улучшить этот взгляд на данный момент. Однако вы можете достичь хотя бы чего-то с
display:inline-block;
vertical-align:top
вместо
float:left.
Это будет выглядеть так:
если вам нужно что-то лучшее, посмотрите, пожалуйста, посмотрите этот вопрос: css float элементы с неравными высотами слева и вверх в сетке Я считаю, что то же самое, что вы ищете. К сожалению, вы не можете сделать с чистым css
Див никогда не оставил бы пустое пространство над собой. Он заполнит пробел, а затем документ пойдет вниз.
Наверное, там есть какая-то padding
или margin
.
Вы можете попытаться дать divs абсолютную позицию как:
div {
position: absolute;
top: 0;
}
Таким образом, div будет размещен почти в верхней части страницы! Перекрывая другие элементы, вы можете придать некоторую ценность top
таким образом, что вы даете margin-top
.
Я надеюсь, что это помогает.