CSS значения и единицы
Каждое объявление CSS включает пару свойство/значение. В зависимости от свойства, значение может включать целое число или ключевое слово, а также ряд ключевых слов и значений с или без единиц измерения. Существует стандартный набор типов данных — значений и единиц — которые принимают свойства CSS. Ниже приведён обзор большинства этих типов данных. Для получения более подробной информации см. страницу для каждого типа значения.
Текстовые типы данных
<custom-ident>- Заранее определённые ключевые слова как
<ident> <string><url>
Текстовые типы данных являются либо <string>, цитированным рядом символов, либо <ident>, «идентификатором CSS», который представляет собой нецитированную строку. <string> должен быть заключён в кавычки, одинарные или двойные.
Идентификаторы CSS, перечисленные в спецификациях как <ident> или <custom-ident>, должны быть без кавычек.
В спецификациях CSS значения, которые могут быть определены веб-разработчиком, такие как анимации ключевых кадров, имена шрифтов или области сетки, перечислены как <custom-ident>, <string> или оба.
Когда разрешены как цитированные, так и нецитированные пользовательские значения текста, в спецификации будет указано <custom-ident> | <string>, что кавычки необязательны, как в случае с именами анимации:
@keyframe validIdent {
/* keyframes go here */
}
@keyframe 'validString' {
/* keyframes go here */
}
Некоторые текстовые значения недействительны, если заключены в кавычки. Например, значение grid-area может быть <custom-ident>, поэтому если у нас есть область сетки с именем content мы будем использовать её без кавычек:
.item {
grid-area: content;
}
В сравнении, тип данных, являющийся <string>, например, строковое значение свойства content, должен быть заключен в кавычки:
.item::after {
content: "This is my content.";
}
Хотя вы можете, в целом, создавать любые имена, включая использование эмодзи, идентификатор не может быть none, unset, initial, или inherit, начинаться с цифры или двух дефисов, и, как правило, не должен совпадать с любым другим заранее определённым ключевым словом CSS. Более подробную информацию см. на страницах справочников <custom-ident> и <string>.
Заранее определённые ключевые слова
Заранее определённые ключевые слова — это текстовые значения, определённые спецификацией для данного свойства. Эти ключевые слова также являются идентификаторами CSS и поэтому используются без кавычек.
При просмотре синтаксиса значений свойств CSS в спецификации CSS или на странице свойства MDN допустимые ключевые слова будут перечислены в следующем формате. Следующие значения являются заранее определёнными ключевыми словами, разрешёнными для float.
left | right | none | inline-start | inline-end
Эти значения используются без кавычек:
.box {
float: left;
}
Значения CSS
Помимо заранее определённых ключевых слов, являющихся частью спецификации для свойства, все свойства CSS принимают значения CSS initial, inherit, unset, revert и revert-layer, которые явно задают поведение по умолчанию.
initial-
Представляет значение, указанное как начальное значение свойства.
inherit-
Представляет вычисленное значение свойства на родительском элементе, при условии, что оно наследуется.
unset-
Выступает как
inheritилиinitial, в зависимости от того, наследуется ли свойство или нет. revert-
Сбрасывает свойство до его наследуемого значения, если оно наследуется от родителя, или до значения по умолчанию, установленного стилями пользователя (или стилями пользователя, если они существуют).
revert-layer-
Отменяет значение свойства в слое каскада до значения свойства в правиле CSS, соответствующем элементу в предыдущем слое каскада. Значение свойства с этим ключевым словом пересчитывается так, как будто никакие правила не были указаны для целевого элемента в текущем слое каскада.
URL
Тип <url> использует функциональную запись, которая принимает <string> — URL. Это может быть абсолютный URL или относительный URL. Например, если вы хотите включить изображение фона, вы можете использовать любое из следующих.
.box {
background-image: url("images/my-background.png");
}
.box {
background-image: url("https://www.exammple.com/images/my-background.png");
}
Параметр для url() может быть заключён в кавычки или без них. Если без кавычек, он анализируется как <url-token>, который имеет дополнительные требования, включая экранирование определённых символов. См. <url> для получения дополнительной информации.
Числовые типы данных
Целые числа
Целое число состоит из одной или нескольких десятичных цифр, 0 через 9, таких как 1024 или -55. Целое число может быть предварено символом + или - без пробела между символом и целым числом.
Числа
Число <number> представляет собой вещественное число, которое может или не может иметь десятичную точку с дробной частью, например, 0.255, 128 или -1.2. Числа также могут быть предварены символами + или -.
Размеры
Единица <dimension> — это <number> с присоединённой к ней единицей измерения, например 45deg, 100ms, или 10px. Идентификатор единицы измерения нечувствителен к регистру. Между числом и идентификатором единицы измерения никогда не должно быть пробела или каких-либо других символов: например, 1 cm — это недопустимый формат.
CSS использует размеры для указания:
-
<length>(Единицы измерения расстояния) <angle><time><frequency><flex><resolution>
Все эти типы подробно рассмотрены в нижеследующих разделах.
Единицы измерения расстояния
В тех случаях, когда в качестве значения свойства допускается единица измерения расстояния, также известная как длина, это описывается как тип <length>. В CSS существуют два типа длин: относительные и абсолютные. Относительные единицы измерения длины задают длину относительно чего-то другого.
Существует два типа относительных длин: длины, относительные к шрифту, и длины, относительные к области просмотра. Оба типа делятся на два подтипа. Единицы измерения длины, относительные к шрифту, могут быть локально-относительными или относительно корневого шрифта. Единицы измерения длины, относительные к области просмотра, могут быть относительными к высоте или ширине области просмотра или, как определено в модуле CSS Containment, к контейнеру.
Локально-относительные длины
Локально-относительные длины относятся к размеру локального шрифта или межстрочному интервалу, задавая длину относительно вычисленного размера элемента элемента или относительно унаследованного значения элемента в случае циклической ссылки, например, значения em для свойства font-size или значения lh для свойства line-height. Например, em относительно размера шрифта элемента, а ex относительно высоты x-высоты шрифта элемента.
| Единица | Относительно |
|---|---|
cap | Высота заглавных букв (номинальная высота заглавных букв) шрифта элемента. |
ch | Средний размер продвижения узкого глифа в шрифте элемента, как представлено глифом "0" (НОЛЬ, U+0030). |
em | Размер шрифта шрифта элемента. |
ex | Высота x шрифта элемента. |
ic | Средний размер продвижения глифа в полном формате в шрифте элемента, как представлено глифом "水" (иероглиф воды, U+6C34). |
lh | Межстрочный интервал элемента. |
Относительные длины к корневому шрифту
Длины, относительные к корневому шрифту, задают длину относительно родительского элемента корневого элемента, такого как <html> или <SVG>. Например, rem относительно размера шрифта корневого элемента, а rex относительно высоты x шрифта корневого элемента.
| Единица | Относительно |
|---|---|
rcap | Высота заглавных букв (номинальная высота заглавных букв) шрифта корневого элемента. |
rch | Средний размер продвижения узкого глифа в шрифте корневого элемента, как представлено глифом "0" (НОЛЬ, U+0030). |
rem | Размер шрифта шрифта корневого элемента. |
rex | Высота x шрифта корневого элемента. |
ric | Средний размер продвижения глифа в полном формате в шрифте корневого элемента, как представлено глифом "水" (иероглиф воды, U+6C34). |
rlh | Межстрочный интервал корневого элемента. |
Единицы области просмотра
Единицы измерения области просмотра задают длину, относительную к размерам области просмотра. Например, vw относительно ширины области просмотра, а vh относительно высоты области просмотра.
| Единица | Относительно |
|---|---|
dvh | 1% от высоты динамической области просмотра. |
dvw | 1% от ширины динамической области просмотра. |
lvh | 1% от высоты большой области просмотра. |
lvw | 1% от ширины большой области просмотра. |
svh | 1% от высоты малой области просмотра. |
svw | 1% от ширины малой области просмотра. |
vb | 1% от размера области просмотра по оси блока корневого элемента. |
vh | 1% от высоты области просмотра. |
vi | 1% от размера области просмотра по оси строки корневого элемента. |
vmax | 1% от большей стороны области просмотра. |
vmin | 1% от меньшей стороны области просмотра. |
vw | 1% от ширины области просмотра. |
Единицы контейнера
Единицы измерения длины контейнера задают длину, относительную к размерам контейнера запроса. Например, cqw относительно ширины контейнера запроса, а cqh относительно его высоты.
| Единица | Относительно |
|---|---|
cqb | 1% от размера контейнера запроса по оси блока |
cqh | 1% от высоты контейнера запроса |
cqi | 1% от размера контейнера запроса по оси строки |
cqmax | Большее значение из cqi или cqb
|
cqmin | Меньшее значение из cqi или cqb
|
cqw | 1% от ширины контейнера запроса |
Абсолютные единицы измерения длины
Абсолютные единицы измерения длины фиксированы и соответствуют физической длине: дюймы или сантиметры. Поэтому многие из этих единиц измерения более полезны, когда выходные данные представляют собой фиксированный размер носителя, например, печать. Например, mm — это физический миллиметр, 1/10 часть сантиметра.
| Единица | Название | Равно |
|---|---|---|
cm | Сантиметры | 1см = 96px/2.54 |
in | Дюймы | 1дюйм = 2.54см = 96px |
mm | Миллиметры | 1мм = 1/10 от 1см |
pc | Пики | 1пика = 1/6 от 1 дюйма |
pt | Пункты | 1пункт = 1/72 от 1 дюйма |
px | Пиксели | 1px = 1/96 от 1 дюйма |
Q | Четверти миллиметров | 1Q = 1/40 от 1см |
При включении значения длины, если длина 0, идентификатор единицы измерения не требуется. В противном случае идентификатор единицы измерения обязателен, нечувствителен к регистру и должен следовать непосредственно за числовой частью значения без пробела между ними.
Единицы измерения углов
Значения углов представлены типом <angle> и принимают следующие значения:
| Единица | Название | Описание |
|---|---|---|
deg | Градусы | В полном круге 360 градусов. |
grad | Грады | В полном круге 400 градов. |
rad | Радианы | В полном круге 2π радиан. |
turn | Обертывания | В полном круге 1 оборот. |
Единицы измерения времени
Значения времени представлены типом <time>. При включении значения времени идентификатор единицы измерения — s или ms — обязателен. Принимает следующие значения.
| Единица | Название | Описание |
|---|---|---|
ms | Миллисекунды | В секунде 1000 миллисекунд. |
s | Секунды |
Единицы измерения частоты
Значения частоты представлены типом <frequency>. Принимает следующие значения.
| Единица | Название | Описание |
|---|---|---|
Hz | Герцы | Представляет количество повторений в секунду. |
kHz | Килогерцы | Один килогерц равен 1000 герцам. |
1Hz, что также можно записать как 1hz или 1HZ, — это одна цикличность в секунду.
Единицы гибкости
Единицы гибкости представлены типом <flex>. Принимает следующее значение.
| Единица | Имя | Описание |
|---|---|---|
fr | Flex | Представляет гибкую длину внутри контейнера сетки |
Единицы разрешения
Единицы разрешения представлены типом <resolution>. Они представляют размер одной точки в графическом представлении, таком как экран, указывая, сколько таких точек помещается в дюйм, сантиметр или пиксель CSS. Принимает следующие значения:
| Единица | Описание |
|---|---|
dpcm | Точки на сантиметр. |
dpi | Точки на дюйм. |
dppx, x
| Точки на единицу px. |
Проценты
A <percentage> — это тип, представляющий дробь от некоторого другого значения.
Значения процентов всегда относительны к другому значению, например, длине. Каждый свойство, допускающий проценты, также определяет величину, к которой относится процент. Эта величина может быть значением другого свойства того же элемента, значением свойства родительского элемента, измерением содержащего блока или чем-то другим.
Например, если вы задаёте width ящика в процентах, это относится к проценту вычисленной ширины родительского элемента ящика:
.box {
width: 50%;
}
Смешивание процентов и размеров
Некоторые свойства принимают размер, который может быть либо одним из двух типов, например, <length> или <percentage>. В этом случае допустимое значение детализировано в спецификации в виде комбинированной единицы, например, <length-percentage>. Другие возможные комбинации:
Специальные типы данных (определены в других спецификациях)
Цвет
Значение <color> задаёт цвет элемента (например, цвет фона), и определено в CSS Color Module.
Изображение
Значение <image> определяет все типы изображений, которые могут быть использованы в CSS, и определено в CSS Image Values and Replaced Content Module.
Позиция
Тип <position> определяет 2D позиционирование объекта внутри области позиционирования, например, изображение фона внутри контейнера. Этот тип интерпретируется как background-position и, следовательно, задаётся в спецификации CSS Backgrounds and Borders.
Функциональная нотация
Функциональная нотация — это тип значения, который может представлять более сложные типы или вызывать специальную обработку CSS. Синтаксис начинается с имени функции, сразу за которым следует левая круглая скобка ( , затем аргументы нотации, а затем правая круглая скобка ). Функции могут принимать несколько аргументов, которые отформатированы аналогично значению свойства CSS.
Разрешается использовать пробелы, но они необязательны внутри скобок. (Но см. заметки о пробелах на страницах для min(), max(), minmax(), и clamp() функций.)
Некоторые устаревшие функциональные нотации, такие как устаревший синтаксис для rgb(), rgba(), hsl(), и hsla(), использовали запятые, но запятые обычно используются только для разделения элементов в списке. Если запятая используется для разделения аргументов, пробелы перед и после запятой необязательны.
Спецификации
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Values_and_Units