Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекция_HTML_CSS.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
287.74 Кб
Скачать

3.1. Таблицы стилей css

3.1.1. Общее описание

CSS (Cascading Style Sheets, каскадные таблицы стилей ) – технология описания внешнего вида документа, написанного языком разметки [1]. Преимущественно используется как средство оформления веб-страниц в формате HTML и XHTML, но может применяться с любыми видами документов в формате XML, включая SVG и XUL.

CSS – одна из широкого спектра технологий, одобренных консорциумом W3C и получивших общее название "стандарты Web". В 1990-х годах стала ясна необходимость стандартизировать Web, создать какие-то единые правила, по которым программисты и веб-дизайнеры проектировали бы сайты. Так появились языки HTML 4.01, XHTML и стандарт CSS.

CSS используется создателями веб-страниц для задания цветов, шрифтов, расположения и других аспектов представления документа [2]. До появления CSS оформление веб-страниц осуществлялось непосредственно внутри содержимого документа. Однако с появлением CSS стало возможным принципиальное разделение содержания (написанного на HTML или другом языке разметки) и представления (написанного на CSS) документа. Это разделение может увеличить доступность документа, предоставить большую гибкость и возможность управления его представлением, а также уменьшить сложность и повторяемость в структурном содержимом. Кроме того, CSS позволяет представлять один и тот же документ в различных стилях или методах вывода, таких как экранное представление, печать, чтение голосом (специальным голосовым браузером или программой чтения с экрана) и др.

Наиболее полно поддерживающими стандарт CSS являются браузеры, работающие на Gecko (Mozilla Firefox и др.) и WebKit (Arora, Google Chrome, Safari), а также браузер Opera [3]. Что касается Internet Explorer, то только 8-ая его версия полностью поддерживает CSS 2.1 и частично – CSS 3 [4].

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

  • несколько дизайнов страницы для разных устройств просмотра;

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

  • простота последующего изменения дизайна;

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

Недостатками использования CSS являются:

  • различное отображение верстки в различных браузерах (особенно устаревших), которые по-разному интерпретируют одни и те же данные CSS;

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

Термин " Каскадные таблицы стилей " был предложен Хокон Виум Ли в 1994 году. Совместно с Бертом Босом он стал развивать CSS.

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

В середине 1990-х Консорциум Всемирной паутины (W3C) стал проявлять интерес к CSS, и в декабре 1996 года была издана рекомендация CSS1.

Рекомендация W3C по CSS1, принята 17 декабря 1996 года, откорректирована 11 января 1999 года. Среди возможностей, предоставляемых этой рекомендацией, можно отметить:

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

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

  • Атрибуты текста. Возможность задавать межсимвольный интервал, расстояние между словами и высоту строки (то есть межстрочные отступы)

  • Выравнивание для текста, изображений, таблиц и других элементов.

  • Свойства блоков, такие как высота, ширина, внутренние ( padding ) и внешние ( margin ) отступы и рамки.

Рекомендация W3C по CSS2, принята 12 мая 1998 года. Она построена на CSS1 с сохранением обратной совместимости. В данной CSS2 добавлены следующие возможности:

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

  • Типы носителей. Позволяет устанавливать разные стили для разных носителей (например, монитор, принтер, КПК).

  • Звуковые таблицы стилей. Определяет голос, громкость и т. д. для звуковых носителей (например, для слепых посетителей сайта).

  • Страничные носители. Позволяет, например, установить разные стили для элементов на четных и нечетных страницах при печати.

  • Расширенный механизм селекторов.

  • Указатели.

  • Генерируемое содержание. Позволяет установить текст или картинку, который будет отображаться до или после нужного элемента.

Рабочая версия CSS2.1 W3C от 8 сентября 2009 года. Она построена на CSS2 и содержит исправления ошибок.

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

CSS при отображении страницы может быть взята из различных источников:

  • Авторские стили в виде:

    • внешних таблиц стилей, то есть отдельного файла .css, на который делается ссылка в документе;

    • встроенных стилей – блоков CSS внутри самого HTML-документа;

    • inline -стилей, когда в HTML-документе информация стиля для одного элемента указывается в его атрибутеstyle ;

  • Пользовательские стили:

    • локальный CSS-файл, указанный пользователем в настройках браузера, переопределяющий авторские стили и применяемый ко всем документам;

  • Стиль браузера:

    • стандартный стиль, используемый браузером по умолчанию для представления элементов.

Пример таблицы стилей:

h2 {

font-size: 1.75em;

color: #469;

}

#container {

padding: 0;

}

#column_r_content, #column_l_content {

margin: 10px;

}

p#paragraph1 {

margin: 0;

}

#masthead img {

float: left;

margin: 0;

padding: 0;

}

#navigation a:hover {

color: #000;

text-decoration: none;

border: 1px solid #ed9;

background-color: #ed9;

}

.style_italic {

font-style: italic;

}

Здесь приведено семь правил с селекторами h2, #container, #column_r_content, #column_l_content,p#paragraph1, #masthead img, #navigation a:hover, .style_italic.

В первом правиле HTML-элементу h2 (заголовку второго уровня) назначаются стиль, согласно которому, заголовок второго уровня будет отображаться темно-синим цветом увеличенным кеглем.

Второе правило будет применяться к элементам, идентификатор которых равен container. Аналогично ему, третье правило будет применяться к элементам, идентификатор которых равен либо column_r_content, либоcolumn_l_content. Эти элементы будут иметь внешний отступ, равный 10 пикселям.

Четвертое правило будет применяться только к элементам p, атрибут id которых равен paragraph1. Такие элементы не будут иметь внешних отступов ( margin ).

Пятое правило будет применяться только к элементам img, которые находятся внутри элемента, атрибут id которых равен masthead. Такие элементы не будут иметь внешних и внутренних отступов и будут прижиматься к левой границе экрана (но внутри своего контейнера).

Шестое правило определяет стиль hover для элементов a, находящихся в элементе с атрибутом id равнымnavigation. Это правило, в частности, изменить цвет и задний фон ссылки, когда указатель мыши находится над этими элементами.

Седьмое правило будет применено к элементам, атрибут class которых содержит слово ' style_italic '. Например:

<p class="style_italic">

Этот абзац будет выведен курсивом.

</p>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>

<head>

<!-- Этот раздел предназначен для заголовка страницы и технической информации. -->

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<meta http-equiv="Content-Language" content="ru"/>

<meta name="description" content="Это тестовая страница." />

<meta name="keywords" content="HTML, CSS, DTD, теги" />

<meta name="robots" content="index, follow" />

<title>Тестовая страница</title>

<link type="image/x-icon" href="images/favicon.ico" rel="shortcut icon" />

<link type="text/css" href="reset.css" rel="Stylesheet" />

<link type="text/css" href="main.css" rel="Stylesheet" />

<script type="text/javascript" src="jquery-1.3.2.min.js"></script>

</head>

<body>

<div class="container">

<NOINDEX>

<div class="header">

<div class="navArea">

<table cellpadding="0" cellspacing="0" border="0">

<tr>

<td>

<h1>

<a href="index.html" title="На главную">Главная<span /> </a>

</h1>

</td>

<td>

<a href="http://www.yandex.ru" title="Яндекс">Яндекс</a>

</td>

<td>

<a href="#" title="Услуги">Услуги</a>

</td>

<td>

<a href="#" title="Товары">Товары</a>

</td>

<td>

<a href="#" title="Контактная информация">Контактная информация</a>

</td>

</tr>

</table>

</div>

</div>

</NOINDEX>

<div class="textArea">

<div class="leftMenu">

<ul>

<li>

<span>Общее описание</span>

</li>

<li>

<a href="advantages.html" title="Преимущества">Преимущества</a>

</li>

</ul>

</div>

<div class="mainText">

<h2>Описание тестовой страницы</h2>

<p>HTML (от англ. HyperText Markup Language — «язык разметки гипертекста») — стандартный язык разметки документов во Всемирной паутине. Большинство веб-страниц создаются при помощи языка HTML (или XHTML). Язык HTML интерпретируется браузером и отображается в виде документа, в удобной для человека форме.</p>

<p>HTML является приложением («частным случаем») SGML (стандартного обобщенного языка разметки) и соответствует международному стандарту ISO 8879. XHTML же является приложением XML.</p>

<p><img src="images/ex.jpg" alt="Картинка" /></p>

</div>

</div>

<NOINDEX>

<div class="footer">

<div class="downMenu">

<div style="padding-top:7px; padding-bottom: 5px;">© 2009-2010 Examle</div>

<div>E-mail: <a href="mailto:mailbox@example.com">mailbox@example.com</a></div>

</div>

</div>

</NOINDEX>

</div>

</body>

</html>