Четверг, 21.11.2024, 20:24
Приветствую Вас Гость | RSS
Главная Каталог статей Регистрация Вход
Меню сайта

Форма входа

Главная » Статьи » Мои статьи

курс HTML часть 3 основы CSS

Основы CSS. Особенности CSS 3

Аннотация: Понятие каскадных таблиц стилей. История версий CSS. Отношения между множественными вложенными элементами. Создание CSS стилей. Связь HTML и CSS. Правила написания CSS. Каскадность CSS.

Ключевые слова: ИнтернетпоискcssHTMLтегясностькаскадная таблица стилейязык разметкиинформационные технологии,w3cXHTMLцентрализованное управлениеотображение множествабраузерBOMобъектная модельместообъектная модель документаCSS1элемент текставнутренний отступцвет текстаинтервалыCSS2позиционированиеуправление видимостью,контентсинонимDOMBODYIMGперевод строкипредставлениепереопределение'color'REDселектор дочерних элементов,контекстный селекторклассфайлlinkingheadingатрибутS/MIMEтип файлаhrefпутьдирективаstyleтаблица стилей,отображениевывод

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

1.     каскадные таблицы стилей;

2.     используется для управления внешним видом информации, предоставляемой сайтом.

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

Возникновение CSS

Во второй лекции нашего курса приведена краткая история возникновения HTML. Частично написанное сейчас будет пересекаться с прошлым материалом.

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

С дальнейшим распространением HTML такие компании, как Microsoft и Netscape стали внедрять свои собственные теги или "улучшать" имеющиеся именно с целью управления оформлением html - документов. Часть внесенных изменений прижилась и "ушла" в массы.

После случилось логически неизбежное, а именно, HTML стал представлять собой набор несовместимых между собой тегов и расширений. Результатом исправления ситуации стал стандарт HTML 3.2, "узаконивший" ряд изменений и устранивший проблемы совместимости.

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

Стандарт HTML 3.2 лишь исправил ряд наиболее серьезных недостатков предыдущих версий. Настоящим же решением проблемы явился стандарт HTML 4.0, в рамках которого было предложено отделить описание структуры html документа от его оформления.

Если уж совсем "рыться" в истории, то можно заметить, что и этот подход не нов. SGML, на котором и основывалась первая версия HTML, в числе прочего предполагал наличие отдельного "файла стилей" документа.

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

Суть и преимущества CSS

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

Концепция каскадных таблиц стилей была предложена Хоконом Виум Ли – норвежским ученым и специалистом в областиинформационных технологий, работавшим в то время на консорциум W3C.

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

К преимуществам использования CSS относятся:

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

Стандарт HTML 4.0 помимо CSS утвердил и объектную модель браузера (Browser Object Model – BOM), о которой следует сказать отдельно.

Объектная модель браузера описывает содержимое веб - документа, т.е. сама модель является набором объектов, описывающих указанное содержимое. Поскольку BOM уникальна для каждого браузера, возникали проблемы с межплатформенными приложениями. В конечном итоге, на место объектной модели браузера пришла объектная модель документа (Document Object Model – DOM), описывающая стандарт представления веб - страниц в виде набора объектов.

Краткая история CSS

Описание возникновения CSS будет неполным, без краткой истории версий каскадных таблиц стилей.

Таблица 6.1.

Версия

Дата принятия

Предоставляемые возможности

CSS1

17.01.1996

  • Управление способом отображения элемента на странице.
  • Задание настроек обтекания элемента текстом.
  • Управление размерами элемента.
  • Управление внешними и внутренними отступами элемента.
  • Управление вертикальным выравниванием в таблицах.
  • Управление стилями границ элементов.
  • Управление форматированием списков.
  • Управление цветами текста и фона.
  • Управление параметрами шрифтов.
  • Управление свойствами текста.
  • Управление междустрочными интервалами.

CSS2

12.05.1998

Все возможности CSS1 и ряд новых:

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

CSS2.1

8.09.2009

  • Исправлен ряд ошибок CSS2.
  • Изменились некоторые моменты, реализация которых в подавляющем большинстве браузеровотличается от спецификации CSS2.
  • Убрали особенности CSS2, которые, в силу того, что не были реализованы, были отвергнуты CSSсообществом.
  • Удалили фрагменты CSS2, которые будут устаревшими в CSS3.
  • Добавили некоторые новые значения свойств.

CSS3

разрабатывается

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

В настоящее время стандарт CSS3 только разрабатывается. В связи с этим нами перечислен только ряд его новшеств. Подробнее с ними, на данном этапе, предлагается ознакомиться самостоятельно.

Лекция 7: 

Основы CSS. Особенности CSS 3

Отношения между множественными вложенными элементами

В html - документе элементы (теги) могут находиться в рамках других элементов. Отношения между вложенными элементами могут быть родительскимидочерними и братскими (в ряде литературы также встречается название сестринские). Поясним эти и иные термины, относящиеся к структуре html - документа:

Дерево документа – воображаемая древовидная структура элементов в html - документе, синоним понятия объектная модель документа (DOM).

Родительский элемент – элемент, содержащий в себе рассматриваемый элемент. В записи вида <p> <strong> ... </strong> </p>, элемент <p> является родительским по отношению к <strong>.

Предок – элемент на несколько уровней выше и содержащий в себе рассматриваемый элемент. Т.е. в записи вида <body>... <p> <strong> ... </strong> </p>... </body>, <body> является предком <strong>.

Дочерний элемент – элемент, находящийся внутри рассматриваемого документа. В записи вида <p> <strong> ... </strong> </p>, элемент <strong> является дочерним по отношению к <p>.

Потомок – элемент, находящийся внутри рассматриваемого элемента и находящийся на несколько уровней ниже. В записи вида<body>... <p> <strong> ... </strong> </p>... </body>, <strong> является потомком <body>.

Братский элемент – элемент, имеющий общий родительский элемент с рассматриваемым. Т.е. в записи <p> <strong> ... </strong> ... <img ...></p>, элементы <img> и <strong> являются братскими.

Создание каскадных таблиц стилей

Нами было достаточно сказано о причинах возникновения CSS и его возможностях. Рассмотрим формат каскадных таблиц стилей, правила их создания и способах установления связей с html - документом.

В общем виде CSS задается следующим образом:

<селектор> {
 <атрибут стиля №1>: <значение атрибута>;
 <атрибут стиля №2>: <значение атрибута>;
...
 <атрибут стиля №N>: <значение атрибута>;
 }

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

Атрибутом_стиля называется один из параметров элемента веб - страницы (в частных случаях схожи с атрибутами тегов, но следует помнить, что это разные вещи).

CSS стили отделяются друг от друга пробелами, либо символами переноса строк. Не должно быть символов ';' между различными стилями!

В описании селекторов и имен стилей не должно быть пробелов или переводов строк.

Рассмотрим возможные виды селекторов, способы их описания и представление в html - документе.

Таблица 6.2.

Селектор

Оформление вCSS

Оформление элемента, к которому применяется стиль в HTML

Пояснения

Селектор элементов (переопределениетега)

P {colorred}

<p>...</p>

Стиль будет применен ко всем абзацам документа. Т.е. весь текст, находящийся в рамках парного тега <p> будет выделен красным цветом.

Селектор классов (стилевой класс)

.classname {colorred}

<p class="classname">...</p>

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

Селектор идентификаторов (именованный стиль)

#clrRed {colorred }

<p id="clrRed">...</p>

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

Селектор дочерних элементов

#clrRed>strong { colorred}

<p id="clrRed"> <strong>...</strong> </p>

Стиль будет применен ко всем элементам <strong>, находящимся в дочерних отношениях с <p id="clrRed"> и только к ним.

Контекстный селектор(комбинированный стиль)

p strong {color : red}

<p><strong>...</strong></p>

Стиль будет применен к тексту, в рамках тега <strong> следующего за тегом <p>. Фактически стиль привязывается к тегу <strong>.

p.classname {colorred}

<p class="classname">...</p>

Стиль будет применен ко всем тегам <p>, содержащим атрибутclass, значение которого равно classname.

p.classname <strong> {colorred}

<p class = "classname"> <strong>...</strong></p>

Стиль будет применен к содержимому тега <strong>, находящемуся внутри тега <p>. Атрибут class тега <p>, при этом, должен принимать значение classname.

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

p, .classname, td strong { color: red }

В приведенном примере создается три одинаковых стиля: переопределение тега <p>, стилевой класс classname и комбинованный стиль для тега <strong>, находящегося в рамках тега <td>.

Связь CSS и HTML

Как уже упоминалось, CSS файл является внешним, по отношению к html - документу. Существует несколько способов "привязки" определенного файла стилей к конкретному документу.

Посредством тега <link>, находящимся в рамках парного тега <head>:

<head>
...........
<link rel="stylesheet" type="text/css" href="style.css">
</head>

Атрибут rel указывает на тип подключаемого файла, type – указывает MIME тип файлаhref – указывает путь до файла стилей.

Посредством директивы @import, находящейся в рамках парного тега <style>:

<head>
.............
<style type = "text/css">
@import url(style.css)
</style>
</head>

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

Таблица стилей располагается в рамках парного тега <style>:

<head>
.............
<style type = "text/css">
p { color: red}
..............
</style>
</head>

Таблица стилей располагается в теле отдельного тега:

<p style="color: red"> ........ </p>

В этих случаях таблица стилей называется внутренней.

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

  • внутренний стиль распространяется только на один веб - документ;
  • применение внутренних стилей противоречит положению о необходимости отделения структуры документа от его представления.

Правила и каскадность CSS

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

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

2.     Внутренние таблицы стилей приоритетнее внешних.

3.     Таблицы стилей, располагающиеся в рамках самого элемента (<p style="...">), имеют приоритет, по отношению ко всем остальным стилям.

4.     Более конкретные стили имеют приоритет перед менее конкретными (к примеру, p.classname {...} приоритетнее p {..}), т.е. стилевой класс приоритетнее переопределения тега, комбинированный класс приоритетнее стилевого.

5.     В случае привязки к тегу нескольких стилевых классов, приоритетными считаются те, что указаны правее.

6.     Атрибуты стиля, объявленные как !important, имеют приоритет перед всеми другими значениями. Таким образом, стиль p {colorred !important} сделает весь текст в рамках тегов <p> красным вне зависимости от любых других переопределений стиля для <p>.

Ключевые термины и определения

CSS – каскадная таблица стилей, язык описания внешнего вида html - документа.

Объектная модель браузера – уникальная для каждого браузера модель представления содержимого веб - документа.

Объектная модель документа – стандарт, регламентирующий представление содержимого веб - документа.

CSS - селектор – описание элемента или их группы, к которым должны быть применены правила стилей.

Внешняя таблица стилей – таблица стилей, располагающаяся во внешнем по отношению к html - документу.

Внутренняя таблица стилей – таблица стилей, являющаяся частью html - документа.

Краткие итоги

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

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

Список материалов для самостоятельного изучения

1.     http://citforum.ru/internet/webd/article_31.shtml

2.     http://design.originweb.info/css/rules.html

3.     http://www.ruled.ru/css.html

4.     http://severus.name/css3-novye-vozmozhnosti/

5.     http://vremenno.net/html-css/css3-review/

6.     http://www.web-palette.ru/sub/useful/8i/8j

7.     http://www.ruled.ru/sintacs-css.html

8.     http://www.03www.su/ex-0010.html

9.     http://allxml.h1.ru/articles/dom.html

10.   http://www.structuralist.narod.ru/it/internet/dom.htm

 

Категория: Мои статьи | Добавил: IKRA (02.03.2015)
Просмотров: 1552 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Наши новости
Мои статьи [37]

Поиск

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Copyright MyCorp © 2024 Сделать бесплатный сайт с uCoz