CssColor
Дата обновления перевода 2023-09-1254
CssColor
Валидирует, что значение является валидным цветом CSS. Основоположное значение преобразуется в строку перед валидацией.
??????????? ? | ???????? ??? ?????? |
????? | CssColor |
????????? | CssColorValidator |
Базовое использование
В следующем примере, значение $defaultColor
должно быть цветом CSS, определённым в
любом из валидных форматов CSS (например, red
, #369
, hsla(0, 0%, 20%, 0.4)
);
$accentColor
должен быть цветом CSS, определённом в шестнадцатиричном формате; а
$currentColor
должен быть цветом CSS, определённым, как любой из именованных цветов
CSS:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
// src/Entity/Bulb.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class Bulb
{
#[Assert\CssColor]
protected string $defaultColor;
#[Assert\CssColor(
formats: Assert\CssColor::HEX_LONG,
message: 'The accent color must be a 6-character hexadecimal color.',
)]
protected string $accentColor;
#[Assert\CssColor(
formats: [Assert\CssColor::BASIC_NAMED_COLORS, Assert\CssColor::EXTENDED_NAMED_COLORS],
message: 'The color '{{ value }}' is not a valid CSS color name.',
)]
protected string $currentColor;
}
Note
As with most of the other constraints, null
and empty strings are
considered valid values. This is to allow them to be optional values.
If the value is mandatory, a common solution is to combine this constraint
with NotBlank.
Опции
groups
type: array
| string
default: null
It defines the validation group or groups of this constraint. Read more about validation groups.
message
тип: string
по умолчанию: Это значение не является валидным цветом CSS.
Это сообщение отображается, если основоположные данные не являются валидным цветом CSS.
Вы можете использовать следующие параметы в этом сообщении:
???????? | ???????? |
---|---|
{{ value }} |
??????? (??????????) ???????? |
formats
тип: string
| array
По умолчанию, это ограничение считает валидным любой из множества способов определения
цветов CSS. Используйте опцию formats
, чтобы ограничить, какие форматы CSS разрешены.
Вот доступные форматы (которые также определены как PHP-константы; например,
Assert\CssColor::HEX_LONG
):
hex_long
hex_long_with_alpha
hex_short
hex_short_with_alpha
basic_named_colors
extended_named_colors
system_colors
keywords
rgb
rgba
hsl
hsla
hex_long
Регулярное выражение. Позволяет все значения, которые представляют цвет CSS из
6 знаков (в дополнение к ведущему #
) и содержится в диапазоне: от 0
до
9
и от A
до F
(нечувствительно к регистру).
Примеры: #2F2F2F
, #2f2f2f
hex_long_with_alpha
Регулярное выражение. Позволяет все значения, которые представляют цвет CSS с
альфа-частью из 8 знаков (в дополнение к ведущему #
) и содержится в диапазоне:
от 0
до 9
и от A
до F
(нечувствительныо к регистру).
Примеры: #2F2F2F80
, #2f2f2f80
hex_short
Регулярное выражение. Позволяет все значения, которые представляют цвет CSS строго
из 3 знаков (в дополнение к ведущему #
) и содержится в диапазоне:
от 0
до 9
и от A
до F
(нечувствительно к регистру).
Примеры: #CCC
, #ccc
hex_short_with_alpha
Регулярное выражение. Позволяет все значения, которые представляют цвет CSS с
альфа-частью строго из 4 знаков (в дополнение к ведущему #
) и содержится в
диапазоне: от 0
до 9
и от A
до F
(нечувствительно к регистру).
Примеры: #CCC8
, #ccc8
basic_named_colors
Любое из валидных названий цветов, определённых в Базовом списке именованных цветов W3C (нечувствительно к регистру).
Примеры: black
, red
, green
extended_named_colors
Любое из валидных названий цветов, определённых в Расширенном списке цветов W3C (нечувствительно к регистру).
Примеры: aqua
, brown
, chocolate
system_colors
Любое из валидных названий цветов, определённых в Списке системных цветов CSS WG (нечувствительно к регистру).
Примеры: LinkText
, VisitedText
, ActiveText
, ButtonFace
, ButtonText
keywords
Любое из валидных ключевых слов, определённых в Списке ключевых слов CSS WG (нечувствительно к регистру).
Примеры: transparent
, currentColor
rgb
A regular expression. Allows all values which represent a CSS color following the RGB notation, with or without space between values.
Примеры: rgb(255, 255, 255)
, rgb(255,255,255)
rgba
A regular expression. Allows all values which represent a CSS color with alpha part following the RGB notation, with or without space between values.
Примеры: rgba(255, 255, 255, 0.3)
, rgba(255,255,255,0.3)
hsl
Регулярное выражение. Позволяет все значения, которые представляют цвет CSS с последующей нотацией HSL, с или без пробелов между значениями.
Примеры: hsl(0, 0%, 20%)
, hsl(0,0%,20%)
hsla
Регулярное выражение. Позволяет все значения, которые представляют цвет CSS с альфа-частью, которая следует нотации HSLA, с или без пробелов между значениями.
Примеры: hsla(0, 0%, 20%, 0.4)
, hsla(0,0%,20%,0.4)
Дата обновления перевода 2024-07-25
payload
тип: mixed
по умолчанию: null
Эта опция может быть использована, чтобы добавить к ограничению произвольные данные, относящиеся к домену. Сконфигурированная нагрузка не используется компонентом Валидатор, но его обработка полностью зависит от вас.
Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.