1#![allow(warnings)]
5mod impls;
8use super::prelude::*;
9use impls::*;
10#[syntax(" auto || <ratio> ")]
22#[derive(
23 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
24)]
25#[declaration_metadata(
26 initial = "auto",
27 applies_to = Unknown,
28 animation_type = ByComputedValue,
29 property_group = Sizing,
30 computed_value_type = Unknown,
31 canonical_order = "per grammar",
32)]
33#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
34#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.aspect-ratio"))]
35#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
36#[derive(csskit_derives::NodeWithMetadata)]
37pub struct AspectRatioStyleValue<'a>;
38
39#[syntax(" auto | <box-size> ")]
51#[derive(
52 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
53)]
54#[declaration_metadata(
55 initial = "auto",
56 applies_to = Unknown,
57 animation_type = ByComputedValue,
58 percentages = ContainingBlock,
59 property_group = Sizing,
60 computed_value_type = AsSpecified,
61 canonical_order = "per grammar",
62 logical_property_group = Size,
63 box_portion = Size,
64)]
65#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
66#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.block-size"))]
67#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
68#[derive(csskit_derives::NodeWithMetadata)]
69pub struct BlockSizeStyleValue<'a>;
70
71#[syntax(" content-box | border-box ")]
83#[derive(
84 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
85)]
86#[declaration_metadata(
87 initial = "content-box",
88 applies_to = Unknown,
89 animation_type = Discrete,
90 property_group = Sizing,
91 computed_value_type = Unknown,
92 canonical_order = "per grammar",
93)]
94#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
95#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-sizing"))]
96#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
97#[derive(csskit_derives::NodeWithMetadata)]
98pub enum BoxSizingStyleValue<'a> {}
99
100#[syntax(" auto? [ none | <length [0,∞]> ] ")]
112#[derive(
113 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
114)]
115#[declaration_metadata(
116 initial = "none",
117 applies_to = Unknown,
118 animation_type = ByComputedValue,
119 property_group = Sizing,
120 computed_value_type = AsSpecified,
121 canonical_order = "per grammar",
122 logical_property_group = ContainIntrinsicSize,
123 box_side = BlockStart|BlockEnd,
124)]
125#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
126#[cfg_attr(
127 feature = "css_feature_data",
128 derive(ToCSSFeature),
129 css_feature("css.properties.contain-intrinsic-block-size")
130)]
131#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
132#[derive(csskit_derives::NodeWithMetadata)]
133pub struct ContainIntrinsicBlockSizeStyleValue<'a>;
134
135#[syntax(" auto? [ none | <length [0,∞]> ] ")]
147#[derive(
148 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
149)]
150#[declaration_metadata(
151 initial = "none",
152 applies_to = Unknown,
153 animation_type = ByComputedValue,
154 shorthands = ContainIntrinsicSize,
155 property_group = Sizing,
156 computed_value_type = AsSpecified,
157 canonical_order = "per grammar",
158 logical_property_group = ContainIntrinsicSize,
159)]
160#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
161#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.contain-intrinsic-height"))]
162#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
163#[derive(csskit_derives::NodeWithMetadata)]
164pub struct ContainIntrinsicHeightStyleValue<'a>;
165
166#[syntax(" auto? [ none | <length [0,∞]> ] ")]
178#[derive(
179 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
180)]
181#[declaration_metadata(
182 initial = "none",
183 applies_to = Unknown,
184 animation_type = ByComputedValue,
185 property_group = Sizing,
186 computed_value_type = AsSpecified,
187 canonical_order = "per grammar",
188 logical_property_group = ContainIntrinsicSize,
189 box_side = InlineStart|InlineEnd,
190)]
191#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
192#[cfg_attr(
193 feature = "css_feature_data",
194 derive(ToCSSFeature),
195 css_feature("css.properties.contain-intrinsic-inline-size")
196)]
197#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
198#[derive(csskit_derives::NodeWithMetadata)]
199pub struct ContainIntrinsicInlineSizeStyleValue<'a>;
200
201#[syntax(" [ auto? [ none | <length [0,∞]> ] ]{1,2} ")]
213#[derive(
214 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
215)]
216#[declaration_metadata(
217 initial = "see individual properties",
218 inherits = Unknown,
219 applies_to = Unknown,
220 animation_type = Unknown,
221 percentages = Unknown,
222 longhands = ContainIntrinsicWidth|ContainIntrinsicHeight,
223 property_group = Sizing,
224 computed_value_type = Unknown,
225 canonical_order = "per grammar",
226)]
227#[declaration_writes(repeat)]
228#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
229#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.contain-intrinsic-size"))]
230#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
231#[derive(csskit_derives::NodeWithMetadata)]
232pub struct ContainIntrinsicSizeStyleValue<'a>;
233
234#[syntax(" auto? [ none | <length [0,∞]> ] ")]
246#[derive(
247 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
248)]
249#[declaration_metadata(
250 initial = "none",
251 applies_to = Unknown,
252 animation_type = ByComputedValue,
253 shorthands = ContainIntrinsicSize,
254 property_group = Sizing,
255 computed_value_type = AsSpecified,
256 canonical_order = "per grammar",
257 logical_property_group = ContainIntrinsicSize,
258)]
259#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
260#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.contain-intrinsic-width"))]
261#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
262#[derive(csskit_derives::NodeWithMetadata)]
263pub struct ContainIntrinsicWidthStyleValue<'a>;
264
265#[syntax(" auto | content-width | content-height | content-block-size | content-inline-size ")]
277#[derive(
278 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
279)]
280#[declaration_metadata(
281 initial = "auto",
282 applies_to = Unknown,
283 animation_type = Discrete,
284 property_group = Sizing,
285 computed_value_type = AsSpecified,
286 canonical_order = "per grammar",
287)]
288#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
289#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.frame-sizing"))]
290#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
291#[derive(csskit_derives::NodeWithMetadata)]
292pub enum FrameSizingStyleValue<'a> {}
293
294#[syntax(" auto | <box-size> ")]
306#[derive(
307 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
308)]
309#[declaration_metadata(
310 initial = "auto",
311 applies_to = Unknown,
312 animation_type = ByComputedValue,
313 percentages = ContainingBlock,
314 property_group = Sizing,
315 computed_value_type = AsSpecified,
316 canonical_order = "per grammar",
317 logical_property_group = Size,
318 box_portion = Size,
319)]
320#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
321#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.height"))]
322#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
323#[derive(csskit_derives::NodeWithMetadata)]
324pub struct HeightStyleValue<'a>;
325
326#[syntax(" auto | <box-size> ")]
338#[derive(
339 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
340)]
341#[declaration_metadata(
342 initial = "auto",
343 applies_to = Unknown,
344 animation_type = ByComputedValue,
345 percentages = ContainingBlock,
346 property_group = Sizing,
347 computed_value_type = AsSpecified,
348 canonical_order = "per grammar",
349 logical_property_group = Size,
350 box_portion = Size,
351)]
352#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
353#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.inline-size"))]
354#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
355#[derive(csskit_derives::NodeWithMetadata)]
356pub struct InlineSizeStyleValue<'a>;
357
358#[syntax(" none | <box-size> ")]
370#[derive(
371 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
372)]
373#[declaration_metadata(
374 initial = "none",
375 applies_to = Unknown,
376 animation_type = ByComputedValue,
377 percentages = ContainingBlock,
378 property_group = Sizing,
379 computed_value_type = AsSpecified,
380 canonical_order = "per grammar",
381 logical_property_group = MaxSize,
382 box_side = BlockStart|BlockEnd,
383 box_portion = Size,
384)]
385#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
386#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.max-block-size"))]
387#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
388#[derive(csskit_derives::NodeWithMetadata)]
389pub struct MaxBlockSizeStyleValue<'a>;
390
391#[syntax(" none | <box-size> ")]
403#[derive(
404 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
405)]
406#[declaration_metadata(
407 initial = "none",
408 applies_to = Unknown,
409 animation_type = ByComputedValue,
410 percentages = ContainingBlock,
411 property_group = Sizing,
412 computed_value_type = AsSpecified,
413 canonical_order = "per grammar",
414 logical_property_group = MaxSize,
415 box_portion = Size,
416)]
417#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
418#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.max-height"))]
419#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
420#[derive(csskit_derives::NodeWithMetadata)]
421pub struct MaxHeightStyleValue<'a>;
422
423#[syntax(" none | <box-size> ")]
435#[derive(
436 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
437)]
438#[declaration_metadata(
439 initial = "none",
440 applies_to = Unknown,
441 animation_type = ByComputedValue,
442 percentages = ContainingBlock,
443 property_group = Sizing,
444 computed_value_type = AsSpecified,
445 canonical_order = "per grammar",
446 logical_property_group = MaxSize,
447 box_side = InlineStart|InlineEnd,
448 box_portion = Size,
449)]
450#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
451#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.max-inline-size"))]
452#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
453#[derive(csskit_derives::NodeWithMetadata)]
454pub struct MaxInlineSizeStyleValue<'a>;
455
456#[syntax(" <'max-width'> <'max-height'>? ")]
466#[derive(
467 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
468)]
469#[declaration_metadata(
470 initial = "none",
471 inherits = Unknown,
472 applies_to = Elements,
473 animation_type = Unknown,
474 percentages = Unknown,
475 property_group = Sizing,
476 computed_value_type = Unknown,
477 canonical_order = "per grammar",
478)]
479#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
480#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.max-size"))]
481#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
482#[derive(csskit_derives::NodeWithMetadata)]
483pub struct MaxSizeStyleValue<'a>;
484
485#[syntax(" none | <box-size> ")]
497#[derive(
498 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
499)]
500#[declaration_metadata(
501 initial = "none",
502 applies_to = Unknown,
503 animation_type = ByComputedValue,
504 percentages = ContainingBlock,
505 property_group = Sizing,
506 computed_value_type = AsSpecified,
507 canonical_order = "per grammar",
508 logical_property_group = MaxSize,
509 box_portion = Size,
510)]
511#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
512#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.max-width"))]
513#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
514#[derive(csskit_derives::NodeWithMetadata)]
515pub struct MaxWidthStyleValue<'a>;
516
517#[syntax(" auto | <box-size> ")]
529#[derive(
530 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
531)]
532#[declaration_metadata(
533 initial = "auto",
534 applies_to = Unknown,
535 animation_type = ByComputedValue,
536 percentages = ContainingBlock,
537 property_group = Sizing,
538 computed_value_type = AsSpecified,
539 canonical_order = "per grammar",
540 logical_property_group = MinSize,
541 box_side = BlockStart|BlockEnd,
542 box_portion = Size,
543)]
544#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
545#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.min-block-size"))]
546#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
547#[derive(csskit_derives::NodeWithMetadata)]
548pub struct MinBlockSizeStyleValue<'a>;
549
550#[syntax(" auto | <box-size> ")]
562#[derive(
563 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
564)]
565#[declaration_metadata(
566 initial = "auto",
567 applies_to = Unknown,
568 animation_type = ByComputedValue,
569 percentages = ContainingBlock,
570 property_group = Sizing,
571 computed_value_type = AsSpecified,
572 canonical_order = "per grammar",
573 logical_property_group = MinSize,
574 box_portion = Size,
575)]
576#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
577#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.min-height"))]
578#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
579#[derive(csskit_derives::NodeWithMetadata)]
580pub struct MinHeightStyleValue<'a>;
581
582#[syntax(" auto | <box-size> ")]
594#[derive(
595 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
596)]
597#[declaration_metadata(
598 initial = "auto",
599 applies_to = Unknown,
600 animation_type = ByComputedValue,
601 percentages = ContainingBlock,
602 property_group = Sizing,
603 computed_value_type = AsSpecified,
604 canonical_order = "per grammar",
605 logical_property_group = MinSize,
606 box_side = InlineStart|InlineEnd,
607 box_portion = Size,
608)]
609#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
610#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.min-inline-size"))]
611#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
612#[derive(csskit_derives::NodeWithMetadata)]
613pub struct MinInlineSizeStyleValue<'a>;
614
615#[syntax(" legacy | zero-if-scroll || zero-if-extrinsic ")]
625#[derive(
626 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
627)]
628#[declaration_metadata(
629 initial = "legacy",
630 applies_to = Unknown,
631 animation_type = Discrete,
632 property_group = Sizing,
633 computed_value_type = AsSpecified,
634 canonical_order = "per grammar",
635)]
636#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
637#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.min-intrinsic-sizing"))]
638#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
639#[derive(csskit_derives::NodeWithMetadata)]
640pub enum MinIntrinsicSizingStyleValue<'a> {}
641
642#[syntax(" <'min-width'> <'min-height'>? ")]
652#[derive(
653 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
654)]
655#[declaration_metadata(
656 initial = "auto",
657 inherits = Unknown,
658 applies_to = Elements,
659 animation_type = Unknown,
660 percentages = Unknown,
661 property_group = Sizing,
662 computed_value_type = Unknown,
663 canonical_order = "per grammar",
664)]
665#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
666#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.min-size"))]
667#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
668#[derive(csskit_derives::NodeWithMetadata)]
669pub struct MinSizeStyleValue<'a>;
670
671#[syntax(" auto | <box-size> ")]
683#[derive(
684 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
685)]
686#[declaration_metadata(
687 initial = "auto",
688 applies_to = Unknown,
689 animation_type = ByComputedValue,
690 percentages = ContainingBlock,
691 property_group = Sizing,
692 computed_value_type = AsSpecified,
693 canonical_order = "per grammar",
694 logical_property_group = MinSize,
695 box_portion = Size,
696)]
697#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
698#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.min-width"))]
699#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
700#[derive(csskit_derives::NodeWithMetadata)]
701pub struct MinWidthStyleValue<'a>;
702
703#[syntax(" <'width'> <'height'>? ")]
713#[derive(
714 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
715)]
716#[declaration_metadata(
717 initial = "auto",
718 inherits = Unknown,
719 applies_to = Elements,
720 animation_type = Unknown,
721 percentages = Unknown,
722 property_group = Sizing,
723 computed_value_type = Unknown,
724 canonical_order = "per grammar",
725)]
726#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
727#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.size"))]
728#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
729#[derive(csskit_derives::NodeWithMetadata)]
730pub struct SizeStyleValue<'a>;
731
732#[syntax(" auto | <box-size> ")]
744#[derive(
745 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
746)]
747#[declaration_metadata(
748 initial = "auto",
749 applies_to = Unknown,
750 animation_type = ByComputedValue,
751 percentages = ContainingBlock,
752 property_group = Sizing,
753 computed_value_type = AsSpecified,
754 canonical_order = "per grammar",
755 logical_property_group = Size,
756 box_portion = Size,
757)]
758#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
759#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.width"))]
760#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
761#[derive(csskit_derives::NodeWithMetadata)]
762pub struct WidthStyleValue<'a>;