Что такое div контейнер. Блочная верстка div — основы. Анонимные строчные боксы

HTML-теги — основа языка HTML. Теги используются для разграничения начала и конца элементов в разметке.

Каждый HTML-документ состоит из дерева HTML-элементов и текста. Каждый HTML-элемент обозначается начальным (открывающим) и конечным (закрывающим) тегом. Открывающий и закрывающий теги содержат имя тега.

Все HTML-элементы делятся на пять типов:

  • пустые элементы — , ,
    , , , , , ,
    Используется для хранения дополнительной информации о странице. Эту информацию используют браузеры для обработки страницы, а поисковые системы — для ее индексации. В блоке может быть несколько тегов , так как в зависимости от используемых атрибутов они несут разную информацию. Индикатор измерения в заданном диапазоне. Раздел документа, содержащий навигационные ссылки по сайту. Определяет секцию, не поддерживающую сценарий (скрипт). Контейнер для встраивания мультимедиа (например, аудио, видео, Java-апплеты, ActiveX, PDF и Flash). Также можно вставить другую веб-страницу в текущий HTML-документ. Для передачи параметров встраиваемого плагина используется тег . Упорядоченный нумерованный список. Нумерация может быть числовая или алфавитная. Контейнер с заголовком для группы элементов . Определяет вариант/опцию для выбора в раскрывающемся списке , или . Поле для вывода результата вычисления, рассчитанного с помощью скрипта.

    Параграфы в тексте. Определяет параметры для плагинов, встраиваемых с помощью элемента . Элемент-контейнер, содержащий один элемент и ноль или несколько элементов . Сам по себе ничего не отображает. Дает возможность браузеру выбирать наиболее подходящее изображение. Выводит текст без форматирования, с сохранением пробелов и переносов текста. Может быть использован для отображения компьютерного кода, сообщения электронной почты и т.д. Индикатор выполнения задачи любого рода. Определяет краткую цитату. Контейнер для Восточно-Азиатских символов и их расшифровки. Определяет вложенный в него текст как базовый компонент аннотации. Добавляет краткую характеристику сверху или снизу от символов, заключенных в элементе , выводится уменьшенным шрифтом. Отмечает вложенный в него текст как дополнительную аннотацию. Выводит альтернативный текст в случае если браузер не поддерживает элемент . Отображает текст, не являющийся актуальным, перечеркнутым. Используется для вывода текста, представляющего результат выполнения программного кода или скрипта, а также системные сообщения. Отображается моноширинным шрифтом. Используется для определения сценария на стороне клиента (обычно JavaScript). Содержит либо текст скрипта, либо указывает на внешний файл сценария с помощью атрибута src . Определяет логическую область (раздел) страницы, обычно с заголовком. Элемент управления, позволяющий выбирать значения из предложенного множества. Варианты значений помещаются в . Отображает текст шрифтом меньшего размера. Указывает местоположение и тип альтернативных медиаресурсов для элементов , , . Контейнер для строчных элементов. Можно использовать для форматирования отрывков текста, например, выделения цветом отдельных слов. Расставляет акценты в тексте, выделяя полужирным. Подключает встраиваемые таблицы стилей. Задает подстрочное написание символов, например, индекса элемента в химических формулах. Создаёт видимый заголовок для тега . Отображается с закрашенным треугольником, кликнув по которому можно просмотреть подробности заголовка. Задает надстрочное написание символов.

    Таблица-шпаргалка с тегами

    Для удобства пользования я сгруппировала теги по тематическим разделам, добавив значения свойства display для каждого тега. Чтобы перейти к таблице, кликните по рисунку.



    w3 css (17)

    Учитывая следующий HTML:

    Я бы хотел, чтобы #copyright придерживался нижней части #container .

    Могу ли я достичь этого, не используя абсолютное позиционирование? Если свойство float поддерживает значение «bottom», похоже, что это будет трюк, но, к сожалению, этого не происходит.

    HTML: content footer CSS: html, body { width: 100%; height: 100%; } .overlay { min-height: 100%; position: relative; } .container { width: 900px; position: relative; padding-bottom: 50px; } .height { width: 900px; height: 50px; } .footer { width: 900px; height: 50px; position: absolute; bottom: 0; }

    В CSS ничего не называется float:bottom . Лучше всего использовать позиционирование в таких случаях:

    Position:absolute; bottom:0;

    Для них есть только один ребенок в контейнере, вы можете использовать подход table-cell и vertical-align который надежно работал для позиционирования одного div внизу его родителя.

    Обратите внимание, что использование table-footer-group качестве других упомянутых ответов приведет к нарушению расчета высоты родительской table .

    #container { display: table; width: 100%; height: 200px; } #item { display: table-cell; vertical-align: bottom; } Single bottom item

    Если вы хотите, чтобы он «прилипал» к низу, независимо от высоты контейнера, то абсолютное позиционирование - это путь. Конечно, если элемент авторского права является последним в контейнере, он всегда будет внизу.

    Можете ли вы расширить свой вопрос? Объясните, что именно вы пытаетесь сделать (и почему вы не хотите использовать абсолютное позиционирование)?

    Его старый вопрос, но это уникальный подход, который может помочь в нескольких случаях.

    Чистый CSS, без абсолютного позиционирования, без фиксации любой высоты, кросс-браузер (IE9 +)

    Поскольку обычный поток «сверху вниз», мы не можем просто просить #copyright div придерживаться нижней части своего родителя без какого-либо позиционирования какого-то рода. Но если мы хотели, чтобы #copyright div придерживался вершины его родитель, это будет очень просто - потому что это нормальный поток.

    Поэтому мы будем использовать это в наших интересах. мы изменим порядок div s в HTML, теперь #copyright div находится вверху, а содержимое сразу же следует за ним. мы также делаем контент div растянутым полностью (используя псевдоэлементы и методы очистки)

    теперь речь идет только о том, чтобы вернуть этот порядок обратно в представление. что легко можно сделать с помощью CSS-преобразования.

    Мы вращаем контейнер на 180 градусов, а теперь: вверх-вниз. (и мы возвращаем обратно содержимое, чтобы снова выглядеть нормально)

    Если мы хотим иметь scroolbar в области содержимого, нам нужно применить немного больше магии CSS. как можно показать [в этом примере содержимое находится ниже заголовка, но его та же идея]

    * { margin: 0; padding: 0; } html, body, #Container { height: 100%; color: white; } #Container:before { content: ""; height: 100%; float: left; } #Copyright { background-color: green; } #Stretch { background-color: blue; } #Stretch:after { content: ""; display: block; clear: both; } #Container, #Container>div { -moz-transform: rotateX(180deg); -ms-transform: rotateX(180deg); -o-transform: rotate(180deg); -webkit-transform: rotateX(180deg); transform: rotateX(180deg); } Copyright Foo web designs Element 1 Element 2

    Фактически, принятый ответ @User будет работать только в том случае, если окно высока, а контент короткий. Но если контент высок, а окно короткое, оно поместит информацию об авторских правах на содержимое страницы, а затем прокручивается вниз, чтобы увидеть содержимое, оставив вас с плавающим уведомлением об авторских правах. Это делает это решение бесполезным для большинства страниц (например, эта страница).

    Наиболее распространенный способ сделать это - продемонстрированный подход «CSS липкий нижний колонтитул» или немного более тонкое изменение. Этот подход отлично работает - если у вас есть фиксированный верхний нижний колонтитул.

    Если вам нужен нижний колонтитул переменной высоты, который будет отображаться в нижней части окна, если содержимое слишком короткое, а внизу содержимого, если окно слишком короткое, что вы делаете?

    Проглотите свою гордость и используйте стол.

    Например:

    * { padding: 0; margin: 0; } html, body { height: 100%; } #container { height: 100%; border-collapse: collapse; }

    Тег для создания таблицы.
    Определяет тело таблицы.
    Создает ячейку таблицы.
    Используется для объявления фрагментов HTML-кода, которые могут быть клонированы и вставлены в документ скриптом. Содержимое тега не является его дочерним элементом.
    Создает большие поля для ввода текста.
    Определяет нижний колонтитул таблицы.
    Создает заголовок ячейки таблицы.
    Определяет заголовок таблицы.
    Определяет дату/время.
    Заголовок HTML-документа, отображаемый в верхней части строки заголовка браузера. Также может отображаться в результатах поиска, поэтому это следует принимать во внимание предоставление названия.
    Создает строку таблицы.
    Добавляет субтитры для элементов и .
    Выделяет отрывок текста подчёркиванием, без дополнительного акцента.
    Создает маркированный список.
    Выделяет переменные из программ, отображая их курсивом.
    Добавляет на страницу видео-файлы. Поддерживает 3 видео формата: MP4, WebM, Ogg.
    Указывает браузеру возможное место разрыва длинной строки.
    Lorem ipsum, etc.
    Copyright some evil company...

    Попробуйте. Это будет работать для любого размера окна, для любого количества контента для любого нижнего колонтитула любого браузера... даже IE6.

    Если вы придумываете идею использования таблицы для макета, займите секунду, чтобы спросить себя, почему. CSS должен был облегчить нашу жизнь - и это в целом, но факт в том, что даже после всех этих лет он все еще является нарушенным, противоречивым беспорядком. Он не может решить каждую проблему. Это неполное.

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

    Если вы не знаете высоту дочернего блока:

    #parent{background:green;width:200px;height:200px;display:table-cell;vertical-align:bottom;} .child{background:red;vertical-align:bottom;} child

    Если вы знаете, что высота дочернего блока добавляет дочерний блок, добавьте padding-top / margin-top:

    #parent{background:green;width:200px;height:130px;padding-top:70px;} .child{background:red;vertical-align:bottom;height:130px;} child

    Parent { display: flex; flex-direction: column; } .child { margin-top: auto; }

    Parent { height: 100px; border: 5px solid #000; display: flex; flex-direction: column; } .child { height: 40px; width: 100%; background: #f00; margin-top: auto; } Align to the bottom

    Решение выше, вероятно, более гибкое, однако, это альтернативное решение:

    Parent { display: flex; } .child { align-self: flex-end; }

    Parent { height: 100px; border: 5px solid #000; display: flex; } .child { height: 40px; width: 100%; background: #f00; align-self: flex-end; } Align to the bottom

    В качестве дополнительной заметки вы можете добавить префиксы поставщиков для дополнительной поддержки.

    Кроме того, если есть положения с использованием position:absolute; или position:relative; , вы всегда можете попробовать padding родительский div или поместить margin-top:x; , В большинстве случаев это не очень хороший метод, но в некоторых случаях он может пригодиться.

    Просто потому, что это вообще не упоминалось, что обычно хорошо работает в таких ситуациях, как ваше:

    Вам нужно было бы форматировать div-copyright, аналогично другому контейнеру (такая же общая ширина, центровка и т. Д.), И все в порядке.

    Copyright Foo web designs

    Единственный раз, когда это может быть не идеальным, - это когда ваш контейнер-div объявлен с height:100% , и пользователю потребуется прокрутить вниз, чтобы увидеть авторское право. Но даже вы можете работать (например, margin-top:-20px - когда высота вашего элемента авторского права составляет 20 пикселей).

    • Абсолютное позиционирование
    • Нет табличного макета
    • Никаких сумасшедших css, которые выглядят по-разному в каждом другом браузере (ну, по крайней мере, IE, вы знаете)
    • Простое и четкое форматирование

    Кроме того: я знаю, что OP попросил решение, которое «... прилипает к дну« контейнера »div ...» , а не что-то под ним, но давайте, люди ищут хорошие решения здесь, и это это один!

    Div of style, position:absolute;bottom:5px;width:100%; работает, но для этого потребовалась более ситуация с прокруткой.

    Window.onscroll = function() { var v = document.getElementById("copyright"); v.style.position = "fixed"; v.style.bottom = "5px"; }

    Это подход, предназначенный для создания элемента с известной высотой и шириной (по крайней мере приблизительно) с поплавком вправо и оставаясь внизу, в то время как он ведет себя как встроенный элемент к другим элементам. Он ориентирован на нижний правый угол, потому что вы можете легко разместить его в любом другом углу с помощью других методов.

    Мне нужно было создать навигационную панель, которая имела бы фактические ссылки в правом нижнем углу и случайные элементы брата, при этом гарантируя, что сам бар растягивается должным образом, не нарушая макет. Я использовал элемент «shadow», чтобы занять пространство ссылок на панели навигации и добавил его в конце дочерних узлов контейнера.

    Copyright Foo web designs filler #copyright { display:inline-block; position:absolute; bottom:0; right:0; } #copyright-s { float:right; visibility:hidden; width:20em; /* ~ #copyright.style.width */ height:3em; /* ~ #copyright.style.height */ }

    #container{width:100%; float:left; position:relative;} #copyright{position:absolute; bottom:0px; left:0px; background:#F00; width:100%;} #container{background:gray; height:100px;} Copyright Foo web designs

    Попробуй это;

    Copyright Foo web designs

    Создайте еще один контейнер div для элементов выше #copyright . Только над авторским правом добавьте новый div: Он заставит нижний колонтитул находиться под всем остальным, как в случае использования относительного позиционирования (bottom:0px;).

    Да, вы можете сделать это без absolute позиционирования и без использования table s (которая винт с разметкой и т. Д.).

    DEMO
    Это проверено для работы с IE> 7, chrome, FF и является очень простой возможностью добавить к существующему макету.

    Some content you don"t want affected by the "bottom floating" div supports not just text Some other content you want kept to the bottom this is in a div #container { height:100%; border-collapse:collapse; display: table; } .foot { display: table-row; vertical-align: bottom; height: 1px; }

    Он эффективно делает то, что float:bottom , даже учитывая проблему, указанную в ответе @Rick Reilly!

    Использование свойства translateY и top

    Просто установите дочерний элемент на позицию: относительный и перемещайте его вверх: 100% (это высота 100% родителя) и придерживайтесь нижней части родительского объекта путем преобразования: translateY (-100%) (это -100% высоты ребенок).

    • вы не берете элемент из потока страницы
    • он динамичен

    Но все же просто обходной путь:(

    Copyright{ position: relative; top: 100%; transform: translateY(-100%); }

    Не забывайте префиксы для более старого браузера.

    В основе языка HTML лежит понятие «тэг» (англ.: tag -ярлычок, этикетка). Тэги заключаются в угловые скобки (< >) и образуют пары – контейнеры (открывающий тэг и закрывающий). Например, контейнером HTML документа является пара тэгов и . В web-странице включены контейнеры, отвечающие за заголовок документа (голова) и содержат дополнительную информацию, а также контейнеры, отвечающие за само содержание документа (тело). Они представлены на рисунке.

    Итак HTML документ заключается в контейнер , заголовок в контейнер , а содержание документа в контейнере . Контейнер , расположенный в заголовке (контейнере ) содержит текст, отображающийся в верхней строке окна браузера. В контейнер заголовка также могут быть добавлены тэги, содержащие кодировку, ключевые слова web-страницы, а также код для подключения файлов каскадных таблиц стилей CSS, языка программирования jаvascript, VBScript и т.д.

    Пример простейшей HTML странички, содержащей только основные тэги:

    Название страничкиСодержание простейшей странички

    Результат работы указанного кода изображен на рисунке.

    Как видно из примера текст «Содержание простейшей странички» отображается обычным текстом. Для того чтобы произвести форматирование этого текста, необходимо использовать специальные тэги. Пример использования тэгов форматирования представлен на рисунке.

    Для изменения шрифта, его цвета и размера используется тэг с параметрами “face”, “color” и “size”. Например для того чтобы задать шрифт “arial” красного цвета и 14 размера необходимо написать следующий код:

    Форматируемтекст

    Для выделения абзаца в тексте используется тэг

    В контейнер которого как правило помещается каждый абзац текста. Для создания заголовка используются тэги , , , , , .

    Для формирования списков в теле документа используются контейнеры , и . Причем тэг формирует нурмерованный список, тэг

      - маркированный список, а в тэгах
    • помещаются элементы списка. Пример кода отображения списков, представленный в виде нумерованного и маркированного списков представлен на рисунке.

      Для связи двух и более Web-страниц между собой используются гиперссылки, для создания которых используется тэг . Причем в тэгах гиперссылок используются дополнительные атрибуты, позволяющие либо перейти к другой web-странице, либо переместиться внутри данной страницы. Второй способ желательно использовать в большом документе, имеющем несколько смысловых разделов.

      Пример использования гиперссылок представлен на рисунке.

      При указании URL адреса другой страницы необходимо указывать либо полный абсолютный путь к странице «полный путь/папка/страница» либо относительный (относительно данной страницы) «папка/страница». Параметр “target” позволяет открыть web-страницу в новом или существующем окне браузера.

      Для вставки изображения на web-страницу используется тэг с параметрами src (путь к изображению), width (ширина изображения), height (высота изображения), border (рамка вокруг рисунка). Пример кода вставки изображения:

      Часто при создании Web-страниц необходимым является задание фонового цвета или фонового изображения. Для этого используются атрибуты тэга «bgcolor» или «background-image». Пример вставки фонового цвета:

      Пример вставки фонового изображения:

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

      Контейнером называют элемент html-страницы, который предназначен для выделения определенного ее фрагмента. Это может быть абзац, заголовок, цитата, текстовый фрагмент и проч. Браузер никак не выделяет контейнер на html-странице.

      При помощи контейнера веб-мастер может "привязать" к определенному элементу html-страницы нужный стиль. Кроме этого, контейнер обеспечивает "привязку" поведения к элементу html-страницы.

      Контейнеры бывают двух видов: блочные контейнеры и встроенные контейнеры.

      Встроенный контейнер является частью блочного элемента html-страницы. Например, блочным контейнером может быть фрагмент текста абзаца, графическое изображение, которое помещено в абзац и проч.

      Для создания встроенного контейнера предназначен парный тег SPAN . Нужный фрагмент блочного элемента помещается внутрь тега SPAN , а в CSS создается нужный стиль, который затем "привязывается" к тегу SPAN .

      ПРИМЕР:

      Block {font-color: red} ...

      Ягоды у рябины красного цвета.

      Блочные контейнеры

      Блочный контейнер формируется при помощи парного тега DIV и используется достаточно часто. В блочный контейнер помещают различные блочные элементы: абзацы, заголовки, таблицы и проч.

      Займемся контейнерным Web-дизайном - изучим элементы интернет-страниц - блочные контейнеры.

      Освоим дополнительные атрибуты стилей, применяемых для задания параметров блочных контейнеров (их размеры и местоположение на Web-странице).

      А в завершение получим от CSS средства управления переполнением.

      В блочном контейнере могут быть размещены от одного до нескольких блочных элементов таких как заголовок, абзац, таблица и др.

      Для создания блочного контейнера применяется парный тег , с помещенным внутри html-кодом - содержимым контейнера. (листинги 10.1-10.3).

      В этом блочном контейнере размещен заголовок и два абзаца.

      Здесь - таблица.

      В этом - видеоролик и абзац. А еще добавили встроенный стиль, выравнивающий текст по центру. Видеоролик так же будет размещен по центру.

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

      Web-дизайн прошедшего времени и его недостатки

      Не так давно Web-программисты пользовались тремя основными направлениями контейнерного Web-дизайна : текстовым, фреймовым и табличным. Каждый по своему был хорош, но и имел недоработки. С появлением нового вида Web-дизайна - контейнерного, остальные уходят на второй план.

      Текстовый контейнерный Web-дизайн - обычный текстовый документ: абзацы, заголовки, большие цитаты, текст фиксированного формата и таблицы. Основное его преимущество - простой html-код. Недостатки: нудный вид web-страницы, отсутствие средств размещения элементов на Web-странице - только следуют друг за другом.

      Web-страница делится на четыре части: заголовок, полоса навигации, основной контент, сведения об авторе. Во всех страницах сайта все одинаково за исключением основного контента, которое должно быть уникальным.

      Получается, что HTML-код каждой web-страницы почти одинаков (кроме основного содержимого), и при загрузке каждой страницы идет загрузка одной и той же части кода. А чем больше объем файла, тем дольше он загружается (тем дольше ожидание пользователя). Вот бы загружать не весь html-код, а лишь часть - основной контент.

      Вот эту проблему текстовый Web-дизайн и не решает.

      Фреймовый контейнерный Web-дизайн - выход из создавшейся ситуации. Фрейм - выводит в отдельном месте страницы содержимое произвольной Web-страницы, адрес которой прописывается в его параметрах.

      Страница сайта - набор фреймов. Некоторые участки содержимого выводились в отдельные Web-страницы, адреса которых прописывались в параметрах их фреймов. В других страницах размещался лишь основной материал. Преимущество фреймового контейнерного web-дизайна - повысилась скорость загрузки страницы. Но есть и минусы: фреймы не стандартизированы и нет возможности изменить их структуру. Позже появилась новая разновидность web-дизайна - табличный.

      Табличный контейнерный Web-дизайн . При создании web-страницы применяется таблица. Заголовок, авторские права, полоса навигации размещались по отдельным ячейкам этой таблицы. В дальнейшем табличный web-дизайн стал более популярным, чем фреймовый.

      Преимущества:

      Возможность одинакового отображения web-страниц во всех web-браузерах.

      Форматирование таблиц и их ячеек стилями CSS.

      - сложные Web-страницы - размещение различных фрагментов содержимого, увеличение числа колонок текста.

      Недостатки:

      Все страницы опять имели повторяющиеся части html-кода, что отразилось на снижении загрузки страницы.

      Большой и сложный html-код.

      Так давайте же перейдем к изучению новой разновидности web-дизайна.

      Сущность контейнерного Web-дизайна

      Для размещения отдельных фрагментов содержимого Web-страниц использует блочные контейнеры, с которыми мы познакомились в начале этой главы. Отдельные контейнеры создаются для заголовка Web-сайта, полосы навигации, основного содержимого и сведений об авторских правах. Если основное содержимое имеет сложную структуру и состоит из множества независимых частей, для каждой из них создают отдельный контейнер.

      Для задания различных параметров блочных контейнеров предусмотрены специальные атрибуты стиля CSS. К таким параметрам относятся размеры (ширина и высота), местоположение контейнеров и их поведение при переполнении. Также мы можем задать для контейнеров цвет фона, создать отступы и рамки, чтобы их выделить (о параметрах отступов и рамок речь пойдет в главе 11).

      И что, контейнерный Web-дизайн так уж хорош? Давайте рассмотрим недостатки трех старых принципов Web-дизайна и выясним, сможет ли он их решить.

      Непритязательный вид и линейное представление Web-страниц - у текстового Web-дизайна. Мы можем расположить контейнеры на Web-странице практически как угодно и поместить в них произвольное содержимое: текст, таблицы, изображения, аудио- и видеоролики и даже другие контейнеры. А CSS позволит нам задать для них практически любое представление.

      - "Монолитность" Web-страниц - у текстового и табличного Web-дизайна. Современные Web-обозреватели позволяют с помощью специально созданного поведения загрузить в контейнер Web-страницу, сохраненную в отдельном файле, т. е. организовать подгружаемое содержимое. Мы займемся этим в главе 18.

      - "Нестандартность" фреймов - у фреймового Web-дизайна. Контейнеры и соответствующие теги официально стандартизированы комитетом W3C и обрабатываются всеми Web-обозревателями одинаково.

      Громоздкость HTML-кода - у табличного Web-дизайна. HTML-код, формирующий контейнеры, исключительно компактен. Как мы уже знаем, блочный контейнер формируется всего одним парным тегом .

      Медленная загрузка Web-страниц - у табличного Web-дизайна. Все Web-обозреватели отображают содержимое контейнеров прямо в процессе загрузки, так что Web-страницы визуально загружаются очень быстро.

      И что, контейнерный Web-дизайн так хорош? И он совсем не имеет недостатков? Увы, ничего совершенного в мире нет...

      Проигрывает табличному в возможности реализации сложного дизайна Web-страниц. Таблица позволяет создать на Web-странице множество колонок разной ширины, содержащих разное содержимое. Чтобы сделать это с помощью контейнеров, скорее всего, придется применять вложенные друг в друга контейнеры, сложные стили и, возможно, поведение, которое уже после окончания загрузки Web-страницы располагает контейнеры в нужных местах. Это, пожалуй, единственный недостаток контейнерного Web-дизайна.

      Что ж, с контейнерным Web-дизайном все в основном ясно. Давайте попрактикуемся. Переделаем наши Web-страницы с применением контейнерного Web-дизайна - "легкого", простого, современного.

      Представление для нашего Web-сайта

      Сначала разработаем схему расположения на Web-страницах соответствующих контейнеров. Лучше всего нарисовать ее на бумаге или в программе графического редактора.

      Классическая схема контейнерного Web-дизайна (и не только контейнерного) показана на рис. 10.1. Как видим, в самом верху располагается заголовок Web-сайта, ниже него в одну линию по горизонтали выстроились полоса навигации и основное содержимое, а под ними пристроились сведения об авторских правах. Давайте используем именно эту схему.

      Откроем в Блокноте Web-страницу index.htm. Найдем в ее HTML-коде четыре важных фрагмента любой Web-страницы: заголовок Web-сайта, полосу навигации, ос новное содержимое и сведения об авторских правах. Поместим их в блочные контейнеры .

      На рис. 10.1 показано, что заголовок Web-сайта предшествует полосе навигации, а не наоборот. Поэтому поменяем местами фрагменты HTML-кода, создающие эти контейнеры и их содержимое.

      Впоследствии мы привяжем к созданным контейнерам стили, задающие их размеры и местоположение на Web-странице. Поскольку каждый из этих контейнеров присутствует на каждой Web-странице в единственном экземпляре, применим для этого именованные стили. Дадим им такие имена:

      Cheader - стиль для контейнера с заголовком Web-сайта;

      Cnav - стиль для контейнера с полосой навигации;

      Cmain - стиль для контейнера с основным содержимым;

      Ccopyright - стиль для контейнера со сведениями об авторских правах.

      Здесь буква "c" обозначает "container" - контейнер. Так мы сразу поймем, что данные стили применяются именно к контейнерам.

      Привязка именованного стиля к тегу выполняется путем указания имени этого стиля в качестве значения атрибута тега ID. Сделаем это для всех контейнеров.

      В листинге 10.4 приведен фрагмент HTML-кода Web-страницы index.htm со всеми нужными исправлениями.

      Сохраним Web-страницу index.htm и откроем ее в Web-обозревателе. Что-то изменилось по сравнению с тем, что было ранее? Ничего.