«Резиновым дизайном» будем называть структуру веб-страницы, которая автоматически приспосабливается под определенный размер окна браузера пользователя. Такой макет имеет несколько преимуществ:
Среди недочетов можно отметить придирчивость разных браузеров к <резиновому> макету и большая вероятность появления ошибок. В связи с чем повышается сложность верстки веб-страниц.
Перед созданием макета следует продумать следующие моменты: количество колонок (две, три или более), ширина отдельных блоков, будут ли некоторые колонки фиксированной ширины и т.д. Типичные шаги описаны ниже.
На рис. 1 приведены типичные схемы размещения колонок. Красным цветом выделен заголовок страницы, светло-серым — область для навигации, рекламы, небольших текстовых вставок и т.д., а белым цветом — место для основного контента. Нижняя часть страницы, как правило, отводится для контактной информации, баннеров, кнопочек и других не самых существенных элементов.
|
|
|
|||||||||||||||||||||||||||
а. две колонки | б. три колонки | в. четыре колонки |
Рис. 1. Варианты размещения колонок
<div style="width: 100%; background:
#fc6; border: 1px solid black">
И мышка рассказала следующее. Давным-давно, людям, чтобы достать яркие пригожие
яблоки с высоких деревьев, требовалась особая ловкость и умение. Не всякий
умел быстро забраться на яблоню (а эти деревья были тогда высокие-превысокие)
и суметь полакомиться вкусными плодами. И вот однажды пришел добрый волшебник
по имени Нортон, посмотрел он на страдания людей, покачал головой и сделал
специальную колотушку, с помощью которой любой человек мог получить плоды
с самого возвышенного дерева. Надо было только встать под него, ударить посильней
и ловить яблоки в корзину. Колотушка получилась очень красивая - ручка золоченая,
а сам набалдашник синий, одно удовольствие пользоваться.
</div>
</body>
</html>
<div style="width: 50%; background: #fc3;
border: 1px solid black">
<div style="width: 100%">Колотушка
получилась очень красивая - ручка золоченая, а сам набалдашник синий, одно
удовольствие пользоваться.</div>
</div>
В примере ширина первого слоя установлена в 50 процентов, а второй, который находится внутри него, занимает всю область внешнего слоя.
Отступы задаются параметрами CSS margin и padding для селектора BODY. Наличия двух атрибутов вместо одного, опять же требуют интересы разных браузеров, margin — IE, а padding — Opera и Netscape. Совмещение разных параметров гарантирует, что показываться веб-страница в разных браузерах будет одинаково.
Управлять отдельными отступами от разных краев экрана можно с помощью параметров margin-top, margin-bottom, margin-right и margin-left, которые соответственно изменяют расстояние от верхнего, нижнего, правого и левого краев окна браузера. Прежде чем их использовать, следует задать нулевое значение для параметров margin и padding (пример 3).
Пример 3. Изменение верхнего отступа от края браузераЗадать поля для всех сторон одновременно можно параметром padding (пример 4).
Пример 4. Установка полейБраузеры по разному интерпретируют данный код. Internet Explorer не изменяет общую ширину слоя, а браузеры Netscape и Opera добавляют значение полей к ширине самого слоя, увеличивая тем самым его величину. При ширине слоя 100 процентов это может оказаться критичным, так как приведет к появлению горизонтальной полосы прокрутки и тому, что часть данных не поместится целиком на веб-страницу. Одним из вариантов решения проблемы является использование полей для вложенных в слой элементов, например, параграфа (пример 5).
Пример 5. Установка полей для параграфа<div style="width: 100%; background:
#fc3; border: 1px solid black">
<p>Колотушка получилась очень красивая - ручка золоченая, а сам набалдашник
синий, одно удовольствие пользоваться.</p>
</div>
Конструкция DIV P означает, что стиль следует применять только к тегу P, который находится внутри тега DIV. Такая форма записи позволит использовать параграф в другом месте, а не только в слоях, не опасаясь, что будут добавлены поля вокруг текста.