Чтение онлайн

на главную - закладки

Жанры

HTML 5, CSS 3 и Web 2.0. Разработка современных Web-сайтов

Дронов Владимир

Шрифт:

— none — обычное поведение. Если контейнеру, для которого указан данный атрибут стиля, предшествуют плавающие контейнеры, задавать это значение не рекомендуется.

Пример:

#ccopyright { clear: both }

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

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

часть 4

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

Как обычно, выпишем список параметров для всех созданных ранее контейнеров. Для контейнера с заголовком Web-сайта (cheader):

— ширина — 100 % (все окно Web-обозревателя).

Для контейнера с полосой навигации (cnavbar):

— ширина — 30 % (примерно треть ширины окна Web-обозревателя);

— минимальная ширина — 240 пикселов (это значение получено автором в результате экспериментов; оно примерно равно ширине полосы навигации);

— выравнивание — по левому краю (т. е. это будет плавающий контейнер).

Для контейнера с основным содержимым (cmain):

— ширина — 70 % (примерно две трети ширины окна Web-обозревателя);

— выравнивание — по левому краю.

Для контейнера со сведениями об авторских правах (ccopyright):

— ширина — 100 % (все окно Web-обозревателя);

— расположение — ниже всех плавающих контейнеров, выровненных по левому и правому краям.

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

На основе перечисленных требований напишем CSS-код, определяющий нужные стили (листинг 10.5).

Листинг 10.5

#cheader { width: 100 % }

#cnavbar { width: 30 %; min-width: 240px; float: left }

#cmain { width: 70 %; float: left }

#ccopyright { width: 100 %; clear: both }

Поместим этот код в самый конец таблицы стилей main.css, после чего сохраним ее. Откроем Web-страницу index.htm в Web-обозревателе и посмотрим, что получилось (рис. 10.2).

Мы сделали это! Много времени ушло на изучение HTML и CSS, но результат того стоит. Вот она — наша первая Web-страница, выполненная по канонам современного Web-дизайна.

Еще немного полюбуемся на преобразившуюся Web-страницу. И снова за дело.

Рис. 10.2. Web-страница index.htm, выполненная на основе контейнерного Web-дизайна, в Web-обозревателе

Параметры переполнения. Контейнеры с прокруткой

Ни у одного из контейнеров, формирующих дизайн нашей Web-страницы, мы не

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

Но что случится, если мы зададим для контейнера высоту? Тогда может выйти так, что содержимое контейнера не поместится в нем, и возникнет переполнение контейнера. Поведение контейнера зависит от параметров, которые мы зададим для него.

Атрибут стиля overflow как раз и задает поведение контейнера при переполнении:

overflow: visible|hidden|scroll|auto|inherit

Здесь доступны четыре значения:

— visible — высота контейнера увеличится, чтобы полностью вместить все содержимое (обычное поведение);

— hidden — не помещающееся в контейнер содержимое будет обрезано. Контейнер сохранит свои размеры;

— scroll — в контейнере появятся полосы прокрутки, с помощью которых можно просмотреть не помещающуюся часть содержимого. Эти полосы прокрутки будут присутствовать в контейнере всегда, даже если в них нет нужды;

— auto — полосы прокрутки появятся в контейнере, только если в них возникнет необходимость.

Пример:

#cmain { overflow: auto }

Мы задали для контейнера cmain такое поведение, когда при выходе содержимого за границы контейнера в нем появятся полосы прокрутки.

Здесь нужно сказать еще вот что. Атрибут стиля overflow имеет смысл только в том случае, если мы зададим для высоты контейнера абсолютное значение. При указании относительного значения высоты контейнера он всегда будет увеличиваться в размерах для того, чтобы вместить все содержимое, как будто для атрибута стиля overflow задано значение visible:

#cmain { height: 500px; overflow: auto }

Вот теперь контейнер cmain при необходимости обзаведется полосами прокрутки.

А в следующем примере атрибут стиля overflow можно не указывать — контейнер cmain всегда будет вести себя так, будто для упомянутого атрибута стиля задано значение visible:

#cmain { height: 50 %; overflow: auto }

Атрибуты стиля overflow-x и overflow-y задают поведение контейнера при выходе содержимого за пределы его границ, соответственно, по горизонтали и вертикали. Доступные значения у них те же, что и у атрибута стиля overflow:

#cnavbar { width: 270px; overflow-x: hidden }

Пользуясь только что изученными атрибутами стиля, мы можем создать на Web-странице контейнеры с прокруткой! Это обычные контейнеры с большим содержимым, для просмотра которого предусмотрены полосы прокрутки. Их преимущество в том, что посетитель, прокручивая содержимое такого контейнера, не затрагивает все остальные фрагменты Web-страницы (заголовок Web-сайта, полоса навигации и сведения об авторских правах). Весьма удобно.

Поделиться:
Популярные книги

Стеллар. Трибут

Прокофьев Роман Юрьевич
2. Стеллар
Фантастика:
боевая фантастика
рпг
8.75
рейтинг книги
Стеллар. Трибут

Его огонь горит для меня. Том 2

Муратова Ульяна
2. Мир Карастели
Фантастика:
юмористическая фантастика
5.40
рейтинг книги
Его огонь горит для меня. Том 2

На границе империй. Том 9. Часть 4

INDIGO
17. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 4

Наследник

Кулаков Алексей Иванович
1. Рюрикова кровь
Фантастика:
научная фантастика
попаданцы
альтернативная история
8.69
рейтинг книги
Наследник

Совершенно несекретно

Иванов Дмитрий
15. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Совершенно несекретно

Ваше Сиятельство 2

Моури Эрли
2. Ваше Сиятельство
Фантастика:
фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Ваше Сиятельство 2

Прометей: каменный век II

Рави Ивар
2. Прометей
Фантастика:
альтернативная история
7.40
рейтинг книги
Прометей: каменный век II

Единственная для темного эльфа 3

Мазарин Ан
3. Мир Верея. Драконья невеста
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Единственная для темного эльфа 3

Жандарм

Семин Никита
1. Жандарм
Фантастика:
попаданцы
альтернативная история
аниме
4.11
рейтинг книги
Жандарм

Долгий путь домой

Русич Антон
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
6.20
рейтинг книги
Долгий путь домой

Прогрессор поневоле

Распопов Дмитрий Викторович
2. Фараон
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Прогрессор поневоле

Наследие Маозари 6

Панежин Евгений
6. Наследие Маозари
Фантастика:
попаданцы
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Наследие Маозари 6

Я еще не барон

Дрейк Сириус
1. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я еще не барон

Лолита

Набоков Владимир Владимирович
Проза:
классическая проза
современная проза
8.05
рейтинг книги
Лолита