Двухколоночная адаптивная вёрстка с приоритетом контентного блока

toxic steel
На сайте с 28.12.2007
Offline
175
1203

Коллеги, возник вопрос по вёрстке. Во вложении условный макет (реальный прототип).

Макет статичный, не-резина, под 1024, адаптируется под 768 и 320. Сейчас на больших разрешениях по бокам просто добавляются свободные поля, но в планах есть внедрение версии под 1360 пикселей.

Цветом разукрасил одинаковые блоки на разных разрешениях.

Вопрос в следующем: сейчас вёрстка реализована последовательно:

<body>

<div id="logo"></div>

<div id="orange"></div>

<div id="menu"></div>

<div id="sidebar"></div>

<div id="search"></div>

<div id="content">Тут расположен важный контент</div>

<div id="sub-content"></div>

<div id="footer"></div>

</body>

Задача - поднять контентную часть (синяя) выше в коде, визуально сохранив всё как есть, включая адаптив и совместимость с не очень древними браузерами. То есть сделать так:

<body>

<div id="content">Тут расположен важный контент</div>

<div id="logo"></div>

<div id="orange"></div>

<div id="menu"></div>

<div id="sidebar"></div>

<div id="search"></div>

<div id="sub-content"></div>

<div id="footer"></div>

</body>

В моём представлении всё это решается с помощью абсолютного позиционирования и FLOAT. Нынешние верстальщики утверждают, что при использовании абсолютного позиционирования и Float будет невозможно сохранить адаптив:


если так делать, то не будет адаптива - той красоты под разные разрешения, которой они добиваются

У них есть какой-то свой шаманский способ, но он не дружит даже с относительно молодыми браузерами:

Можем сделать, но будет не корректно работать в браузере ЕС ниже 10 версии, на андроиде ниже 5-й и иос ниже 9.3.1

Меня терзают смутные сомнения относительно их утверждений. У кого есть опыт подобной вёрстки, или, может быть, даже живой пример?

Буду крайне признателен за помощь в наставлении верстальщиков на путь истинный...

:drink:

gif 154628.gif
gif 154629.gif
gif 154630.gif
Есть отличные, недорогие рекламные места на агрофоруме (http://farmerforum.ru/viewtopic.php?t=1725)! Клуб истинных ценителей денег (http://coinshunter.ru/).
[Удален]
#1

Запилите на бутстрапе и сделайте то что надо с помощью классов push и pull

toxic steel
На сайте с 28.12.2007
Offline
175
#2

А есть живой пример похожей вёрстки, чтобы прям показать, что способ рабочий? Сам я последний раз верстал сайт в те времена, когда слово "суши" было глаголом, от бутсрапов нещадно отстал 🤪 Могут быть проблемы с аргументацией

[Удален]
#3
toxic steel:
А есть живой пример похожей вёрстки, чтобы прям показать, что способ рабочий? Сам я последний раз верстал сайт в те времена, когда слово "суши" было глаголом, от бутсрапов нещадно отстал 🤪 Могут быть проблемы с аргументацией

http://itchief.ru/lessons/bootstrap-3/85-bootstrap-3-reordering-columns-grid-system

тут можно глянуть как работает, увеличивая и уменьшая окно браузера

I2
На сайте с 07.03.2015
Offline
38
#4

Ваши верстальщики правы, тут никаким бутстрапом не поможешь (насколько я знаю) . Если абсолюткой позиционировать, то верстка будет сыпаться при изменении коетента. Решить проблему можно при помощи js-а - при разных ширинах менять местами блоки, но это костыль еще тот. Самый оптимальный вариант, о котором ваши верстальщики говорят, это использовать flexbox. В нем есть свойство order, позволяет менять местами блоки, не трогая разметку.

Качественная верстка PSD макетов (/ru/forum/974524)
[Удален]
#5
indenger20:
Ваши верстальщики правы, тут никаким бутстрапом не поможешь (насколько я знаю) . Если абсолюткой позиционировать, то верстка будет сыпаться при изменении коетента. Решить проблему можно при помощи js-а - при разных ширинах менять местами блоки, но это костыль еще тот. Самый оптимальный вариант, о котором ваши верстальщики говорят, это использовать flexbox. В нем есть свойство order, позволяет менять местами блоки, не трогая разметку.

В посте написано, что сайт адаптивен и без резины. Это можно реализовать даже без бутстрапа с помощью медиаправил. Нет в верстке ничего невозможного. Бывают просто интересные задачи.

I2
На сайте с 07.03.2015
Offline
38
#6

Так вопрос был в том, как поменять положение блока, не меняя разметки. Ответ - flexbox.

F2
На сайте с 08.08.2013
Offline
111
#7

Адаптив - это набор правил под разные разрешения экрана.

Что мешает описать абсолютное позиционирование для всех нужных разрешений?

⭐ ⭐ ⭐
I2
На сайте с 07.03.2015
Offline
38
#8

а как при абсолютном позиционировании добавлять/удалять контент?

каждый раз придется по новому позиционировать.

[Удален]
#9

Не нужно там абсолютное позиционирование и флексбоксы. Кроссбраузерно это решается на JS. На бутстрапе такое спокойно можно сделать. Логичнее конечно будет немного поменять разметку, но как я понял, важна не сама разметка, а чтобы важный для SEO контент находился как можно выше в коде.

toxic steel
На сайте с 28.12.2007
Offline
175
#10

Коллеги, огромное всем спасибо за поддержку темы!

indenger20:
Ваши верстальщики правы, тут никаким бутстрапом не поможешь

Бутстрап мы с ними пока не обсуждали

Если абсолюткой позиционировать, то верстка будет сыпаться при изменении коетента.

Контент может меняться только в синем, красном и жёлтых блоках. Все остальные блоки статичны. Жёлтый по своему местоположению может быть релативным.

Абсолютное позиционирование, на сколько я помню, задаёт начало координат. Опускаем синий блок на высоту шапки, а всю шапку поднимаем в 0:0. Красный и синий меняем местами с помощью float. Первый план был именно такой. Но я на нём не настаиваю, если есть более изящное решение - было бы здорово его найти.

Решить проблему можно при помощи js-а - при разных ширинах менять местами блоки

О, я по своему древнему опыту помню такие костыли 🙄 Хотелось бы их избежать :)

вариант, о котором ваши верстальщики говорят, это использовать flexbox

Они почему-то предпочитают говорить загадками и не называть вещи своими именами, поэтому flexbox ли это мы можем только догадываться. На сайте сейчас суммарно около 10% трафика с Сафари 9 и IE 10... Если flexbox - тот самый вариант, о котором они говорят и он действительно не дружит с этими браузерами, то это не решение проблемы, а пачка новых проблем :o

Нет в верстке ничего невозможного. Бывают просто интересные задачи.

Хороший подход 🍻

Что мешает описать абсолютное позиционирование для всех нужных разрешений?

В моём представлении - ничего. Ну, видимо, у нынешних верстальщиков своё мнение на этот счёт.

а как при абсолютном позиционировании добавлять/удалять контент?
каждый раз придется по новому позиционировать.

Отпозиционировать нужно только шапку и начало контентной области. Это совсем не значит, что высоту контентной области надо задавать жёстко. Футер и жёлтая область остаются на тех же местах, что и при обычной последовательной вёрстке.

важна не сама разметка, а чтобы важный для SEO контент находился как можно выше в коде

Совершенно верно, хочется убрать все лишние строки между началом страницы и началом контента.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий