Каскадные таблицы стилей назначение css. Наследование и каскад

Электроника 23.06.2019
Электроника

Каскадные (многоуровневые) таблицы стилей - cascading style sheets (CSS) - это мощный стандарт на основе текстового формата, определяющий представление данных в браузере. Если формат HTML предоставляет информацию о составе документа, то таблицы стилей сообщают, как он должен выглядеть. Таким образом, каскадные таблицы стилей дают возможность хранить содержимое отдельно от его представления. Стиль включает все типы элементов дизайна: шрифт, фон, текст, цвета ссылок, поля и расположение объектов на странице. CSS разрабатывались так, чтобы обеспечить больший уровень контроля над размещением текста и графики. Каскадные таблицы стилей обеспечивают должный уровень единства оформления, организации и контроля во время разработки узла, который является недостижимым с помощью одного только HTML.

CSS предполагает 3 типа таблиц стилей - встроенные, внедренные (внутренние) и связанные (внешние).

Впервые идея форматирования HTML-документов с помощью CSS была рекомендована Консорциумом W3C в 1996 году. Эта рекомендация, которая была обновлена в 1998 году, используется Web-разработчиками, и по сей день.

Что значит слово "каскадный"? Термин "каскадный" означает, что в одной странице HTML могут использоваться разные стили. Браузер, поддерживающий таблицы стилей, будет следовать их порядку (как по каскаду), интерпретируя информацию стилей. Это означает, что вы можете использовать все три типа стилей, и браузер будет интерпретировать сначала связанные, затем внедренные и, наконец, встроенные стили. Даже если ко всему узлу будут применены образцы стилей, можно будет управлять отдельными аспектами страниц с помощью внедренных стилей, а отдельными областями внутри этих страниц - с помощью встроенных стилей. Другой аспект каскадирования - наследование (inheritance ). Наследование означает, что если не указано иное, то конкретный стиль будет унаследован другими элементами страницы HTML. Например, если вы примените определенный цвет текста в теге <р> , то все теги внутри этого абзаца наследуют этот цвет, если не оговорено иное.

Существует ряд методов, с помощью которых таблицы стилей могут применяться к документу HTML. Синтаксис соответствует реальной структуре информации, содержащейся внутри таблицы стиля.

Существует три метода для применения таблицы стилей к документу HTML:

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

    Внедренный (Embedded) Внедрение позволяет контролировать всю страницу HTML. При использовании тега . Внутренние стили имеют приоритет над внешними, но уступают встроенным стилям (заданным через атрибут style).

    ...

    1.3. Встроенные стили

    Когда мы пишем встроенные стили , мы пишем CSS-код в HTML-файл, непосредственно внутри тега элемента с помощью атрибута style:

    Обратите внимание на этот текст.

    Такие стили действуют только на тот элемент, для которого они заданы.

    1.4. Правило @import

    Правило @import позволяет загружать внешние таблицы стилей. Чтобы директива @import работала, она должна располагаться в таблице стилей (внешней или внутренней) перед всеми остальными правилами:

    Правило @import также используется для подключения веб-шрифтов:

    @import url(https://fonts.googleapis.com/css?family=Open+Sans&subset=latin,cyrillic);

    2. Виды селекторов

    Селекторы представляют структуру веб-страницы. С их помощью создаются правила для форматирования элементов веб-страницы. Селекторами могут быть элементы, их классы и идентификаторы, а также псевдоклассы и псевдоэлементы.

    2.1. Универсальный селектор

    Соответствует любому HTML-элементу. Например, * {margin: 0;} обнулит внешние отступы для всех элементов сайта. Также селектор может использоваться в комбинации с псевдоклассом или псевдоэлементом: *:after {CSS-стили} , *:checked {CSS-стили} .

    2.2. Селектор элемента

    Селекторы элементов позволяют форматировать все элементы данного типа на всех страницах сайта. Например, h1 {font-family: Lobster, cursive;} задаст общий стиль форматирования всех заголовков h1 .

    2.3. Селектор класса

    Селекторы класса позволяют задавать стили для одного и более элементов с одинаковым именем класса, размещенных в разных местах страницы или на разных страницах сайта. Например, для создания заголовка с классом headline необходимо добавить атрибут class со значением headline в открывающий тег

    и задать стиль для указанного класса. Стили, созданные с помощью класса, можно применять к другим элементам, не обязательно данного типа.

    Инструкция пользования персональным компьютером

    .headline { text-transform: uppercase; color: lightblue; }

    2.4. Селектор идентификатора

    Селектор идентификатора позволяет форматировать один конкретный элемент. Идентификатор id должен быть уникальным и на одной странице может встречаться только один раз.

    #sidebar { width: 300px; float: left; }

    2.5. Селектор потомка

    Селекторы потомков применяют стили к элементам, расположенным внутри элемента-контейнера. Например, ul li {text-transform: uppercase;} — выберет все элементы li , являющиеся потомками всех элементов ul .

    Если нужно отформатировать потомки определенного элемента, этому элементу нужно задать стилевой класс:

    p.first a {color: green;} — данный стиль применится ко всем ссылкам, потомкам абзаца с классом first ;

    p .first a {color: green;} — если добавить пробел, то будут стилизованы ссылки, расположенные внутри любого тега класса.first , который является потомком элемента

    First a {color: green;} — данный стиль применится к любой ссылке, расположенной внутри другого элемента, обозначенного классом.first .

    2.6. Дочерний селектор

    Дочерний элемент является прямым потомком содержащего его элемента. У одного элемента может быть несколько дочерних элементов, а родительский элемент у каждого элемента может быть только один. Дочерний селектор позволяет применить стили только если дочерний элемент идёт сразу за родительским элементом и между ними нет других элементов, то есть дочерний элемент больше ни во что не вложен.
    Например, p > strong — выберет все элементы strong , являющиеся дочерними по отношению к элементу p .

    2.7. Сестринский селектор

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

    h1 + p — выберет все первые абзацы, идущие непосредственно за любым тегом

    , не затрагивая остальные абзацы;

    h1 ~ p — выберет все абзацы, являющиеся сестринскими по отношению к любому заголовку h1 и идущие сразу после него.

    2.8. Селектор атрибута

    Селекторы атрибутов выбирают элементы на основе имени атрибута или значения атрибута:

    [атрибут] — все элементы, содержащие указанный атрибут, — все элементы, для которых задан атрибут alt ;

    селектор[атрибут] — элементы данного типа, содержащие указанный атрибут, img — только картинки, для которых задан атрибут alt ;

    селектор[атрибут="значение"] — элементы данного типа, содержащие указанный атрибут с конкретным значением, img — все картинки, название которых содержит слово flower ;

    селектор[атрибут~="значение"] — элементы частично содержащие данное значение, например, если для элемента задано несколько классов через пробел, p — абзацы, имя класса которых содержит feature ;

    селектор[атрибут|="значение"] — элементы, список значений атрибута которых начинается с указанного слова, p — абзацы, имя класса которых feature или начинается на feature ;

    селектор[атрибут^="значение"] — элементы, значение атрибута которых начинается с указанного значения, a — все ссылки, начинающиеся на http:// ;

    селектор[атрибут$="значение"] — элементы, значение атрибута которых заканчивается указанным значением, img — все картинки в формате png ;

    селектор[атрибут*="значение"] — элементы, значение атрибута которых содержит в любом месте указанное слово, a — все ссылки, название которых содержит book .

    2.9. Селектор псевдокласса

    Псевдоклассы — это классы, фактически не прикрепленные к HTML-тегам. Они позволяют применить CSS-правила к элементам при совершении события или подчиняющимся определенному правилу. Псевдоклассы характеризуют элементы со следующими свойствами:

    :hover — любой элемент, по которому проводят курсором мыши;

    :focus — интерактивный элемент, к которому перешли с помощью клавиатуры или активировали посредством мыши;

    :active — элемент, который был активизирован пользователем;

    :valid — поля формы, содержимое которых прошло проверку в браузере на соответствие указанному типу данных;

    :invalid — поля формы, содержимое которых не соответствует указанному типу данных;

    :enabled — все активные поля форм;

    :disabled — заблокированные поля форм, т.е., находящиеся в неактивном состоянии;

    :in-range — поля формы, значения которых находятся в заданном диапазоне;

    :out-of-range — поля формы, значения которых не входят в установленный диапазон;

    :lang() — элементы с текстом на указанном языке;

    :not(селектор) — элементы, которые не содержат указанный селектор — класс, идентификатор, название или тип поля формы — :not() ;

    :target — элемент с символом # , на который ссылаются в документе;

    :checked — выделенные (выбранные пользователем) элементы формы.

    2.10. Селектор структурных псевдоклассов

    Структурные псевдоклассы отбирают дочерние элементы в соответствии с параметром, указанным в круглых скобках:

    :nth-child(odd) — нечётные дочерние элементы;

    :nth-child(even) — чётные дочерние элементы;

    :nth-child(3n) — каждый третий элемент среди дочерних;

    :nth-child(3n+2) — выбирает каждый третий элемент, начиная со второго дочернего элемента (+2) ;

    :nth-child(n+2) — выбирает все элементы, начиная со второго;

    :nth-child(3) — выбирает третий дочерний элемент;

    :nth-last-child() — в списке дочерних элементов выбирает элемент с указанным местоположением, аналогично с:nth-child() , но начиная с последнего, в обратную сторону;

    :first-child — позволяет оформить только самый первый дочерний элемент тега;

    :last-child — позволяет форматировать последний дочерний элемент тега;

    :only-child — выбирает элемент, являющийся единственным дочерним элементом;

    :empty — выбирает элементы, у которых нет дочерних элементов;

    :root — выбирает элемент, являющийся корневым в документе — элемент html .

    2.11. Селектор структурных псевдоклассов типа

    Указывают на конкретный тип дочернего тега:

    :nth-of-type() — выбирает элементы по аналогии с:nth-child() , при этом берёт во внимание только тип элемента;

    :first-of-type — выбирает первый дочерний элемент данного типа;

    :last-of-type — выбирает последний элемент данного типа;

    :nth-last-of-type() — выбирает элемент заданного типа в списке элементов в соответствии с указанным местоположением, начиная с конца;

    :only-of-type — выбирает единственный элемент указанного типа среди дочерних элементов родительского элемента.

    2.12. Селектор псевдоэлемента

    Псевдоэлементы используются для добавления содержимого, которое генерируется с помощью свойства content:

    :first-letter — выбирает первую букву каждого абзаца, применяется только к блочным элементам;

    :first-line — выбирает первую строку текста элемента, применяется только к блочным элементам;

    :before — вставляет генерируемое содержимое перед элементом;

    :after — добавляет генерируемое содержимое после элемента.

    3. Комбинация селекторов

    Для более точного отбора элементов для форматирования можно использовать комбинации селекторов:

    img:nth-of-type(even) — выберет все четные картинки, альтернативный текст которых содержит слово css .

    4. Группировка селекторов

    Один и тот же стиль можно одновременно применить к нескольким элементам. Для этого необходимо в левой части объявления перечислить через запятую нужные селекторы:

    H1, h2, p, span { color: tomato; background: white; }

    5. Наследование и каскад

    Наследование и каскад — два фундаментальных понятия в CSS, которые тесно связаны между собой. Наследование заключается в том, что элементы наследуют свойства от своего родителя (элемента, их содержащего). Каскад проявляется в том, как разные виды таблиц стилей применяются к документу, и как конфликтующие правила переопределяют друг друга.

    5.1. Наследование

    Наследование является механизмом, с помощью которого определенные свойства передаются от предка к его потомкам. Спецификацией CSS предусмотрено наследование свойств, относящихся к текстовому содержимому страницы, таких как color , font , letter-spacing , line-height , list-style , text-align , text-indent , text-transform , visibility , white-space и word-spacing . Во многих случаях это удобно, так как не нужно задавать размер шрифта и семейство шрифтов для каждого элемента веб-страницы.

    Свойства, относящиеся к форматированию блоков, не наследуются. Это background , border , display , float и clear , height и width , margin , min-max-height и -width , outline , overflow , padding , position , text-decoration , vertical-align и z-index .

    Принудительное наследование

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

    Как задаются и работают CSS-стили

    1) Стили могут наследоваться от родительского элемента (наследуемые свойства или с помощью значения inherit);

    2) Стили, расположенные в таблице стилей ниже, отменяют стили, расположенные в таблице выше;

    3) К одному элементу могут применяться стили из разных источников. Проверить, какие стили применяются, можно в режиме разработчика браузера. Для этого над элементом нужно щёлкнуть правой кнопкой мыши и выбрать пункт «Посмотреть код» (или что-то аналогичное). В правом столбце будут перечислены все свойства, которые заданы для этого элемента или наследуются от родительского элемента, а также файлы стилей, в которых они указаны, и порядковый номер строки кода.


    Рис. 2. Режим разработчика в браузере Google Chrome

    4) При определении стиля можно использовать любую комбинацию селекторов — селектор элемента, псевдокласса элемента, класса или идентификатора элемента.

    div {border: 1px solid #eee;} #wrap {width: 500px;} .box {float: left;} .clear {clear: both;}

    5.2. Каскад

    Каскадирование — это механизм, который управляет конечным результатом в ситуации, когда к одному элементу применяются разные CSS-правила. Существует три критерия, которые определяют порядок применения свойств — правило!important , специфичность и порядок, в котором подключены таблицы стилей.

    Правило!important

    Вес правила можно задать с помощью ключевого слова!important , которое добавляется сразу после значения свойства, например, span {font-weight: bold!important;} . Правило необходимо размещать в конец объявления перед закрывающей скобкой, без пробела. Такое объявление будет иметь приоритет над всеми остальными правилами. Это правило позволяет отменить значение свойства и установить новое для элемента из группы элементов в случае, когда нет прямого доступа к файлу со стилями.

    Специфичность

    Для каждого правила браузер вычисляет специфичность селектора , и если у элемента имеются конфликтующие объявления свойств, во внимание принимается правило, имеющее наибольшую специфичность. Значение специфичности состоит из четырех частей: 0, 0, 0, 0 . Специфичность селектора определяется следующим образом:

    для id добавляется 0, 1, 0, 0 ;
    для class добавляется 0, 0, 1, 0 ;
    для каждого элемента и псевдоэлемента добавляется 0, 0, 0, 1 ;
    для встроенного стиля, добавленного непосредственно к элементу — 1, 0, 0, 0 ;
    универсальный селектор не имеет специфичности.

    H1 {color: lightblue;} /*специфичность 0, 0, 0, 1*/ em {color: silver;} /*специфичность 0, 0, 0, 1*/ h1 em {color: gold;} /*специфичность: 0, 0, 0, 1 + 0, 0, 0, 1 = 0, 0, 0, 2*/ div#main p.about {color: blue;} /*специфичность: 0, 0, 0, 1 + 0, 1, 0, 0 + 0, 0, 0, 1 + 0, 0, 1, 0 = 0, 1, 1, 2*/ .sidebar {color: grey;} /*специфичность 0, 0, 1, 0*/ #sidebar {color: orange;} /*специфичность 0, 1, 0, 0*/ li#sidebar {color: aqua;} /*специфичность: 0, 0, 0, 1 + 0, 1, 0, 0 = 0, 1, 0, 1*/

    В результате к элементу применятся те правила, специфичность которых больше. Например, если на элемент действуют две специфичности со значениями 0, 0, 0, 2 и 0, 1, 0, 1 , то выиграет второе правило.

    Порядок подключённых таблиц

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

    1. Что такое каскадные таблицы стилей css?

    Здравствуйте дорогие мои читатели. Я решил открыть новую часть сайта, посвященную работе с каскадными таблицами стилей css.

    Итак, что же такое каскадные таблицы стилей css?

    css (англ. Cascading Style Sheets каскадные таблицы стилей ) - язык описания внешнего вида документа, написанного с использованием языка разметки.
    Что бы было проще понять новичку - каскадные таблицы стилей css предназначены для создания красивого, легкого в редактировании дизайна html страничек сайтов.

    Впервые каскадные таблицы стилей стали использовать в 90-х годах прошлого столетия. Но поначалу они не были столь популярны как сейчас, потому, что разные браузеры по разному воспринимали и выводили html странички, в которых использовались css.

    Спустя некоторое время, для упрощения работы сайтостроителям, браузеры стали "подгонять" под одни стандарты. На сегодняшний день практически все программы, используемые для просмотра интернет страничек, одинаково воспроизводят сайты, на которых используются каскадные таблицы стилей css.

    Мои наблюдения!!! По моим личным наблюдениям, такие последние версии браузеров, как Opera, Mazilla ForeFox, Maxthon, Google Chrome и Internet Explorer практически одинаково покапоказывают странички, в которых используются каскадные таблицы стилей, но если браузеры не последних поколений, то и сами странички сайтов будут выглядеть по другому. И для того, что бы Ваш сайт выглядел одинаково практически во всех браузерах, есть специальные технологии задания каскадных таблиц стилей.

    Итак, давайте приступим к созданию новой таблицы стилей и подключим ее к нашему документу.

    2. Как создать каскадную таблицу стилей css?

    В этой части статьи мы создадим и подключим каскадную таблицу стилей к самой простой html страничке.

    Итак, делаем так:

    1. Создаем папку, в которой будут наша html страничка, и каскадная таблица стилей.
    Пусть, моя папка будет называться "css"

    2. Создаем простую html страничку (index.html). Как это делается можете прочитать .

    3. Теперь создаем простой текстовый документ (аналогично созданию html странички), только называем его style.css.

    В результате у Вас должно получиться вот что:

    Все, файл который будет содержать в себе стили css готов.

    Теперь давайт подключим созданную стаблицу стилей к файлу index.html.

    3. Как подключить каскадную таблицу стилей css?

    Итак, для того что бы подключить таблицу стилей к html страничке, необходимо в файле index.html в теге прописать тег:

    Здесь, в атрибуте href="style.css" прописан путь к самому файлу со стилями css. В этом случае файл css и index.html находится в одной папке.

    Например, если наш файл index.html будет иметь такой код:

    Важно!!! Кстати, не забудьте при сохранении в блокноте файла index.html поставить кодировку 1251 (ANSI-кириллица). Так как если это не сделать и файл сохранить в другой кодировке, то браузер вместо текстов покажет Вам "каракули".

    Если же все будет сделано и сохранено правильно, то в браузере Вы увидете следующее:

    Вот и все, файл index.html создан, а так же к нему подключены таблицы стилей css.

    Теперь давайте проверим работу таблиц стилей css.

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

    Для того, что бы установить фоновое изображение, его нужно разметить в папке с нашими файлами.

    А если Вы планируете научиться создавать профессиональные интернет магазины на движке Magento, то это легче всего сделать с помощью моего авторского видео курса .

    Здравствуйте уважаемые читатели блога сайт. После блока статей посвященных HTML я решил познакомить вас с CSS, так как средств разметки недостаточно для оформления документов. И вообще, изучение HTML это лишь первый этап в процессе обучения созданию сайтов, следующим шагов является изучение CSS. Так давайте же узнаем что такое CSS и зачем они нужны .

    Если посмотреть страницы с чистым HTML, то они выглядят невзрачно. Однообразный текст, таблицы без рамок, тоскливая черно-белая расцветка... Конечно, сделать страницы сайта ярче можно и средствами html, но такой подход только загромождает исходный код и не предоставляет никакой гибкости. Поэтому в современной верстке за внешнее оформление страниц сайта отвечает язык стилевой разметки CSS или просто таблица стилей.

    Каскадные таблицы стилей (так расшифровывается аббревиатура CSS — Cascading Style Sheets) представляют собой набор параметров(стилей), описывающих оформление самой web-страницы и отдельных ее элементов. Эти параметры определяют фон страницы, цвет текста, выравнивание абзацев, параметры рамки таблицы и многое другое.

    Таким образом с помощью языка HTML вы формируете структуру web-страниц, например задаете . А с помощью правил CSS вы задаете то, как эти элементы html-документа будут отображаться в браузере. То есть задаете тип и цвет шрифта, выравнивание текста, цвет фона элементов, различные отступы и др. Причем одно правило CSS может влиять на визуальное представление сразу нескольких элементов веб-страницы.

    Поэтому минимальные знания возможностей каскадных таблиц стилей скорей всего потребуются вам как при создании сайта с нуля, так и при внесении изменений в уже существующий проект. В первую очередь эти знания понадобятся при работе над дизайном сайта.

    Добавление стилей или как подключить CSS к HTML документу

    Прежде чем говорить о синтаксисе или о свойствах каскадных таблиц стилей, необходимо научиться подключать их к html документу. Всего существует три способа подключения css к html.

    1. Первый способ заключается в размещении стилей в отдельном файле или нескольких файлах с расширением.css. В этом случае для подключения CSS стилей используется link , в котором прописан путь до внешнего файла стилей. Помещается этот метатег в раздел заголовков соответствующей веб страницы между тегами head. Вот формат его написания:

    Путь до файла стилей записывается в качестве значения атрибута href. Атрибут rel указывает браузеру чем является файл на который ссылается тег link. Значение «stylesheet» говорит о том, что этот файл внешняя таблица стилей. В атрибут type указывается тип MIME файла. Для внешней таблицы стилей тип MIME «text/css».

    Так примерно будет выглядеть строчка подключения стилей CSS в html коде:




    ...
    .css"/>
    ...

    Преимущество этого способа состоит в том, что внешнюю таблицу стилей можно привязать сразу к нескольким веб страницам.

    2. Второй способ заключается в написании так называемых глобальных стилей , которые прописываются прямо в html коде веб-страницы. Их заключают в парный тег style и обычно помещают в секцию заголовка между тегами head:


    ...

    ...

    Недостаток этого способа в том, что правила CSS глобальных стилей применяются только к той веб-странице, в которой они прописаны.

    3. Третий способ это так называемые встроенные или внутренние стили. Для этого просто в требуемый html тег нужно поместить атрибут Style , который включает в себя в качестве параметров набор CSS свойств:

    Абзац с серым фоном и красным текстом

    Причем свойства заданные в атрибуте style применяются только к одному элементу html. Обычно этот способ подключения стилей применяют на этапе отладки дизайна сайта, а затем переносят полученные CSS свойства в файл с внешними стилями.

    Создание стилей CSS. Синтаксис каскадных таблиц стилей — правила, свойства, селекторы.

    Селектор {
    Свойство: Значение;
    Свойство: Значение;
    ...
    Свойство: Значение
    }

    Т.е. правило стиля включает в себя селектор стиля и список свойств стиля с их значениями в фигурных скобках(«{» и «}»):

    • селектор используется для привязки к элементам web-страницы, на которые он должен распространять свое действие;
    • пары «Свойство: Значение» разделяются символом точкой с запитой(«;») и их может быть сколь угодно много;
    • между последней парой «Свойство: Значение» и закрывающей фигурной скобкой символ точка с запитой можно не ставить;
    • свойство стиля представляет из себя один из параметров элемента html страницы: цвет текста, гарнитура шрифта, величина отступов;
    • пробелы и переводы строк при написании правил css не критичны, браузер их игнорирует, поэтому можно оформлять код так как вам захочется;
    • так же код не чувствителен к регистру символов.

    Чтобы было понятней рассмотрим несколько примеров.

    Разберем данное CSS правило:

    • body — это селектор, который представляет из себя имя тега ;
    • background — свойство стиля, с помощью которого задаются параметры фона;
    • #0000FF — значение свойства стиля background, которой представляет из себя код цвета в формате RGB.

    В итоге данный стиль применится к элементу body web страницы и окрасит фон страницы в заданный цвет. Рассмотренный стиль называется стилем переопределения тега , потому что в качестве селектора указано имя тега без символов < и >.

    Рассмотрим еще пример:

    h1 {
    font-size: 24px;
    color: green;
    }

    Этот стиль говорит о том, что браузер выведет любой текст помещенный в теги

    зеленым цветом и задаст ему размер шрифта 24 пикселя.

    В качестве селектора тега, кроме имени тега, можно указывать класс :

    Yellowtext {color:yellow}

    Имя класса должно состоять из букв латинского алфавита, цифр и дефисов и начинаться должно с буквы. А в определении CSS правила перед именем класса должна стоять точка, означающая что определяется стилевой класс. Данный стиль будет применен ко всем тегам, у которых будет задан атрибут class и его значение будет равно имени стилевого класса без точки :

    В этом абзаце оранжевый текст

    В примере мы привязали к тегу

    Css правило с помощью имени класса yellowtext. В результате текст в данном абзаце будет отображен оранжевым цветом.

    В качестве значения атрибута clsss можно задавать несколько имен стилевых классов, разделив их пробелами. В этом случае действие стилевых классов сложится:

    Cursivtext {font-style: italic}

    желтый текст курсивом

    В этом примере к тегу

    Мы привязали сразу два класса: yellowtext и cursivtext. В результате содержимое тега отобразится желтым цветом и курсивным шрифтом.

    Кроме классов в качестве селектора правила css можно использовать идентификатор , который определяет уникальное имя элемента. Здесь все также как и в случае со стилевыми классами, только есть несколько отличий:

    • в селекторе правила CSS, также задается имя идентификатора, только вместо точки перед его именем ставят символ решетки «#»;
    • привязка к html элементу осуществляется через атрибут id , в качестве значения которого устанавливают имя стиля без знака решетки;
    • значение атрибута id должно быть уникальным в пределах страницы, то есть в html коде может только один элемент с заданным значение атрибута id, иначе код будет не валидным.

    Рассмотрим пример для ясности:

    #textcenter{text-align: center;}

    Текст по центру

    К элементу p (абзац) с помощью атрибута id привязывается правило css, которое выравнивает текст по центру страницы. На странице больше не допускается создавать элементы с таким значением атрибута id, иначе html код будет не валидным.

    Кроме рассмотренных способов описания стилей, css позволяет создавать комбинированные стили и задавать сразу несколько одинаковых стилей. Посмотрим пример:

    h1.redtext, p strong {color: red}

    В примере через запятую указано два селектора: «h1.redtext» и «p strong». Первый селектор говорит о том, что во всех элементах h1 у которых значение атрибута class буде эквивалентно redtext, текст будет отображаться красным цветом. Во втором селекторе произойдет тоже самое для всех элементов strong, которые вложены в тег p:

    Этот заголовок отображается красным цветом


    обычный текст, красный текст

    Для чего нужны таблицы стилей?

    Вы создавали предыдущие страницы, так как их создавали раньше до появления каскадных таблиц стилей или CSS (Cascading Style Sheets).

    Основные проблемы, с которыми сталкивались разработчики сайтов до появления CSS:

      Проблема позиционирования (разметка страниц). Хотя для этого стали использовать таблицы (они небыли для этого предназначены изначально), они не решили всех проблем. Не возможно осуществить следующее:
      - Нельзя задать фиксированные размеры какого-нибудь блока. Например, текстовый блок будет разъезжаться при переполнении (даже если он в таблице).
      - Нельзя задать фиксированные координаты положения блока на странице.
      - Нельзя наложить один блок на другой. Например, попробуйте надвинуть картинку поверх таблицы или другой картинки.

      Вторая проблема заключалась в том, что приходилось каждый раз задавать на страницах размер и цвет шрифта, свойства ячеек таблицы и т.д. Это сильно увеличивало размеры страницы, а значит, она медленнее загружается. В случае если вам захотелось изменить цвет или размер шрифта, вам пришлось бы редактировать все страницы.

      Третья проблема заключалась в том, что все браузеры имеют индивидуальные настройки. Например, в браузере можно увеличить шрифт, что приведет к искажению всей страницы.

    С помощью CSS эти проблемы можно решить.

    Способы применения CSS

    Существует три способа применения таблиц стилей:

      Внутренние таблицы стилей (Inline Style Sheets) - при помощи специального атрибута помещаются прямо в HTML теги.
      Пример HTML:

      Пример CSS:

      Как можно заметить, код Inline Style Sheet получился больше чем HTML. Поэтому ISS следует использовать, только если необходимо задать определенному элементу свой индивидуальный стиль.
      При помощи дополнительного атрибута style мы можем определить нужные нам стилевые параметры в любом теге. Это самый легкий способ, и действует он в пределах лишь одного тега. Но представьте, насколько вырастет размер файла, и насколько неудобно будет его исправлять, если мы будем указывать стиль у каждого тега.

      Глобальные таблицы стилей (Global Style Sheets) - определяют стиль элементов во всем документе.
      Для этого используется тег