- •Введение
- •Глава 1. Основы
- •1.1. Браузеры
- •Преодоление различий браузеров
- •1.2. Программирование
- •1.3. Дизайн при неизвестном разрешении монитора
- •Гибкая раскладка
- •Дизайн с фиксированной шириной
- •1.4. Знакомство с серверами
- •Корневая директория для Web
- •Java-сервлеты и jsp
- •Абсолютная и относительная адресация
- •Соглашения об именах файлов
- •Выбор кодировки
- •Глава 2. Html и xhtml
- •2.1. Роль html
- •2.2. Отделение представления от структуры документа
- •2.3. Атрибуты
- •Вложенные элементы
- •Информация, которую браузеры игнорируют
- •2.4. Введение в xhtml
- •Три разновидности html 4.01 и xhtml 1.0
- •Хорошо сформированный xhtml
- •Атрибуты id и name
- •2.5. Элементарная структура документа
- •2.6. Тело документа
- •2.7. Текстовые элементы
- •Блочные элементы
- •Внутристрочные элементы логического форматирования
- •Перенос строки
- •Горизонтальные линейки
- •Стилевые элементы
- •Практика
- •Как сделать хороший html – документ
- •2.8. Создание гиперссылок
- •Организация ссылок на область документа
- •Практика
- •2.9. Таблицы
- •Описательные элементы
- •Группы строк
- •Столбцы и группы столбцов
- •2.10. Фреймы
- •Преимущества использования фреймов
- •Недостатки
- •Базовая структура набора фреймов
- •Нестандартные атрибуты
- •Нестандартные атрибуты
- •Создание строк и столбцов
- •2.11. Формы
- •Элементы форм
- •Поле для ввода текста
- •Поле для ввода пароля
- •Переключатель
- •Выбор файла
- •Многострочные текстовые поля
- •Создание меню при помощи элементов select
- •Группы вариантов
- •Надписи
- •Атрибуты accesskey и tabindex
- •Практика
- •Глава 3. Стили css
- •3.1. Преимущества css
- •Определение – задают свойства селектора.
- •3.2. Способы добавления таблиц стилей на Web-страницы
- •Href – позволяет задать url-адрес таблицы стилей.
- •Наследование
- •3.3. Конфликтующие правила стилей: каскад
- •3.4. Контекстные селекторы
- •3.5. Использование классов
- •3.6. Группировка
- •3.7. Псевдоселекторы
- •3.8. Другие псевдоклассы css 2.1
- •Псевдоэлементы
- •3.9. Единицы измерения, используемые в каскадных таблицах стилей
- •3.10. Свойства css для управления цветом
- •Практика Задание 1
- •Задание 2
- •Задание 3
- •3.11. Оформление таблиц с помощью css
- •Заголовки таблиц
- •Порядок наложения элементов
- •Границы
- •Расчет размеров таблицы (ширина, высота)
- •Алгоритм с фиксированной шириной
- •Алгоритм с автоматически определяемой шириной
- •3.12. Оформление таблиц
- •Практика
- •3.13. Блочные и внутристрочные элементы
- •3.14. Введение в блоковую модель
- •3.15. Нормальный поток
- •Свободное размещение
- •3.16. Пропуск размещаемых элементов
- •3.17. Позиционирование: основы
- •3.18. Охватывающий блок
- •3.19. Задание положения
- •3.20. Обработка переполнения
- •3.21. Расчет позиции элемента
- •3.22. Фиксированное позиционирование
- •3.23. Относительное позиционирование
- •Практика
- •3.24. Css свойства
- •3.25. Методики css
- •Центрирование страницы
- •Раскладка в 2 столбца
- •Раскладка в 3 столбца
- •Раскладка в 3 столбца c абсолютным позиционированием
- •Позиционирование трех столбцов
- •Центрирование с рамками и полями
- •Ложные столбцы
- •Заключение
- •Список литературы
- •Оглавление
- •Глава 1. Основы 4
- •Глава 2. Html и xhtml 15
- •Глава 3. Стили css 56
Раскладка в 3 столбца c абсолютным позиционированием
Позиционирование боковых столбцов
Структура страницы
#container {position: relative;
width: 700px;
border: solid 1px;
margin-left:auto;
margin-right:auto }
#masthead {height:70px;
background:#CCC; }
#main { margin: 0px 160px; }
#links { position:absolute;
top: 70px;
left: 0px;
width: 150px;
background:#EEE; }
#news {position:absolute;
top: 70px;
right: 0px;
width: 150px;
background:#EEE; }
#footer {margin: 0 160px;
padding:10px;
background:#CCC; }
Позиционирование трех столбцов
В данном примере абсолютное позиционирование применяется ко всем трем столбцам. Получающаяся раскладка отличается от предыдущего примера. Элемент footer и рамка опущены, так как все три элемента между шапкой и низом страницы позиционируются абсолютно и удаляются из потока документа. При этом элемент footer должен подняться наверх страницы и встать сразу за шапкой. Чтобы избежать использования Java-Script, элемент footer и рамка удалены в примере.
Таблица стилей
#container {position: relative;
width: 700px;
margin-left:auto;
margin-right:auto }
#masthead {height:70px;
background:#CCC; }
#main {position:absolute;
top: 70px;
left: 150px;
width: 400px; }
#links {position:absolute;
top: 70px;
left: 0px;
width: 150px;
background:#EEE; }
#news {position:absolute;
top: 70px;
right: 550px;
width: 150px;
background:#EEE; }
Центрирование с рамками и полями
Структура страницы
body { margin: 0px;
padding: 5px;
text-align:center; }
h2 { margin:5px;}
h1 {padding-left:20px;}
#container { position: relative;
width: 700px;
margin:0 auto;
text-align:left; }
#masthead {height:60px;
background:#CCC; }
#main { position:absolute;
top: 60px;
left: 150px;
width: 400px;
border-left: solid 1px black;
border-right: solid 1px black;
margin: 0 10px;
padding:0 10px;
/* обход для IE 5 */
voice-family: "\"}\"";
voice-family:inherit;
width: 358px; }
#links { position:absolute;
top: 60px;
left: 0px;
width: 140px;
background:#EEE;
padding-left:10px; }
#news { position:absolute;
top: 60px;
left: 550px;
width: 150px;
background:#EEE; }
Ложные столбцы
В предыдущих примерах цвет фона заканчивался внизу блока элемента и не распространялся на нижележащие части страницы. К сожалению, не существует способа задать для элемента высоту, равную 100% высоты самого длинного столбца, не используя обходные пути, связанные с JavaScript.
Можно применить фоновое изображение высотой 1px, представляющее собой полосы цвета, мостящие фон по вертикали. Такой метод работает только в раскладке с фиксированной шириной.
