Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Оооочень "резиновая" верстка (https://javascript.ru/forum/events/41558-oooochen-rezinovaya-verstka.html)

kadomsky 19.09.2013 10:17

Оооочень "резиновая" верстка
 
Передо мной стоит задача создать сайт вот с такой мазаичной резиновой версткой http://www.dunhill.com/
Обратите внимание - как сайт ведет себя при масштабировании. Он так "ловко" меняет всю расстановку блоков, что они всегда подогнаны без пустых пятен, хотя все разного размера.
Теперь о там что я пробовал. Для начала подметил, что все блоки отличаются друг от друга в кратное число раз по площади, как листы бумаги а1, а2, .... и т.д. Соответственно создал несколько дивов и расставил их более менее хаотично, назначил им float: left, и начал масштабировать.
<style>
.a4 {
width: 297px;
height: 210px;
}
.a3 {
width: 297px;
height: 420px;
}
.a2 {
width: 594px;
height: 420px;
}
.a2plus {
width: 594px;
height: 630px;
}
div {
border: 1px solid gray;
DISPLAY: block;
background: #c99;
float: left;
padding: 0;
margin: 0;
}
</style>
<div class="a2plus">&nbsp;</div>
<div class="a3">&nbsp;</div>
<div class="a2">&nbsp;</div>
<div class="a3">&nbsp;</div>
<div class="a2">&nbsp;</div>
<div class="a3">&nbsp;</div>
<div class="a4">&nbsp;</div>
<div class="a4">&nbsp;</div>
<div class="a2">&nbsp;</div>
<div class="a2">&nbsp;</div>
<div class="a4">&nbsp;</div>
<div class="a4">&nbsp;</div>
<div class="a4">&nbsp;</div>

Но ничего не вышло. Все раскладывается с кучей белых незаполненых пятен и сразу и при масштабировании браузера.
Попробывал придумать алгоритм расстановки при $(window).resize(...
Но сломал голову, как это сделать.

Прошу подсказать css или js или совместное решание.
В исходники js и css, прикрапленные к странице лазить уже пытался, но так и не нашел способа решения.
Зарание спасибо.

animhotep 19.09.2013 10:38

@media screen вам в помощь
но на том сайте вроде js-ом ресайзит, от этого и тормоза такие

kadomsky 20.09.2013 11:22

МОЖНО ПРИМЕР КАКОЙ ТО..

ksa 20.09.2013 11:38

Цитата:

Сообщение от animhotep
на том сайте вроде js-ом ресайзит

Там не только меняется/подгоняется размер "существующих" элементов... Там и новые добавляются в довесок некоторым элементам для пущей "заполняемости" страницы.

Т.ч., kadomsky, работы ты себе набрал валом! :D

animhotep 20.09.2013 13:06

Цитата:

Сообщение от kadomsky
МОЖНО ПРИМЕР КАКОЙ ТО..

пример чего? гугол знает о @media screen а пример ресайза через js на dunhill.com

tenshi 21.09.2013 16:28

http://css-tricks.com/snippets/css/a-guide-to-flexbox/


Часовой пояс GMT +3, время: 11:44.