- •Міністерство освіти і науки україни
- •Програмування для internet Посібник до виконання лабораторних робіт
- •Документы html5
- •Структура тела документа
- •Макет страницы
- •Строение тела документа
- •Отображение документа в окне браузера
- •Стили css
- •Блочные элементы
- •Основы применения стилей
- •Стили и стуктура
- •Строчные стили
- •Встроенные стили
- •Внешние файлы
- •Ссылка по любому атрибуту
- •Определение ссылок по псевдоклассам
- •Новые селекторы
- •Контрольные вопросы и задания:
- •Лабораторная работа №3 Традиционная блочная модель
- •Задание: Применить к шаблону документа, созданного в лабораторной работе №1, традиционную блочную модель. Краткие теоретические сведения
- •Универсальный селектор *
- •Новая иерархия заголовков
- •Объявление новых элементов html5
- •Выравнивание тела документа по центру
- •Создание главного блока
- •Заголовок
- •Навигационная полоса
- •Раздел и боковая врезка
- •Нижний колонтитул
- •Принцип работы гибкой блочной модели
- •Свойство display
- •Свойство box-orient
- •Свойство box-direction
- •Свойство box-ordinal-group
- •Сойство box-pack
- •Свойство box-flex
- •Свойство box-align
- •Гибкая блочная модель
- •Свойства css3
- •Свойство border-radius
- •Свойство box-shadow
- •Свойство text-shadow
- •Свойство @font-face
- •Линейный градиент
- •Радиальный градиент
- •Свойство outline
- •Свойство border-image
- •Свойства transform и transition
- •Функция transform: rotate
- •Функция transform: skew
- •Функция transform: translate
- •Одновременное использование всех видов трансформации
- •Динамические трансформации
- •Переходы
- •Лабораторная работа №6
- •Внедрение JavaScript
- •Обработчики событий
- •Воспроизведение видеои аудио с помощью html5
- •Программирование видеопроигрывателя
- •Свойства
- •Выполнение кода
- •Воспроизведение аудио с помощью html5
- •Программирование видеопроигрывателя
- •Контрольные вопросы и задания:
- •Лабораторная работа №8 Новые элементы, типы ввода и атрибуты, расширяющие функциональность форм
- •Задание: использовать новые возможности для создания форм, появившиеся в спецификации html5 и добавить их в разрабатываемый веб-сайт. Краткие теоретические сведения:
- •Атрибут multiple
- •Атрибут autofocus
- •Атрибут pattern
- •Атрибут form
- •Новые элементы форм
- •Контрольные вопросы и задания:
- •Лабораторная работа №9 Установка Apache и php. Конфигурационные файлы
- •Краткие теоретические сведения:
- •Доступ к содержимому массива
- •Использование циклов для доступа к массиву
- •Массивы с различными индексами
- •Операции для работы с массивами
- •Загрузка массивов из файлов
- •Швець н.В. Програмування для internet Посібник до виконання лабораторних робіт
- •65039, Одеса, вул. Канатна, 112
Заголовок
По умолчанию ширина каждого блчного элемента, включая тело документа, составляет 100%. Это означает, что элемент растягивается по горизонтали, занимая все доступное пространство.
#main_header {
background: #FFFBB9;
border: 1px solid #999999;
padding: 20px;
}
Для тела документа это вся видимая область экрана, однако для остальных элементов максимальная доступная ширина определяется размером родительского элемента, в нашем примере элементам внутри главного блока выделяется не более 960 пикселов.
Поскольку элемент <header>будет занимать в главном блоке все доступное по горизонтали пространство и поскольку он и так считается блочным элементом и располагается вверху страницы, нам остается связать с ним визуальные стили.
Навигационная полоса
Структурный элемент<nav> обеспечивает навигацию по нашему сайту. Ссылки, сгруппированные внутри этого элемента, представляют собой меню. Оно должно выглядеть как простая полоса под заголовком. <nav> относится к блочным элементам, следовательно, располагается сразу под предыдущим элементом, его ширина по умолчанию составляет 100%, поэтому он будет на экране таким же широким, как родительский элемент (обертка <div>).
Кроме того (и это уже стиль по умолчанию). его высота будет равна высоте содержимого плюс поля. Добавим серый фон и маленькие внутренние поля, отделяющие пункты меню от рамки.
#main_menu {
background: #CCCCCC;
padding: 5px 15px;
}
#main_menu li {
display: inline-block;
list-style: none;
padding: 5px;
font: bold 14px verdana, sans-serif;
}
Внутри навигационной полосы находится список на основе тегов <ul> и <li>. По умолчанию элементы списка располагаются в столбик. Чтобы поменять это поведение и вывести пункты меню на одной строке бок о бок и применяем правило display: inline-block, превращая их в строчные блоки. В отличие от блочных элементов, элементы, для которых определяется стандартизованный в CSS3 параметр inline-block, не создают разрывов строк. Тем не менее их также можно обрабатывать как блоки и объявлять для них значение ширины. если ширина не задается явно, то этот параметр устанавливает размер элементов равным размеру их содержимого. Кроме того, мы убрали небольшие рисунки, которые по умолчанию выводятся перед каждым пунктом списка.
Раздел и боковая врезка
Следующие структурные элементы в нашем коде – это два блока, находящиеся по соседству. Традиционная блочная модель строится на базе стилей CSS, позволяющих задать местоположение каждого блока. С помощью свойства float блоки можно поместить у правого или левого коая экрана в зависимости от того, какие перед нами стоят задачи.Для создания этих блоков в шаблоне HTML мы использовали теги<section> и <aside>.
#main_section {
float: left;
width: 660px;
margin: 20px;
}
#main_aside {
float: left;
width: 220px;
margin: 20px 0px;
padding: 20px;
background: #CCCCCC;
}
Свойство CSS float - одно из наиболее часто используемых в реализации традиционной блочной модели. Оно заставляет элемент прикрепляться к одному или другому краю доступного пространства. В зависимости от значения свойства float элементы переносятся к самому краю доступной для размещения области – как можно левее или правее. Свойство float перемещает блок к тому краю доступного пространства, на который указывает его значение.
Содержимое элемента <section> будет занимать 600 px по ширине плюс 40px на поля, итого 700px.
Для элемента <aside> будет доступным оставшееся оконное пространство, расположенное справа от <section>. Новый блок будет находиться в той же строке, что и первый, справа от него.Занимая оставшееся на этой строке место, он будет создавать второй столбец в нашем дизайне. Размер второго блока, как обычно, вычисляем по формуле: размер+поля+забивка+рамка, т.е. 220+20х2=260.
