CSS/Справочник: различия между версиями

Материал из Викиучебника — открытых книг для открытого мира
< CSS
Содержимое удалено Содержимое добавлено
Строка 322: Строка 322:
<p style="background-clip:content-box; background-color:#006699; padding: 20px;border-width: 3px; border-style:dashed;">Пространство занимаемое фоном.</p>{{Акмар}}
<p style="background-clip:content-box; background-color:#006699; padding: 20px;border-width: 3px; border-style:dashed;">Пространство занимаемое фоном.</p>{{Акмар}}


==== background-color ====
==== Свойство background-color ====
==== background-image ====
==== Свойство background-image ====
==== background-origin ====
==== Свойство background-origin ====
==== background-position ====
==== Свойство background-position ====
==== background-repeat ====
==== Свойство background-repeat ====
==== background-size ====
==== Свойство background-size ====

=== Свойство border ===
=== Свойство bottom ===
=== Свойство box-shadow ===
=== Свойство box-sizing ===
=== Свойство caption-side ===
=== Свойство clear ===
=== Свойство clip ===
=== Свойство color ===
=== Свойство columns ===
=== Свойство cursor ===
=== Свойство direction ===
=== Свойство display ===
=== Свойство empty-cells ===
=== Свойство float ===
=== Свойство font ===
=== Свойство height ===
=== Свойство left ===
=== Свойство letter-spacing ===
=== Свойство line-height ===
=== Свойство list-style ===
=== Свойство margin ===
=== Свойство max-height ===
=== Свойство max-width ===
=== Свойство min-height ===
=== Свойство min-width ===
=== Свойство opacity ===
=== Свойство orphans ===
=== Свойство outline ===
=== Свойство overflow ===
=== Свойство padding ===
=== Свойство page-break-after ===
=== Свойство page-break-before ===
=== Свойство page-break-inside ===
=== Свойство position ===
=== Свойство quotes ===
=== Свойство resize ===
=== Свойство right ===
=== Свойство tab-size ===
=== Свойство table-layout ===
=== Свойство text-align ===
=== Свойство text-decoration ===
=== Свойство text-indent ===
=== Свойство text-overflow ===
=== Свойство text-shadow ===
=== Свойство text-transform ===
=== Свойство top ===
=== Свойство transform ===
=== Свойство unicode-bidi ===
=== Свойство vertical-align ===
=== Свойство visibility ===
=== Свойство white-space ===
=== Свойство widows ===
=== Свойство width ===
=== Свойство word-spacing ===
=== Свойство word-wrap ===
=== Свойство writing-mode ===
=== Свойство z-index ===


=== border ===
=== bottom ===
=== box-shadow ===
=== box-sizing ===
=== caption-side ===
=== clear ===
=== clip ===
=== color ===
=== columns ===
=== cursor ===
=== direction ===
=== display ===
=== empty-cells ===
=== float ===
=== font ===
=== height ===
=== left ===
=== letter-spacing ===
=== line-height ===
=== list-style ===
=== margin ===
=== max-height ===
=== max-width ===
=== min-height ===
=== min-width ===
=== opacity ===
=== orphans ===
=== outline ===
=== overflow ===
=== padding ===
=== page-break-after ===
=== page-break-before ===
=== page-break-inside ===
=== position ===
=== quotes ===
=== resize ===
=== right ===
=== tab-size ===
=== table-layout ===
=== text-align ===
=== text-decoration ===
=== text-indent ===
=== text-overflow ===
=== text-shadow ===
=== text-transform ===
=== top ===
=== transform ===
=== unicode-bidi ===
=== vertical-align ===
=== visibility ===
=== white-space ===
=== widows ===
=== width ===
=== word-spacing ===
=== word-wrap ===
=== writing-mode ===
=== z-index ===
== Вёрстка ==
== Вёрстка ==
== Приложение ==
== Приложение ==

Версия от 18:33, 12 августа 2012

Cправочник по каскадным таблицам стиля.

Введение

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

Цель создания CSS

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

Обзорная история CSS

CSS1

Первая версия CSS1 была принята как рекомендация W3C 17 декабря 1996 года. Она предоставляет пользователю следующие возможности:

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

CSS2

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

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

CSS2.1

8 сентября 2009 года была утверждена CSS2.1. Эта версия формировалась в течение более 10-ти лет. Создание CSS2.1 — это попытка привести спецификацию в соответствие со сложившимися реалиями:

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

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

Преимущества CSS

  1. правление отображением множества документов с помощью одной таблицы стилей;
  2. более точный контроль над внешним видом страниц;
  3. различные представления для разных носителей информации (экран, печать, и т. д.);
  4. сложная и проработанная техника дизайна.

Кроссбраузерность

Программное обеспечение для создания CSS

Способы подключения CSS к документу

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

  • когда таблица стилей находится в отдельном файле, она может быть подключена к веб-документу посредством тега <link>, располагающегося в этом документе между тегами <head> и </head>. (Тег <link> будет иметь атрибут href, имеющий значением адрес этой таблицы стилей). Все правила этой таблицы действуют на протяжении всего документа;
<head>
  <link rel="stylesheet" type="text/css" href="style.css">
</head>
  • когда таблица стилей находится в отдельном файле, она может быть подключена к веб-документу посредством директивы @import, располагающейся в этом документе между тегами <style> и </style> (которые, в свою очередь, располагаются в этом документе между тегами <head> и </head>) сразу после тега <style>, которая также указывает (в своих скобках, после слова url) на адрес этой таблицы стилей. Все правила этой таблицы действуют на протяжении всего документа;
<head>
  <style type="text/css" media="all">
    @import url(style.css);
  </style>
</head>
  • когда таблица стилей описана в самом документе, она может располагаться в нём между тегами <style> и </style> (которые, в свою очередь, располагаются в этом документе между тегами <head> и </head>). Все правила этой таблицы действуют на протяжении всего документа;
<head>
  <style type="text/css">
    body { 
      color: red;
    }
  </style>
</head>
  • когда таблица стилей описана в самом документе, она может располагаться в нём в теле какого-то отдельного тега (посредством его атрибута style) этого документа. Все правила этой таблицы действуют только на содержимое этого тега.
  <p style="font-size: 21px; color: green;">Рассказ о том, как вредно красить батареи</p>

В первых двух случаях говорят, что к документу применены внешние таблицы стилей, а во вторых двух случаях — внутренние таблицы стилей.

Для добавления CSS к XML-документу, последний должен содержать специальную ссылку на таблицу стилей. Например:

  <?xml-stylesheet type="text/css" href="style.css"?>

Структура CSS

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

Селекторы правила CSS могут быть

  • селекторами элементов;
p {font-family: Garamond, serif;}
  • селекторами классов;
.note {color: red; background: yellow; font-weight: bold;}
  • селекторами идентификаторов;
#paragraph1 {margin: 0;}
  • селекторами атрибутов;
 a[href="http://www.somesite.com"]{font-weight:bold;}
  • селекторами потомков (контекстными селекторами);
div#paragraph1 p.note {color: red;}
  • селекторами дочерних элементов;
p.note > b {color: green;}
  • селекторами сестринских элементов;
h1 + p {font-size: 24pt;}
  • селекторами псевдоклассов;
a:active {color:yellow;}
  • селекторами псевдоэлементов.
p::first-letter {font-size: 32px;}
  • Также в CSS существует так называемый универсальный селектор, обозначающий любой элемент, встречающийся в документе. Например, * {color:red;}. Перед любым селектором, задающим класс или идентификатор, можно поставить знак универсального селектора, в результате получится эквивалентное выражение, например, .first {...} и *.first {...} имеют один и тот же смысл.

Свойство селекторов

Свойство background

Характеристики фона элемента веб-страницы

Свойство background-attachment

Примечание:проверить работоспособность.VasjaMirnyj (обсуждение) 17:19, 11 августа 2012 (UTC)

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

Значения:

  • fixed – фоновое изображение остается неподвижным на экране монитора во время скроллинга.
  • scroll – фоновое изображение перемещается по веб-странице вместе с другими элементами.(Значение по умолчанию)
  • inherit – заимствует свойство родителей.
  • local - фоновое изображение прокручивается вместе с содержимым элемента, если для элемента доступна прокрутка.

Синтаксис

CSS2.1 background-attachment: scroll;

CSS3 background-attachment: scroll, scroll;

Версия CSS

CSS1

CSS2

CSS2.1

CSS3

Пример с fixed
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Фон с изображением</title>
  <style type="text/css">
   body {
    background-attachment: fixed; /*Делает фон подвижным*/
    background-repeat: no-repeat; /*Одна копия изображения не дает браузеру замостить фон одним изображением*/
    background-image: url(http://upload.wikimedia.org/wikipedia/commons/0/04/CroppedISS008-E-5604.jpg); /*Путь к изображению*/
    height: 1000px; /*Высота страницы: 1000 пикселей*/
   }
  </style>
 </head>
 <body>
  <h1>Тест</h1>
  <p>Фон с изображением</p>
 </body>
</html>
Пример с scroll
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Фон с изображением</title>
  <style type="text/css">
   body {
    background-attachment: scroll; /*Фиксируем фон*/
    background-repeat: no-repeat; /*Одна копия изображения*/
    background-image: url(http://upload.wikimedia.org/wikipedia/commons/0/04/CroppedISS008-E-5604.jpg); /*Путь к изображению*/
    height: 1000px; /*Высота страницы 1000 пикселей*/
   }
  </style>
 </head>
 <body>
  <h1>Тест</h1>
  <p>Фон с изображением</p>
 </body>
</html>
Пример с inherit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Фон с изображением</title>
  <style type="text/css">
   body {
    background-attachment: scroll; /*Изучаемое свойство*/
    background-repeat: no-repeat; /*Одна копия изображения*/
    background-image: url(http://upload.wikimedia.org/wikipedia/commons/0/04/CroppedISS008-E-5604.jpg); /*Путь к изображению*/
    height: 1000px; /*Высота страницы 1000 пикселей*/
   }
   div {/*Слой внутри браузер*/
    background-attachment: inherit; /*Изучаемое свойство*/
    background-repeat: no-repeat; /*Одна копия изображения*/
    background-image: url(http://upload.wikimedia.org/wikipedia/commons/0/04/CroppedISS008-E-5604.jpg); /*Путь к изображению*/
    height: 1000px; /*Высота страницы 1000 пикселей*/
    margin:100px;/*Отступ слоя от окна браузера*/
   }
  </style>
 </head>
 <body>
  <div>
   <h1>Тест</h1>
   <p>Фон с изображением</p>
  </div>
 </body>
</html>
Пример с local

Свойство background-clip

Определяет пространство занимаемое фоном или фоновым изображением.

Значения:

  • padding-box – фон или фоновое изображение внутри границ элемента веб-страницы.(Значение по умолчанию)
  • border-box – фон или фоновое изображение занимают внутреннее пространство и границы элемента.
  • content-box – фон внутри элемента.

Синтаксис

background-clip: padding-box;

Версия CSS

CSS1

CSS2

CSS2.1

CSS3

Пример с padding-box
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Фон с изображением</title>
  <style>
   p {
    background-clip:padding-box;/*Фон занимает элемент и отступ от элемента(padding)*/
    background-color:#006699;/*Цвет фона*/
    padding: 20px;/*Отступ от элемента до границы тогоже элемента*/
    border-width: 3px;/*Толщина границы*/
    border-style:dashed;/*Граница элемента пунктиром*/
   }
  </style>
 </head>
 <body>
  <p>Пространство занимаемое фоном.</p>
 </body>
</html>

Пространство занимаемое фоном.

Пример с border-box
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Фон с изображением</title>
  <style>
   p {
    background-clip:border-box;/*Фон занимает элемент и отступ от элемента(padding) и границу элемента(border)*/
    background-color:#006699;/*Цвет фона*/
    padding: 20px;/*Отступ от элемента до границы тогоже элемента*/
    border-width: 3px;/*Толщина границы*/
    border-style:dashed;/*Граница элемента пунктиром*/
   }
  </style>
 </head>
 <body>
  <p>Пространство занимаемое фоном.</p>
 </body>
</html>

Пространство занимаемое фоном.

Пример с content-box
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Фон с изображением</title>
  <style>
   p {
    background-clip:content-box;/*Фон занимает элемент(width и height)*/
    background-color:#006699;/*Цвет фона*/
    padding: 20px;/*Отступ от элемента до границы тогоже элемента*/
    border-width: 3px;/*Толщина границы*/
    border-style:dashed;/*Граница элемента пунктиром*/
   }
  </style>
 </head>
 <body>
  <p>Пространство занимаемое фоном.</p>
 </body>
</html>

Пространство занимаемое фоном.

Свойство background-color

Свойство background-image

Свойство background-origin

Свойство background-position

Свойство background-repeat

Свойство background-size

Свойство border

Свойство bottom

Свойство box-shadow

Свойство box-sizing

Свойство caption-side

Свойство clear

Свойство clip

Свойство color

Свойство columns

Свойство cursor

Свойство direction

Свойство display

Свойство empty-cells

Свойство float

Свойство font

Свойство height

Свойство left

Свойство letter-spacing

Свойство line-height

Свойство list-style

Свойство margin

Свойство max-height

Свойство max-width

Свойство min-height

Свойство min-width

Свойство opacity

Свойство orphans

Свойство outline

Свойство overflow

Свойство padding

Свойство page-break-after

Свойство page-break-before

Свойство page-break-inside

Свойство position

Свойство quotes

Свойство resize

Свойство right

Свойство tab-size

Свойство table-layout

Свойство text-align

Свойство text-decoration

Свойство text-indent

Свойство text-overflow

Свойство text-shadow

Свойство text-transform

Свойство top

Свойство transform

Свойство unicode-bidi

Свойство vertical-align

Свойство visibility

Свойство white-space

Свойство widows

Свойство width

Свойство word-spacing

Свойство word-wrap

Свойство writing-mode

Свойство z-index

Вёрстка

Приложение

Валидация

Сервисы