css_ast/values/backgrounds/
mod.rs

1// AUTO-GENERATED from w3c/csswg-drafts
2// Commit: https://github.com/w3c/csswg-drafts/commit/7e27ad7484307dfdbe9d0e18ad19d02859389688
3// Do not edit this file directly.
4#![allow(warnings)]
5//! https://drafts.csswg.org/css-backgrounds-4/
6
7mod impls;
8use super::prelude::*;
9use impls::*;
10// /// Represents the style value for `background` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background).
11// ///
12// /// The background CSS property is a shorthand that sets several background properties at once.
13// ///
14// /// The grammar is defined as:
15// ///
16// /// ```text,ignore
17// /// <bg-layer>#? , <final-bg-layer>
18// /// ```
19// ///
20// /// https://drafts.csswg.org/css-backgrounds-4/#background
21// #[syntax(" <bg-layer>#? , <final-bg-layer> ")]
22// #[derive(
23//     Parse,
24//     Peek,
25//     ToSpan,
26//     ToCursors,
27//     DeclarationMetadata,
28//     SemanticEq,
29//     Debug,
30//     Clone,
31//     PartialEq,
32//     Eq,
33//     PartialOrd,
34//     Ord,
35//     Hash,
36// )]
37// #[declaration_metadata(
38//     initial = "see individual properties",
39//     applies_to = Elements,
40//     animation_type = Unknown,
41//     percentages = Unknown,
42//     longhands = BackgroundAttachment|BackgroundClip|BackgroundColor|BackgroundImage|BackgroundOrigin|BackgroundPosition|BackgroundRepeat|BackgroundSize,
43//     property_group = Backgrounds,
44//     computed_value_type = Unknown,
45//     canonical_order = "per grammar",
46// )]
47// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
48// #[cfg_attr(
49//     feature = "css_feature_data",
50//     derive(ToCSSFeature),
51//     css_feature("css.properties.background")
52// )]
53// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
54// #[derive(csskit_derives::NodeWithMetadata)]
55// pub struct BackgroundStyleValue<'a>;
56
57/// Represents the style value for `background-attachment` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-attachment).
58///
59/// The background-attachment CSS property sets whether an element's background image or gradient moves as the element scrolls.
60///
61/// The grammar is defined as:
62///
63/// ```text,ignore
64/// <attachment>#
65/// ```
66///
67/// https://drafts.csswg.org/css-backgrounds-4/#background-attachment
68#[syntax(" <attachment># ")]
69#[derive(
70	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
71)]
72#[declaration_metadata(
73    initial = "scroll",
74    applies_to = Elements,
75    animation_type = Discrete,
76    shorthand_group = Background,
77    property_group = Backgrounds,
78    computed_value_type = Unknown,
79    canonical_order = "per grammar",
80)]
81#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
82#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-attachment"))]
83#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
84#[derive(csskit_derives::NodeWithMetadata)]
85pub struct BackgroundAttachmentStyleValue<'a>;
86
87/// Represents the style value for `background-clip` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-clip).
88///
89/// The background-clip CSS property sets the extent of the background: the padding box, the content box, or the default border box.
90///
91/// The grammar is defined as:
92///
93/// ```text,ignore
94/// <bg-clip>#
95/// ```
96///
97/// https://drafts.csswg.org/css-backgrounds-4/#background-clip
98#[syntax(" <bg-clip># ")]
99#[derive(
100	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
101)]
102#[declaration_metadata(
103    initial = "border-box",
104    applies_to = Elements,
105    animation_type = RepeatableList,
106    shorthand_group = Background,
107    property_group = Backgrounds,
108    computed_value_type = AsSpecified,
109    canonical_order = "per grammar",
110)]
111#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
112#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-clip"))]
113#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
114#[derive(csskit_derives::NodeWithMetadata)]
115pub struct BackgroundClipStyleValue<'a>;
116
117/// Represents the style value for `background-color` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-color).
118///
119/// The background-color CSS property sets the fill color of an element, behind any content and background images or gradients.
120///
121/// The grammar is defined as:
122///
123/// ```text,ignore
124/// <color>
125/// ```
126///
127/// https://drafts.csswg.org/css-backgrounds-4/#background-color
128#[syntax(" <color> ")]
129#[derive(
130	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
131)]
132#[declaration_metadata(
133    initial = "transparent",
134    applies_to = Elements,
135    animation_type = ByComputedValue,
136    shorthand_group = Background,
137    property_group = Backgrounds,
138    computed_value_type = Unknown,
139    canonical_order = "per grammar",
140)]
141#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
142#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-color"))]
143#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
144#[derive(csskit_derives::NodeWithMetadata)]
145pub struct BackgroundColorStyleValue;
146
147/// Represents the style value for `background-image` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-image).
148///
149/// The background-image CSS property sets the graphics to display behind the content of an element and in front of the background color. Graphics may be any combination of images or gradients.
150///
151/// The grammar is defined as:
152///
153/// ```text,ignore
154/// <bg-image>#
155/// ```
156///
157/// https://drafts.csswg.org/css-backgrounds-4/#background-image
158#[syntax(" <bg-image># ")]
159#[derive(
160	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
161)]
162#[declaration_metadata(
163    initial = "none",
164    applies_to = Elements,
165    animation_type = Discrete,
166    shorthand_group = Background,
167    property_group = Backgrounds,
168    computed_value_type = Unknown,
169    canonical_order = "per grammar",
170)]
171#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
172#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-image"))]
173#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
174#[derive(csskit_derives::NodeWithMetadata)]
175pub struct BackgroundImageStyleValue<'a>;
176
177/// Represents the style value for `background-origin` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-origin).
178///
179/// The background-origin CSS property sets the background starting position relative to the border and padding of an element.
180///
181/// The grammar is defined as:
182///
183/// ```text,ignore
184/// <visual-box>#
185/// ```
186///
187/// https://drafts.csswg.org/css-backgrounds-4/#background-origin
188#[syntax(" <visual-box># ")]
189#[derive(
190	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
191)]
192#[declaration_metadata(
193    initial = "padding-box",
194    applies_to = Elements,
195    animation_type = RepeatableList,
196    shorthand_group = Background,
197    property_group = Backgrounds,
198    computed_value_type = Unknown,
199    canonical_order = "per grammar",
200)]
201#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
202#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-origin"))]
203#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
204#[derive(csskit_derives::NodeWithMetadata)]
205pub struct BackgroundOriginStyleValue<'a>;
206
207// /// Represents the style value for `background-position` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-position).
208// ///
209// /// The background-position CSS property offsets the initial position of background images relative to the background origin.
210// ///
211// /// The grammar is defined as:
212// ///
213// /// ```text,ignore
214// /// <bg-position>#
215// /// ```
216// ///
217// /// https://drafts.csswg.org/css-backgrounds-4/#background-position
218// #[syntax(" <bg-position># ")]
219// #[derive(
220//     Parse,
221//     Peek,
222//     ToSpan,
223//     ToCursors,
224//     DeclarationMetadata,
225//     SemanticEq,
226//     Debug,
227//     Clone,
228//     PartialEq,
229//     Eq,
230//     PartialOrd,
231//     Ord,
232//     Hash,
233// )]
234// #[declaration_metadata(
235//     initial = "0% 0%",
236//     applies_to = Elements,
237//     animation_type = RepeatableList,
238//     percentages = BackgroundPositioningArea,
239//     shorthand_group = Background,
240//     property_group = Backgrounds,
241//     computed_value_type = Unknown,
242//     canonical_order = "per grammar",
243// )]
244// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
245// #[cfg_attr(
246//     feature = "css_feature_data",
247//     derive(ToCSSFeature),
248//     css_feature("css.properties.background-position")
249// )]
250// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
251// #[derive(csskit_derives::NodeWithMetadata)]
252// pub struct BackgroundPositionStyleValue<'a>;
253
254// /// Represents the style value for `background-position-block` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-position-block).
255// ///
256// /// The grammar is defined as:
257// ///
258// /// ```text,ignore
259// /// [ center | [ [ start | end ]? <length-percentage>? ]! ]#
260// /// ```
261// ///
262// /// https://drafts.csswg.org/css-backgrounds-4/#background-position-block
263// #[syntax(" [ center | [ [ start | end ]? <length-percentage>? ]! ]# ")]
264// #[derive(
265//     Parse,
266//     Peek,
267//     ToSpan,
268//     ToCursors,
269//     DeclarationMetadata,
270//     SemanticEq,
271//     Debug,
272//     Clone,
273//     PartialEq,
274//     Eq,
275//     PartialOrd,
276//     Ord,
277//     Hash,
278// )]
279// #[declaration_metadata(
280//     initial = "0%",
281//     applies_to = Elements,
282//     animation_type = RepeatableList,
283//     percentages = BackgroundPositioningArea,
284//     property_group = Backgrounds,
285//     computed_value_type = Unknown,
286//     canonical_order = "per grammar",
287//     logical_property_group = BackgroundPosition,
288//     box_side = BlockStart|BlockEnd,
289// )]
290// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
291// #[cfg_attr(
292//     feature = "css_feature_data",
293//     derive(ToCSSFeature),
294//     css_feature("css.properties.background-position-block")
295// )]
296// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
297// #[derive(csskit_derives::NodeWithMetadata)]
298// pub struct BackgroundPositionBlockStyleValue<'a>;
299
300// /// Represents the style value for `background-position-inline` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-position-inline).
301// ///
302// /// The grammar is defined as:
303// ///
304// /// ```text,ignore
305// /// [ center | [ [ start | end ]? <length-percentage>? ]! ]#
306// /// ```
307// ///
308// /// https://drafts.csswg.org/css-backgrounds-4/#background-position-inline
309// #[syntax(" [ center | [ [ start | end ]? <length-percentage>? ]! ]# ")]
310// #[derive(
311//     Parse,
312//     Peek,
313//     ToSpan,
314//     ToCursors,
315//     DeclarationMetadata,
316//     SemanticEq,
317//     Debug,
318//     Clone,
319//     PartialEq,
320//     Eq,
321//     PartialOrd,
322//     Ord,
323//     Hash,
324// )]
325// #[declaration_metadata(
326//     initial = "0%",
327//     applies_to = Elements,
328//     animation_type = RepeatableList,
329//     percentages = BackgroundPositioningArea,
330//     property_group = Backgrounds,
331//     computed_value_type = Unknown,
332//     canonical_order = "per grammar",
333//     logical_property_group = BackgroundPosition,
334//     box_side = InlineStart|InlineEnd,
335// )]
336// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
337// #[cfg_attr(
338//     feature = "css_feature_data",
339//     derive(ToCSSFeature),
340//     css_feature("css.properties.background-position-inline")
341// )]
342// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
343// #[derive(csskit_derives::NodeWithMetadata)]
344// pub struct BackgroundPositionInlineStyleValue<'a>;
345
346// /// Represents the style value for `background-position-x` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-position-x).
347// ///
348// /// The background-position CSS property offsets the initial position of background images relative to the background origin.
349// ///
350// /// The grammar is defined as:
351// ///
352// /// ```text,ignore
353// /// [ center | [ [ left | right | x-start | x-end ]? <length-percentage>? ]! ]#
354// /// ```
355// ///
356// /// https://drafts.csswg.org/css-backgrounds-4/#background-position-x
357// #[syntax(
358//     " [ center | [ [ left | right | x-start | x-end ]? <length-percentage>? ]! ]# "
359// )]
360// #[derive(
361//     Parse,
362//     Peek,
363//     ToSpan,
364//     ToCursors,
365//     DeclarationMetadata,
366//     SemanticEq,
367//     Debug,
368//     Clone,
369//     PartialEq,
370//     Eq,
371//     PartialOrd,
372//     Ord,
373//     Hash,
374// )]
375// #[declaration_metadata(
376//     initial = "0%",
377//     applies_to = Elements,
378//     animation_type = RepeatableList,
379//     percentages = BackgroundPositioningArea,
380//     property_group = Backgrounds,
381//     computed_value_type = Unknown,
382//     canonical_order = "per grammar",
383//     logical_property_group = BackgroundPosition,
384// )]
385// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
386// #[cfg_attr(
387//     feature = "css_feature_data",
388//     derive(ToCSSFeature),
389//     css_feature("css.properties.background-position-x")
390// )]
391// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
392// #[derive(csskit_derives::NodeWithMetadata)]
393// pub struct BackgroundPositionXStyleValue<'a>;
394
395// /// Represents the style value for `background-position-y` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-position-y).
396// ///
397// /// The background-position CSS property offsets the initial position of background images relative to the background origin.
398// ///
399// /// The grammar is defined as:
400// ///
401// /// ```text,ignore
402// /// [ center | [ [ top | bottom | y-start | y-end ]? <length-percentage>? ]! ]#
403// /// ```
404// ///
405// /// https://drafts.csswg.org/css-backgrounds-4/#background-position-y
406// #[syntax(
407//     " [ center | [ [ top | bottom | y-start | y-end ]? <length-percentage>? ]! ]# "
408// )]
409// #[derive(
410//     Parse,
411//     Peek,
412//     ToSpan,
413//     ToCursors,
414//     DeclarationMetadata,
415//     SemanticEq,
416//     Debug,
417//     Clone,
418//     PartialEq,
419//     Eq,
420//     PartialOrd,
421//     Ord,
422//     Hash,
423// )]
424// #[declaration_metadata(
425//     initial = "0%",
426//     applies_to = Elements,
427//     animation_type = RepeatableList,
428//     percentages = BackgroundPositioningArea,
429//     property_group = Backgrounds,
430//     computed_value_type = Unknown,
431//     canonical_order = "per grammar",
432//     logical_property_group = BackgroundPosition,
433// )]
434// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
435// #[cfg_attr(
436//     feature = "css_feature_data",
437//     derive(ToCSSFeature),
438//     css_feature("css.properties.background-position-y")
439// )]
440// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
441// #[derive(csskit_derives::NodeWithMetadata)]
442// pub struct BackgroundPositionYStyleValue<'a>;
443
444/// Represents the style value for `background-repeat` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-repeat).
445///
446/// The background-repeat CSS property sets how a background image is tiled.
447///
448/// The grammar is defined as:
449///
450/// ```text,ignore
451/// <repeat-style>#
452/// ```
453///
454/// https://drafts.csswg.org/css-backgrounds-4/#background-repeat
455#[syntax(" <repeat-style># ")]
456#[derive(
457	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
458)]
459#[declaration_metadata(
460    initial = "repeat",
461    applies_to = Elements,
462    animation_type = Discrete,
463    shorthand_group = Background,
464    property_group = Backgrounds,
465    computed_value_type = Unknown,
466    canonical_order = "per grammar",
467)]
468#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
469#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-repeat"))]
470#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
471#[derive(csskit_derives::NodeWithMetadata)]
472pub struct BackgroundRepeatStyleValue<'a>;
473
474/// Represents the style value for `background-repeat-block` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-repeat-block).
475///
476/// The grammar is defined as:
477///
478/// ```text,ignore
479/// <repetition>#
480/// ```
481///
482/// https://drafts.csswg.org/css-backgrounds-4/#background-repeat-block
483#[syntax(" <repetition># ")]
484#[derive(
485	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
486)]
487#[declaration_metadata(
488    initial = "repeat",
489    applies_to = Elements,
490    animation_type = Discrete,
491    property_group = Backgrounds,
492    computed_value_type = AsSpecified,
493    canonical_order = "per grammar",
494    logical_property_group = BackgroundRepeat,
495    box_side = BlockStart|BlockEnd,
496)]
497#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
498#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-repeat-block"))]
499#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
500#[derive(csskit_derives::NodeWithMetadata)]
501pub struct BackgroundRepeatBlockStyleValue<'a>;
502
503/// Represents the style value for `background-repeat-inline` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-repeat-inline).
504///
505/// The grammar is defined as:
506///
507/// ```text,ignore
508/// <repetition>#
509/// ```
510///
511/// https://drafts.csswg.org/css-backgrounds-4/#background-repeat-inline
512#[syntax(" <repetition># ")]
513#[derive(
514	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
515)]
516#[declaration_metadata(
517    initial = "repeat",
518    applies_to = Elements,
519    animation_type = Discrete,
520    property_group = Backgrounds,
521    computed_value_type = AsSpecified,
522    canonical_order = "per grammar",
523    logical_property_group = BackgroundRepeat,
524    box_side = InlineStart|InlineEnd,
525)]
526#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
527#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-repeat-inline"))]
528#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
529#[derive(csskit_derives::NodeWithMetadata)]
530pub struct BackgroundRepeatInlineStyleValue<'a>;
531
532/// Represents the style value for `background-repeat-x` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-repeat-x).
533///
534/// The grammar is defined as:
535///
536/// ```text,ignore
537/// <repetition>#
538/// ```
539///
540/// https://drafts.csswg.org/css-backgrounds-4/#background-repeat-x
541#[syntax(" <repetition># ")]
542#[derive(
543	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
544)]
545#[declaration_metadata(
546    initial = "repeat",
547    applies_to = Elements,
548    animation_type = Discrete,
549    property_group = Backgrounds,
550    computed_value_type = AsSpecified,
551    canonical_order = "per grammar",
552    logical_property_group = BackgroundRepeat,
553)]
554#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
555#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-repeat-x"))]
556#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
557#[derive(csskit_derives::NodeWithMetadata)]
558pub struct BackgroundRepeatXStyleValue<'a>;
559
560/// Represents the style value for `background-repeat-y` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-repeat-y).
561///
562/// The grammar is defined as:
563///
564/// ```text,ignore
565/// <repetition>#
566/// ```
567///
568/// https://drafts.csswg.org/css-backgrounds-4/#background-repeat-y
569#[syntax(" <repetition># ")]
570#[derive(
571	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
572)]
573#[declaration_metadata(
574    initial = "repeat",
575    applies_to = Elements,
576    animation_type = Discrete,
577    property_group = Backgrounds,
578    computed_value_type = AsSpecified,
579    canonical_order = "per grammar",
580    logical_property_group = BackgroundRepeat,
581)]
582#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
583#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-repeat-y"))]
584#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
585#[derive(csskit_derives::NodeWithMetadata)]
586pub struct BackgroundRepeatYStyleValue<'a>;
587
588/// Represents the style value for `background-size` as defined in [css-backgrounds-4](https://drafts.csswg.org/css-backgrounds-4/#background-size).
589///
590/// The background-size CSS property scales or stretches a background based on the size of the element (with the contain and cover keywords), a length, or percentage.
591///
592/// The grammar is defined as:
593///
594/// ```text,ignore
595/// <bg-size>#
596/// ```
597///
598/// https://drafts.csswg.org/css-backgrounds-4/#background-size
599#[syntax(" <bg-size># ")]
600#[derive(
601	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
602)]
603#[declaration_metadata(
604    initial = "auto",
605    applies_to = Elements,
606    animation_type = RepeatableList,
607    percentages = Unknown,
608    shorthand_group = Background,
609    property_group = Backgrounds,
610    computed_value_type = Unknown,
611    canonical_order = "per grammar",
612)]
613#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
614#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.background-size"))]
615#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
616#[derive(csskit_derives::NodeWithMetadata)]
617pub struct BackgroundSizeStyleValue<'a>;