Теперь давайте рассмотри 3 свойства CSS, которые очень важны для блочной модели документа:
- многоцелевое свойство, которое определяет, как элемент должен быть показан в документе (значение по умолчанию - inline).
- элемент показывается как блочный. Применение этого значения для строчных элементов, например
, заставляет его вести подобно блокам — происходит перенос строк в начале и в конце содержимого. inline – элемент отображается как строчный. Использование блочных элементов, таких как и
, автоматически создаёт перенос и показывает их содержимое с новой строки. Значение inline отменяет эту особенность, поэтому содержимое блочных элементов начинается с того места, где окончился предыдущий элемент.
inline-block - это значение генерирует блочный элемент, который обтекается другими элементами веб-страницы подобно строчному элементу. Фактически такой элемент по своему действию похож на встраиваемые элементы (вроде
). При этом его внутренняя часть форматируется как блочный элемент, а сам элемент — как строчный.
inline-flex - элемент ведёт себя как строчный и выкладывает содержимое согласно флекс-модели.
flex – элемент ведёт себя как блочный и выкладывает содержимое согласно флекс-модели.
list-item - элемент выводится как блочный и добавляется маркер списка.
none - временно удаляет элемент из документа. Занимаемое им место не резервируется и веб-страница формируется так, словно элемента и не было.
Изменить значение и сделать вновь видимым элемент можно с помощью скриптов, обращаясь к свойствам через объектную модель. В этом случае происходит переформатирование данных на странице с учётом вновь добавленного элемента.
run-in - устанавливает элемент как блочный или строчный в зависимости от контекста. Второе свойство, которое нам необходимо изучить: position - устанавливает способ позиционирования элемента относительно окна браузера или других объектов на веб-странице (значение по умолчанию - static). Свойства принимает значения: absolute - абсолютное позиционирование. Указывает, что элемент абсолютно позиционирован, при этом другие элементы отображаются на веб- странице словно абсолютно позиционированного элемента и нет. Положение элемента задаётся свойствами left, top, right и bottom, также на положение влияет значение свойства position родительского элемента. Так, если у родителя значение position установлено как static или родителя нет, то отсчёт координат ведётся от края окна браузера. Если у родителя значение position задано как relative, то отсчёт координат ведётся от края родительского элемента. fixed - фиксированное позиционирование. По своему действию это значение близко к absolute, но в отличие от него привязывается к указанной свойствами left, top, right и bottom точке на экране и не меняет своего положения при прокрутке веб-страницы. relative - относительное позиционирование. Положение элемента устанавливается относительно его исходного места. Добавление свойств left, top, right и bottom изменяет позицию элемента и сдвигает его в ту или иную сторону от первоначального расположения. static - статичное позиционирование. Элементы отображаются как обычно. Использование свойств left, top, right и bottom не приводит к каким-либо результатам. sticky - это сочетание относительного и фиксированного позиционирования. Элемент рассматривается как позиционированный относительно, пока он не пересекает определённый порог, после чего рассматривается как фиксированный.
Обычно применяется для фиксации заголовка на одном месте, пока содержимое, к которому относится заголовок, прокручивается на странице. Третье свойство float определяет, по какой стороне будет выравниваться элемент, при этом остальные элементы будут обтекать его с других сторон. Когда значение свойства float равно none, элемент выводится на странице как обычно, при этом допускается, что одна строка обтекающего текста может быть на той же линии, что и сам элемент (значение по умолчанию - none). Принимает всего три значения: left - выравнивает элемент по левому краю, а все остальные элементы, вроде текста, обтекают его по правой стороне. right - выравнивает элемент по правому краю, а все остальные элементы обтекают его по левой стороне. none - обтекание элемента не задаётся. Практическая работа №10.2 Теперь попробуем провести первые манипуляции с ранее созданной версткой.
Проверка знаний Переделайте структуру сайта на div блоки с использованием class и id, также переделайте селекторы в CSS в соответствии с вашей новой структурой.
Тема 11: Позиционирование В прошлой теме мы уже познакомились с одним из свойств позиционирования – position. Теперь изучим ещё несколько необходимых свойств. top - определяет расстояние от верхнего края родительского элемента до верхнего края дочернего элемента. Отсчёт координат зависит от значения свойства position. Если оно равно absolute, в качестве родителя выступает окно браузера и положение элемента определяется от его верхнего края. В случае значения relative, top отсчитывается от верхнего края исходного положения элемента. Если для родительского элемента задано position: relative, то абсолютное позиционирование дочерних элементов определяет их положение от верхнего края родителя. right - определяет расстояние от правого края родительского элемента, не включая отступ, поле и ширину рамки, до правого края дочернего элемента. Отсчёт координат зависит от значения свойства position. Если оно равно absolute, в качестве родителя выступает окно браузера и положение элемента определяется от его правого края. В случае значения relative, right отсчитывается от правого края исходного положения элемента. Если для родительского элемента задано position: relative, то абсолютное позиционирование дочерних элементов определяет их положение от правого края родителя. bottom - устанавливает положение нижнего края содержимого элемента без учёта толщины рамок и отступов. Отсчёт координат зависит от свойства position, оно обычно принимает значение relative (относительное положение) или absolute (абсолютное положение). left - определяет расстояние от левого края родительского элемента, не включая отступ, поле и ширину рамки, до левого края дочернего элемента. Отсчёт координат зависит от значения свойства position. Любые позиционированные элементы на веб-странице могут накладываться друг на друга в определенном порядке, имитируя тем самым третье измерение,
перпендикулярное экрану. Каждый элемент может находиться как ниже, так и выше других объектов веб-страницы, их размещением по z-оси и управляет z- index . Это свойство работает только для элементов, у которых значение position задано как absolute, fixed или relative. Практическая работа №11.1 Попробуем поработать со свойствами, которые мы изучили.
vertical-align - выравнивает элемент по вертикали относительно своего родителя, окружающего текста или ячейки таблицы (значение по умолчанию baseline). Может принимать значения: baseline - выравнивает базовую линию блока по базовой линии родителя. Если у блока нет базовой линии, то за неё принимается нижняя граница. bottom - выравнивает низ блока по нижней части строки. middle - выравнивает вертикальную среднюю точку блока по базовой линии родительского блока плюс половина высоты буквы «x». sub - опускает базовую линию блока вниз для создания нижнего индекса. Не оказывает влияние на размер текста. super - поднимает базовую линию блока вверх для создания верхнего индекса. Не оказывает влияние на размер текста. text-bottom - нижняя граница элемента выравнивается по нижнему краю содержимого родителя. text-top - верхняя граница элемента выравнивается по верхнему краю содержимого родителя. top - выравнивает верх блока по верхней части строки. Свойства внешних и внутренних отступов: margin - устанавливает величину отступа от каждого края элемента. Отступом является пространство от границы текущего элемента до внутренней границы его родительского элемента. padding - устанавливает значение полей вокруг содержимого элемента. Полем называется расстояние от внутреннего края рамки элемента до воображаемого прямоугольника, ограничивающего его содержимое Свойство overflow управляет отображением содержания блочного элемента, если оно целиком не помещается и выходит за область заданных размеров.
Практическая работа №11.2 Теперь попробуем применить эти свойства на примере.
Проверка знаний Теперь давайте изменим наш «Мини сайт» и добавим, уберем или изменим некоторые свойства.
Итоговая практическая работа №3 Вариант 1 Создайте мини сайт по теме: «Бижутерия». Вариант 2 Создайте мини сайт по теме: «Точилки для карандашей». Вариант 3 Создайте мини сайт по теме: «Литые диски». Вариант 4 Создайте мини сайт по теме: «Масонский заговор». Вариант 5 Создайте мини сайт по теме: «Лучшие четвероногие друзья людей». Вариант 6 Создайте мини сайт по теме: «Круасаны всей Франции». Вариант 7 Создайте мини сайт по теме: «Лучшие велосипедисты России». Вариант 8 Создайте мини сайт по теме: «Ёжики и дикобразы». Вариант 9 Создайте мини сайт по теме: «Производство молочной продукции».
Вариант 10 Создайте мини сайт по теме: «Малоизвестные звезды». Вариант 11 Создайте мини сайт по теме: «Вулканы мира». Вариант 12 Создайте мини сайт по теме: «Тропический лес». Вариант 13 Создайте мини сайт по теме: «Отдых на море». Вариант 14 Создайте мини сайт по теме: «Проекторы». Вариант 15 Создайте мини сайт по теме: «Лунные кратеры».
Тема 12: Оформление изображений box-shadow - добавляет тень к элементу. Допускается использовать несколько теней, указывая их параметры через запятую, при наложении теней первая тень в списке будет выше, последняя ниже. Если для элемента задается радиус скругления через свойство border-radius, то тень также получится с закруглёнными уголками. Добавление тени увеличивает ширину элемента, поэтому возможно появление горизонтальной полосы прокрутки в браузере. Свойство filter предназначено для применения художественных эффектов к элементам. Обычно используется для изображений, чтобы размыть их, увеличить контрастность, преобразовать в чёрно-белую картинку и др. Проверка знаний Создайте 4 изображения размером 300х300px, они должны быть расположены по 2-е штуки в ряд и выровнены по центру. Первое изображение должно иметь пунктирную рамку в два пикселя синего цвета и тень со смещением по оси ординат в 3 пикселя с нулевым размытием. Второе изображение и все последующие имеют сплошную рамку в два пикселя. Также у изображения должен быть поворот по цветовому кругу на девяносто градусов. Третье изображение должно иметь тень по оси абсцисс и ординат на 3 пикселя с размытием в два пикселя и растяжением в пять пикселей. Установите черно-белый фильтр. Четвертое изображение должно иметь скругление кроев на 20 пикселей. Тень в 3 пикселя по обеим осям и размытием в 5 пикселей. Установите фильтр сепии на 50%.
Тема 13: Оформление форм Сразу стоит упомянуть, что в этой теме будут рассмотрены псевдоклассы, применяемые к форме, а не свойства, которые в основном являются универсальными и работают для формы, и элементов формы аналогичным образом, как и для других элементов (размер, форма, тень и т.д.) :default - применяет стиль к элементам форм, которые установлены по умолчанию в группе похожих элементов. Например, у нас может быть две кнопки для отправки данных формы на сервер. Одна из этих кнопок задана по умолчанию, мы можем изменить её стиль через :default. :disabled - используется для применения стиля к заблокированным элементам форм. Такие элементы не могут получить фокус, быть нажатыми или активированы, в текстовых полях нельзя набирать текст. :enabled - используется для применения стиля к доступным (не заблокированным) элементам форм. По умолчанию, все элементы форм являются доступными, если в коде HTML к ним не добавляется атрибут disabled. :read-only - Применяется к полям формы, у которых задан атрибут readonly. Такое поле не может быть модифицировано и получить фокус. Практическая работа №13.1 В этом примере будут применены свойства для оформления формы, для того чтобы форма имела более привлекательный вид. Также имеется небольшой скрипт, который вам должен быть легко понятен.
:in-range - применяется к элементам форм, у которых введённое пользователем значение находится в заранее заданном диапазоне. Сам диапазон устанавливается с помощью атрибутов min и max, они, соответственно, задают минимальное и максимальное значение. :out-of-range - применяется к полям форм, у которых введённое пользователем значение выходит из заданного диапазона. Псевдокласс работает только для тех полей, где пользователь может сам ввести значение, даже несмотря на ограничения наложенные атрибутами min и max. :required - применяет стилевые правила к элементу , у которого установлен атрибут required. Он позволяет выделять поля обязательные к заполнению перед отправкой формы. :optional - применяет стилевые правила к элементу , у которого не задан атрибут required. Он позволяет выделять поля обязательные к заполнению перед отправкой формы. Таким образом :optional применяется к необязательным полям формы. :checked - применяется к элементам интерфейса, таким как переключатели (checkbox), флажки (radio) и пункты списка (option), когда они находятся в положение «включено». Переключение элементов в такое состояние происходит с помощью атрибута checked элемента или пользователем. :valid - применяется к полям формы, содержимое которых проходит проверку в браузере на соответствие указанному типу. Например, для type="number" вводится число, а не буквы, для type="email" корректный адрес электронной почты. :invalid - применяется к полям формы, содержимое которых не соответствует указанному типу. Например, для type="number" должно вводиться число, а не буквы, для type="email" корректный адрес электронной почты.
Практическая работа №13.2 Сделаем ещё одну форму, в которой применим новые псевдоклассы.
Проверка знаний Реализуйте форму для вашего мини-сайта, который вы делали в итоговой практической работе №3.
Тема 14: Создание меню ??? Практическая работа №15.1 ??? Практическая работа №15.2 ??? Практическая работа №15.3 ??? Проверка знаний ???
Тема 15: Анимация и плавные переходы ??? Практическая работа №16.1 ??? Практическая работа №16.2 ??? Практическая работа №16.3 ??? Проверка знаний ???
Тема 16: Адаптивная вёрстка ??? Практическая работа №17.1 ??? Практическая работа №17.2 ??? Практическая работа №17.3 ??? Проверка знаний ??? Итоговая практическая работа №4 ???