CSS-макеты

Данный раздел посвящен основным типам CSS-макетов. Макет — это разметка документа, характеризующая его структуру, т.е. скелет сайта.

header
Шапка
sidebar
Левая боковая панель
content
Содержимое
sidebar
Правая боковая панель
footer
Подвал

Типы макетов:

Некоторые из макетов построены на основе схем позиционирования, в некоторых применяется плавающее размещение.

Фиксированный макет с одной колонкой

 
container
Область дизайна всегда выровнена по центру и имеет фиксированную ширину
 

Ширина колонки задается свойством width, а выравнивание по центру свойством margin со значением auto. Свойство margin со значением auto выравнивает блок по центру только в комбинации со свойством width. Чтобы убрать поля, установленные по умолчанию для веб-страницы, для селектора body следует добавить свойство margin с нулевым значением.

Откройте Пример 1, попробуйте изменить ширину окна браузера. Проанализируйте код данной web-страницы.

В данном примере шапка сайта зафиксирована в верхней части окна браузера. Для этого использовалось свойство position со значением fixed. Элемент остается на одном месте при прокрутке, а его положение задается координатами через свойство(а) top, right, bottom, left.

Добавление отступов и границ к блочному элементу увеличивает его ширину, что надо учитывать при вёрстке. Однако ширина вырастает, только если для блока установлено значение width. Если требуется использовать свойство width совместно со свойствами padding и/или border, то следует:

Фиксированный двухколоночный макет

nav
Навигация
content
container

Первый способ формирования колонок основан на позиционировании.

Для блока conrainer задаём относительное позиционирование, а для внутренних блоков (nav, content) абсолютное. При таком сочетании значений можно устанавливать положение элементов относительно родителя с помощью свойств left, right, top, bottom. Для блока nav задается свойство width, а для блока content требуется установить свойство left со значением равным ширине левой колонки или превышающим её и свойство width. Суммарная ширина колонок не должна превышать ширину макета (в рассмотренном выше примере 150px+830px=980px).

Откройте Пример 2, попробуйте изменить ширину окна браузера. Проанализируйте код данной web-страницы.

Второй способ формирования колонок основан на плавающем размещении.

Для блока nav задается свойство float со значением left и свойство width, а для блока content требуется установить свойство margin-left со значением равным ширине левой колонки или превышающим её.

Откройте Пример 3, попробуйте изменить ширину окна браузера. Проанализируйте код данной web-страницы.

Резиновый двухколоночный макет

nav
Навигация
content
container

Действуем аналогично описанному выше способу формирования колонок с использованием плавающего размещения, но значения свойств width и margin-left задаем в процентах.

Свойство min-width для блока container устанавливает минимальную ширину, если окно браузера будет меньше этого значения, появится горизонтальная полоса прокрутки. Свойство max-width, наоборот, задаёт максимальную ширину, которая не будет превышена.

Откройте Пример 4, попробуйте изменить ширину окна браузера. Проанализируйте код данной web-страницы.

Три столбца с шапкой и нижним колонтитулом

header
Шапка
nav
Боковая панель
content
Содержимое
sidebar
Боковая панель
footer
Подвал

В данном макете используется плавающее размещение.

Откройте Пример 5, попробуйте изменить ширину окна браузера. Проанализируйте код данной web-страницы.

Обратите внимание, что свойство float для всех столбцов установлено в значение left, а сами столбцы размещаются друг за другом по горизонтали. Для элемента div с ID-селектором #footer используется свойство clear со значением both. Это гарантирует, что нижний колонтитул полностью очистит столбцы с плавающим размещением.

Для колонок можно указать фиксированную ширину или плавающую (использовать значения, выраженные в процентах).

Задание

домой назад далее