В этой статье я хотел бы рассказать о моих попытках приручить блочную верстку под ситуацию, когда нужно сделать верстку растягивающуюся, но только для центральной колонки. Т.е. чтобы боковые колонки слева и справа имели фиксированную ширину, а центральная колонка с основным содержимым заполняла все оставшееся пространство окна браузера.
Для начала рассмотрим стандартную разметку для блочной верстки.
Код HTML:Блок wrapper служит «оберткой» для всей нашей верстки Назначения остальных блоков такие: header – заголовок или шапка сайта; content – основное содержимое сайта (центральная колонка); right – правая колонка; left – левая колонка; footer – «подвал» сайта; content_right – вспомогательный (не семантический) блок, содержащий центральную и правую колонки сайта.<div id="wrapper"> <div id="header"> Шапка </div> <div id="content_right"> <div id="content"> Контент </div> <div id="right"> Правая колонка </div> </div> <div id="left"> Левая колонка </div> <div id="footer"> Подвал </div> </div>
Данная модель прекрасно подходит для верстки с фиксированными или заданными процентным соотношением колонками. Для нашей же задачи необходимо добавить два не семантических элемента content_right_inner и content_center. Вот как это выглядит.
Код HTML:Далее пропишем стили для наших блоков. Для начала зададим минимальную ширину сайта в 800 пикселей.<div id="wrapper"> <div id="header"> Шапка </div> <div id="content_right"> <div id="content_right_inner"> <div id="content_center"> <div id="content"> Контент </div> </div> <div id="right"> Правая колонка </div> </div> </div> <div id="left"> Левая колонка </div> <div id="footer"> Подвал </div> </div>
Код HTML:Боковые колонки сделаем шириной в 200 пикселей и с помощью отрицательных и положительных margin-ов описываем остальные стили.#wrapper { min-width: 800px; }
Код HTML:В завершении не забудьте прописать тип документа в начале файла. К сожалению, данный способ заработал у меня только при строгом типе xhtml 1.0.#header { height: 100px; color: white; background-color: blue; } #content_right { width: 100%; float: right; margin-left: -200px; } #content_right_inner { margin-left: 200px; } #content_center { width: 100%; float: left; margin-right: -200px; } #content { margin-right: 200px; color: white; background-color: green; } #right { width: 200px; float: right; color: white; background-color: gray; } #left { width: 200px; float: left; color: white; background-color: red; } #footer { clear: both; height: 50px; color: white; background-color: purple; }
Код HTML:В итоге, при некоторых ограничениях на тип документа, мы получили резиновую блочную верстку с фиксированными колонками по бокам. При этом основное содержимое сайта (центральная колонка) находится выше боковых колонок, что положительно сказывается на продвижении сайта в поисковиках.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
Автор статьи: http://chtonovenkogo.ru
Резиновая блочная верстка с фиксированными колонками по бокам
(Ответов: 10, Просмотров: 4791)
- 04.10.2011 00:30
Спасибо сказали:
FullHouse(04.10.2011), - 04.10.2011 12:13Дипломник

- Регистрация: 16.04.2011
- Сообщений: 150
- Репутация: 48
Мой вариант, вроде, с меньшим кодом
PHP код:и CSS<div id="header"><p>Шапка</p></div>
<div id="left-col">Левая колонка</div>
<div id="right-col">Правая колонка</div>
<div id="center-col">Центральная колонка</div>
<div id="footer">футер</div>
PHP код:Валидность не гарантирую(не проверял), но работает точно./*Границы для вида*/
#header {width:100%; height:200px; border: 1px solid black;}
#left-col {width:250px; float:left; border: 1px solid green;}
#right-col {width:250px; float:right; border: 1px solid green;}
#center-col {margin:0 250px 0 250px; border: 1px solid red; height:500px;}
#footer {width:100%; height:200px; border: 1px solid black; clear: both;}
Скачать одним архивом http://www.qpqr.ru/htmlTemplate.rar
Кстати, вместо wrapper я бы задействовал body, если фон будет белый.Спасибо сказали:
OKyJIucT(04.10.2011), - 04.10.2011 16:57Минус этого варианта в том, что сначала идут сайдбары, а только потом контент. Поэтому сначала в браузер загружается (или поисковый робот ест) баннеры, всякие теги, и прочий мусор, и только потом контент.Мой вариант, вроде, с меньшим кодом
Для SEO (да и для пользователей) лучше сначала кода контент а затем сайдбары.
В этом отношении первый способ лучше имхо. - 04.10.2011 17:30
Faraday, при современных скоростях интернета доли секунды ничего не решат :)
- 04.10.2011 17:53Дипломник

- Регистрация: 16.04.2011
- Сообщений: 150
- Репутация: 48
Вы думаете поисковый бот не умеет определять где сайдбар а где контент? Тогда надо шапку сайта помещать, так же, как и остальные сайдбары, вниз под контент?
А если я в таблицах верстаю, то всё!, не видать мне топа))), так как в любом случае при трех колонках, левая будет выше.
Для того чтобы закрыть "мусор", если у вас он есть, а сайдбар не является таковым, надо пользоваться тегами noindex.
Кстати в Яндексе тоже не знают как правильно сайты верстать (пример: http://help.yandex.ru/catalogue/?id=873431) - напишите им))Спасибо сказали:
OKyJIucT(04.10.2011), - 04.10.2011 18:10
Я не говорю, что это критично, да и сам далеко не профи в СЕО. Конечно я знаю, что поисковики отлично определяют сквозные блоки на страницах, но во многих местах советуют размещать главное содержание по коду как можно выше.
+ иногда такое замечал, какой-то баннер или скрипт не открывается (сторонний сайт оффлайн), и вся страница тормозит.
Всё это моё имхо, сори если у кого то другое мнение. - 09.10.2011 22:13Гуру

- Регистрация: 09.10.2011
- Сообщений: 1,813
- Репутация: 251
to archerl есть стандартные шаблоны в Dreamweaver CS5 зачем делать то что уже есть? И выбор там лучше.
- 10.10.2011 23:10
pyramida, а точно там лучше есть? Приведи лучшее решение, если не трудно.
- 11.10.2011 04:39Гуру

- Регистрация: 09.10.2011
- Сообщений: 1,813
- Репутация: 251
archerl, открой программу и посмотрите шаблоны. Их решения включают даже совместимость с броузерами твое нет.
- 11.10.2011 08:10
Не в обиду, но:
когда встречаю термин резиновой верстки на дивах и вижу специально написанный для этого опус, всегда вспоминаю следующее высказывание:
В Вилларибо и Виллабаджо опять дедлайн. Пока ребята из Вилларибо верстают сайт дивами, ребята из Виллабаджо уже всё сверстали на таблицах и еб*шат друг друга в квейк.
© neatkariga at lj
Люди! Смотрите на мир проще! :-)
Тэги топика:
Похожие темы
| Темы | Раздел | Ответов | Последний пост |
|---|---|---|---|
Вёрстка/натяжка на WP | Создание сайтов | 7 | 15.04.2014 18:34 |
Движок форума с боковыми колонками | Софт, скрипты, сервисы | 0 | 27.04.2011 21:30 |
HTML верстка сайтов. HTML/CSS верстка. | Реклама партнерских программ | 2 | 26.07.2010 13:12 |
Верстка | Софт, скрипты, сервисы | 13 | 03.01.2010 03:20 |
Интересные темы
верстка с помощью div
Верстка с помощью div, чем она лучше табличной и все что еще нужно знать новичку.
быстрый броузер
FireFox, Opera, Chrome, Explorer, Safari, какой из них самый быстрый броузер, каким лучше пользоваться.
самый быстрый браузер
В этой теме описание тесирования всех популярных браузеров на скорость, почитай про самый быстрый браузер.





