CSS (от английского Cascading Style Sheets) — это каскадные таблицы стилей, задающие визуальное оформление документа.
Они представляют собой набор правил, которые описывают, как должен выглядеть элемент. С помощью этого языка разметки задаются:
-
Цвет всех элементов сайта
-
Параметры шрифта (цвет, размер, тип), выравнивание, высота строки
-
Анимация
-
Размер полей, отступов
-
Тени, скругления
Также он отвечает за разделение заголовков и основного текста, то есть как будет вести себя элемент при наведении курсора, как изменится кнопка при нажатии.
Язык CSS делает структуру кода проще и понятнее, так как вместо тегов для форматирования позволяет задавать стили для отдельных элементов HTML. Если представить, что сайт — это дом, то стены, пол и потолок — это HTML, а обои, плитка, краска, даже цветы на подоконнике — это CSS.
История языка
Сайты не всегда были такими стильными, какими мы привыкли их видеть сегодня. Раньше разработчикам приходилось идти на хитрости, чтобы создать визуально привлекательный дизайн: использовать прозрачные элементы для отступов, а текст разделять с помощью специальных символов пробела.
Переломный момент случился в 1996 году, когда были опубликованы первые каскадные таблицы стилей.
Начальные версии позволяли вносить небольшие изменения в дизайн документа: изменять цвет выделенного текста, устанавливать толщину рамки элемента.
Но этого было недостаточно для воплощения всех идей веб-дизайнеров. Прорыв произошел после появления в 1998 году долгожданной версии CSS2. Тогда разработчикам стали доступны блочная верстка, страничные носители, указатели. Новая версия CSS3 содержала еще больше возможностей и настроек: добавление градиентов, теней, анимации.
С нынешними возможностями каскадных таблиц можно создавать красочные, информативные ресурсы, одинаково хорошо работающие на разных устройствах с любым разрешением экрана.
Актуальность языка программирования
Запросы пользователей на стильные дизайны с нестандартным расположением текста, эффектной анимацией постоянно растут. Также регулярно обновляется линейка устройств: появляются новые модели и виды (например, часы с доступом к сети). Поэтому устоявшаяся технология CSS никуда не исчезнет, а будет только развиваться.
В обозримом будущем вряд ли появятся технологии, способные заменить верстку. Поэтому HTML, а значит, и CSS, еще долго будут применяться при разработке сайтов и приложений. Изучить эти языки вы можете на специализированных курсах, собранных на нашем сайте.
Особенно знание языка CSS актуально для frontend-разработчиков, которые занимаются созданием видимой части сайтов. Спрос на таких специалистов растет с каждым годом, поэтому освоение языка разметки повысит шансы программиста найти хорошую работу.
Особенности языка CSS
CSS быстро распространился среди программистов. Благодаря своей простоте и функциональности он стал стандартом в веб-разработке. Он позволяет легко скорректировать визуальное оформление страницы без применения сложных языков. Но, как и у многих других языков, у CSS есть свои особенности.
Основные понятия
Легко и быстро осваивать каскадные таблицы позволяет понятный синтаксис. Он содержит правила, которые определяют, как будет выглядеть элемент. Правила, в свою очередь, состоят из:
-
Селектора — ссылка на HTML-элемент, требующий оформления. Селектором может быть любой тег, которому возможно задать параметры форматирования
-
CSS-свойств — изменяемые характеристики элемента (цвет фона или текста)
-
Значений — выраженное словами или цифрами обозначение свойства (красный — red)
Каждое отдельное правило оформляется фигурными скобками {…}, перед которыми указывается его селектор.
Например:
где:
p — селектор, выбирающий все теги с именем p
color — свойство
red — значение свойства
Связку свойства с его значением называют блоком объявления. Внутри каждого блока свойство отделяют от значения двоеточием, а один блок от другого — точкой с запятой.
CSS называют каскадными таблицами, потому что они работают по одноименному принципу. Правило, расположенное ниже, считается приоритетным.
Например:
p {
color: green;
background: #eeeeee;
}
В этом случае цвет фона будет зеленый, а не красный, так как это значение прописано ниже.
Принципы построения макета
При изучении языка разметки работа с отдельными HTML-элементами обычно не вызывает трудностей. Но на этапе верстки макета могут возникнуть проблемы: блоки разъезжаются в разные стороны, накладываются друг на друга, смещаются. Чтобы этого избежать, разработчики прибегают к трем основным методикам:
-
Flex — расположение элементов в колонках или строках. При этом объекты сжимаются или растягиваются, занимая свободное пространство. Это позволяет задать одинаковую высоту блокам, даже если их содержимое отличается по объему
-
Grid — размещение объектов по сетке в виде набора рядов и колонок. Благодаря этому методу можно задавать ширину каждой колонки, высоту ряда, масштабировать параметры ячейки, создавать зазоры между границами сетки
-
Float — обтекание изображений текстом. Позволяет заполнить пустое пространство, но может нарушить нормальный поток
Все методики позволяют элементам подстраиваться под меняющееся разрешение экрана, всегда занимая корректную позицию на странице.
Виды языка CSS
В зависимости от того, как подгружаются таблицы, все они делятся на три группы:
в теге
Добавление стиля с помощью атрибута style. Внутренний стили не рекомендуют использовать слишком часто, так как это перегружает документ кодом и затрудняет его редактирование
Сложнее всего запомнить большое количество свойств каскадных таблиц, которые используются для разных задач. Здесь пригодится знание английского языка, так как любое из правил легко перевести на русский и понять, для чего оно предназначено. Например:
-
Цвет фона — background-color
-
Тень текста — text-shadow
-
Межстрочный интервал — line-height
-
Размер шрифта — font-size
-
Ширина — width
-
Непрозрачность — opacity
Преимущества и недостатки
CSS — интуитивный язык, который легко может освоить даже новичок в программировании. Изучить разметку можно самостоятельно с использованием книг, видеоуроков. Но кроме легкости изучения и простоты использования, у него есть еще много преимуществ и пара несущественных недостатков.
Преимущества:
-
Упрощает и ускоряет верстку, так как один созданный файл стилей может распространяться на несколько таблиц
-
Облегчает структуру документа
-
Расширяет возможности оформления
-
Ускоряет загрузку страниц, так как браузер при первом посещении сайта кэширует таблицу стилей, а при последующих только подгружает данные
-
Дает возможность настроить отображение сайта на разных устройствах
Недостатки:
-
Страницы могут по-разному отображаться с различных браузерах, особенно в старых версиях, где поддерживаются не все функции каскадных таблиц
-
Когда теги HTML связаны с селекторами, придется вносить исправления не только в CSS-файл, но и в теги HTML, что увеличивает время редактирования и тестирования
Выводы
Создание сайтов только с применением HTML перегружает ресурс кодом, а значит, замедляет его работу. Подключение каскадных таблиц стилей упрощает код и ускоряет работу сайта. Также CSS позволяет улучшить оформление страниц, сделав их более привлекательными для посетителей.