1#![allow(warnings)]
5mod impls;
8use super::prelude::*;
9use impls::*;
10#[syntax(
27 " [ [ <'font-style'> || <font-variant-css2> || <'font-weight'> || <font-width-css3> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'># ] | <system-font-family-name> "
28)]
29#[derive(
30 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
31)]
32#[declaration_metadata(
33 initial = "see individual properties",
34 inherits,
35 applies_to = Elements|Text,
36 animation_type = Unknown,
37 percentages = Unknown,
38 longhands = FontFamily|FontSize|FontWidth|FontStyle|FontVariant|FontVariantAlternates|FontVariantCaps|FontVariantEastAsian|FontVariantEmoji|FontVariantLigatures|FontVariantNumeric|FontVariantPosition|FontWeight|LineHeight,
39 resets = FontFeatureSettings|FontKerning|FontLanguageOverride|FontOpticalSizing|FontSizeAdjust|FontVariationSettings,
40 property_group = Fonts,
41 computed_value_type = Unknown,
42 canonical_order = "per grammar",
43)]
44#[declaration_writes(
45 FontStyle?,
46 FontVariant?,
47 FontWeight?,
48 FontWidth?,
49 FontSize,
50 "/"
51 LineHeight?,
52 FontFamily
53)]
54#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
55#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font"))]
56#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
57#[derive(csskit_derives::NodeWithMetadata)]
58pub enum FontStyleValue<'a> {}
59
60#[syntax(" [ <font-family-name> | <generic-font-family> ]# ")]
72#[derive(
73 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
74)]
75#[declaration_metadata(
76 initial = "depends on user agent",
77 inherits,
78 applies_to = Elements|Text,
79 animation_type = Discrete,
80 shorthands = Font,
81 property_group = Fonts,
82 computed_value_type = Unknown,
83 canonical_order = "per grammar",
84)]
85#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
86#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-family"))]
87#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
88#[derive(csskit_derives::NodeWithMetadata)]
89pub struct FontFamilyStyleValue<'a>;
90
91#[syntax(" normal | <feature-tag-value># ")]
103#[derive(
104 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
105)]
106#[declaration_metadata(
107 initial = "normal",
108 inherits,
109 applies_to = Elements|Text,
110 animation_type = Discrete,
111 reset_by = Font,
112 property_group = Fonts,
113 computed_value_type = AsSpecified,
114 canonical_order = "per grammar",
115)]
116#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
117#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-feature-settings"))]
118#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
119#[derive(csskit_derives::NodeWithMetadata)]
120pub struct FontFeatureSettingsStyleValue<'a>;
121
122#[syntax(" auto | normal | none ")]
134#[derive(
135 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
136)]
137#[declaration_metadata(
138 initial = "auto",
139 inherits,
140 applies_to = Elements|Text,
141 animation_type = Discrete,
142 reset_by = Font,
143 property_group = Fonts,
144 computed_value_type = AsSpecified,
145 canonical_order = "per grammar",
146)]
147#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
148#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-kerning"))]
149#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
150#[derive(csskit_derives::NodeWithMetadata)]
151pub enum FontKerningStyleValue<'a> {}
152
153#[syntax(" normal | <string> ")]
165#[derive(
166 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
167)]
168#[declaration_metadata(
169 initial = "normal",
170 inherits,
171 applies_to = Elements|Text,
172 animation_type = Discrete,
173 reset_by = Font,
174 property_group = Fonts,
175 computed_value_type = Unknown,
176 canonical_order = "per grammar",
177)]
178#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
179#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-language-override"))]
180#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
181#[derive(csskit_derives::NodeWithMetadata)]
182pub struct FontLanguageOverrideStyleValue<'a>;
183
184#[syntax(" auto | none ")]
196#[derive(
197 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
198)]
199#[declaration_metadata(
200 initial = "auto",
201 inherits,
202 applies_to = Elements|Text,
203 animation_type = Discrete,
204 reset_by = Font,
205 property_group = Fonts,
206 computed_value_type = Unknown,
207 canonical_order = "per grammar",
208)]
209#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
210#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-optical-sizing"))]
211#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
212#[derive(csskit_derives::NodeWithMetadata)]
213pub enum FontOpticalSizingStyleValue<'a> {}
214
215#[syntax(" normal | light | dark | <palette-identifier> | <palette-mix()> ")]
227#[derive(
228 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
229)]
230#[declaration_metadata(
231 initial = "normal",
232 inherits,
233 applies_to = Elements|Text,
234 animation_type = ByComputedValue,
235 property_group = Fonts,
236 computed_value_type = Unknown,
237 canonical_order = "per grammar",
238)]
239#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
240#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-palette"))]
241#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
242#[derive(csskit_derives::NodeWithMetadata)]
243pub enum FontPaletteStyleValue<'a> {}
244
245#[syntax(" <absolute-size> | <relative-size> | <length-percentage [0,∞]> | math ")]
257#[derive(
258 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
259)]
260#[declaration_metadata(
261 initial = "medium",
262 inherits,
263 applies_to = Elements|Text,
264 animation_type = ByComputedValue,
265 percentages = Unknown,
266 shorthands = Font,
267 property_group = Fonts,
268 computed_value_type = AbsoluteLength,
269 canonical_order = "per grammar",
270)]
271#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
272#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-size"))]
273#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
274#[derive(csskit_derives::NodeWithMetadata)]
275pub enum FontSizeStyleValue<'a> {}
276
277#[syntax(" none | [ ex-height | cap-height | ch-width | ic-width | ic-height ]? [ from-font | <number [0,∞]> ] ")]
289#[derive(
290 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
291)]
292#[declaration_metadata(
293 initial = "none",
294 inherits,
295 applies_to = Elements|Text,
296 animation_type = Discrete,
297 reset_by = Font,
298 property_group = Fonts,
299 computed_value_type = Unknown,
300 canonical_order = "per grammar",
301)]
302#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
303#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-size-adjust"))]
304#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
305#[derive(csskit_derives::NodeWithMetadata)]
306pub enum FontSizeAdjustStyleValue<'a> {}
307
308#[syntax(" normal | italic | left | right | oblique <angle [-90deg,90deg]>? ")]
320#[derive(
321 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
322)]
323#[declaration_metadata(
324 initial = "normal",
325 inherits,
326 applies_to = Elements|Text,
327 animation_type = ByComputedValue,
328 shorthands = Font,
329 property_group = Fonts,
330 computed_value_type = Unknown,
331 canonical_order = "per grammar",
332)]
333#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
334#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-style"))]
335#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
336#[derive(csskit_derives::NodeWithMetadata)]
337pub enum FontStyleStyleValue<'a> {}
338
339#[syntax(" none | [ weight || style || small-caps || position] ")]
351#[derive(
352 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
353)]
354#[declaration_metadata(
355 initial = "weight style small-caps position",
356 inherits,
357 applies_to = Elements|Text,
358 animation_type = Discrete,
359 longhands = FontSynthesisWeight|FontSynthesisStyle|FontSynthesisSmallCaps|FontSynthesisPosition,
360 property_group = Fonts,
361 computed_value_type = Unknown,
362 canonical_order = "per grammar",
363)]
364#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
365#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-synthesis"))]
366#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
367#[derive(csskit_derives::NodeWithMetadata)]
368pub struct FontSynthesisStyleValue<'a>;
369
370#[syntax(" auto | none ")]
382#[derive(
383 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
384)]
385#[declaration_metadata(
386 initial = "auto",
387 inherits,
388 applies_to = Elements|Text,
389 animation_type = Discrete,
390 shorthands = FontSynthesis,
391 property_group = Fonts,
392 computed_value_type = Unknown,
393 canonical_order = "per grammar",
394)]
395#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
396#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-synthesis-position"))]
397#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
398#[derive(csskit_derives::NodeWithMetadata)]
399pub enum FontSynthesisPositionStyleValue<'a> {}
400
401#[syntax(" auto | none ")]
413#[derive(
414 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
415)]
416#[declaration_metadata(
417 initial = "auto",
418 inherits,
419 applies_to = Elements|Text,
420 animation_type = Discrete,
421 shorthands = FontSynthesis,
422 property_group = Fonts,
423 computed_value_type = Unknown,
424 canonical_order = "per grammar",
425)]
426#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
427#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-synthesis-small-caps"))]
428#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
429#[derive(csskit_derives::NodeWithMetadata)]
430pub enum FontSynthesisSmallCapsStyleValue<'a> {}
431
432#[syntax(" auto | none | oblique-only ")]
444#[derive(
445 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
446)]
447#[declaration_metadata(
448 initial = "auto",
449 inherits,
450 applies_to = Elements|Text,
451 animation_type = Discrete,
452 shorthands = FontSynthesis,
453 property_group = Fonts,
454 computed_value_type = Unknown,
455 canonical_order = "per grammar",
456)]
457#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
458#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-synthesis-style"))]
459#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
460#[derive(csskit_derives::NodeWithMetadata)]
461pub enum FontSynthesisStyleStyleValue<'a> {}
462
463#[syntax(" auto | none ")]
475#[derive(
476 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
477)]
478#[declaration_metadata(
479 initial = "auto",
480 inherits,
481 applies_to = Elements|Text,
482 animation_type = Discrete,
483 shorthands = FontSynthesis,
484 property_group = Fonts,
485 computed_value_type = Unknown,
486 canonical_order = "per grammar",
487)]
488#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
489#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-synthesis-weight"))]
490#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
491#[derive(csskit_derives::NodeWithMetadata)]
492pub enum FontSynthesisWeightStyleValue<'a> {}
493
494#[syntax(
506 " normal | none | [ [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ] || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || [ stylistic(<font-feature-value-name>) || historical-forms || styleset(<font-feature-value-name>#) || character-variant(<font-feature-value-name>#) || swash(<font-feature-value-name>) || ornaments(<font-feature-value-name>) || annotation(<font-feature-value-name>) ] || [ <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero ] || [ <east-asian-variant-values> || <east-asian-width-values> || ruby ] || [ sub | super ] || [ text | emoji | unicode ] ] "
507)]
508#[derive(
509 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
510)]
511#[declaration_metadata(
512 initial = "normal",
513 inherits,
514 applies_to = Elements|Text,
515 animation_type = Discrete,
516 longhands = FontVariantAlternates|FontVariantCaps|FontVariantEastAsian|FontVariantEmoji|FontVariantLigatures|FontVariantNumeric|FontVariantPosition,
517 shorthands = Font,
518 property_group = Fonts,
519 computed_value_type = AsSpecified,
520 canonical_order = "per grammar",
521)]
522#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
523#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant"))]
524#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
525#[derive(csskit_derives::NodeWithMetadata)]
526pub enum FontVariantStyleValue<'a> {}
527
528#[syntax(
546 " normal | [ stylistic(<font-feature-value-name>) || historical-forms || styleset(<font-feature-value-name>#) || character-variant(<font-feature-value-name>#) || swash(<font-feature-value-name>) || ornaments(<font-feature-value-name>) || annotation(<font-feature-value-name>) ] "
547)]
548#[derive(
549 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
550)]
551#[declaration_metadata(
552 initial = "normal",
553 inherits,
554 applies_to = Elements|Text,
555 animation_type = Discrete,
556 shorthands = FontVariant|Font,
557 property_group = Fonts,
558 computed_value_type = AsSpecified,
559 canonical_order = "per grammar",
560)]
561#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
562#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-alternates"))]
563#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
564#[derive(csskit_derives::NodeWithMetadata)]
565pub struct FontVariantAlternatesStyleValue<'a>;
566
567#[syntax(" normal | small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ")]
579#[derive(
580 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
581)]
582#[declaration_metadata(
583 initial = "normal",
584 inherits,
585 applies_to = Elements|Text,
586 animation_type = Discrete,
587 shorthands = FontVariant|Font,
588 property_group = Fonts,
589 computed_value_type = AsSpecified,
590 canonical_order = "per grammar",
591)]
592#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
593#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-caps"))]
594#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
595#[derive(csskit_derives::NodeWithMetadata)]
596pub enum FontVariantCapsStyleValue<'a> {}
597
598#[syntax(" normal | [ <east-asian-variant-values> || <east-asian-width-values> || ruby ] ")]
610#[derive(
611 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
612)]
613#[declaration_metadata(
614 initial = "normal",
615 inherits,
616 applies_to = Elements|Text,
617 animation_type = Discrete,
618 shorthands = FontVariant|Font,
619 property_group = Fonts,
620 computed_value_type = AsSpecified,
621 canonical_order = "per grammar",
622)]
623#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
624#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-east-asian"))]
625#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
626#[derive(csskit_derives::NodeWithMetadata)]
627pub struct FontVariantEastAsianStyleValue<'a>;
628
629#[syntax(" normal | text | emoji | unicode ")]
641#[derive(
642 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
643)]
644#[declaration_metadata(
645 initial = "normal",
646 inherits,
647 applies_to = Elements|Text,
648 animation_type = Discrete,
649 shorthands = FontVariant|Font,
650 property_group = Fonts,
651 computed_value_type = Unknown,
652 canonical_order = "per grammar",
653)]
654#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
655#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-emoji"))]
656#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
657#[derive(csskit_derives::NodeWithMetadata)]
658pub enum FontVariantEmojiStyleValue<'a> {}
659
660#[syntax(
672 " normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ] "
673)]
674#[derive(
675 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
676)]
677#[declaration_metadata(
678 initial = "normal",
679 inherits,
680 applies_to = Elements|Text,
681 animation_type = Discrete,
682 shorthands = FontVariant|Font,
683 property_group = Fonts,
684 computed_value_type = AsSpecified,
685 canonical_order = "per grammar",
686)]
687#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
688#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-ligatures"))]
689#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
690#[derive(csskit_derives::NodeWithMetadata)]
691pub enum FontVariantLigaturesStyleValue<'a> {}
692
693#[syntax(
705 " normal | [ <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero ] "
706)]
707#[derive(
708 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
709)]
710#[declaration_metadata(
711 initial = "normal",
712 inherits,
713 applies_to = Elements|Text,
714 animation_type = Discrete,
715 shorthands = FontVariant|Font,
716 property_group = Fonts,
717 computed_value_type = AsSpecified,
718 canonical_order = "per grammar",
719)]
720#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
721#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-numeric"))]
722#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
723#[derive(csskit_derives::NodeWithMetadata)]
724pub struct FontVariantNumericStyleValue<'a>;
725
726#[syntax(" normal | sub | super ")]
738#[derive(
739 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
740)]
741#[declaration_metadata(
742 initial = "normal",
743 inherits,
744 applies_to = Elements|Text,
745 animation_type = Discrete,
746 shorthands = FontVariant|Font,
747 property_group = Fonts,
748 computed_value_type = AsSpecified,
749 canonical_order = "per grammar",
750)]
751#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
752#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variant-position"))]
753#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
754#[derive(csskit_derives::NodeWithMetadata)]
755pub enum FontVariantPositionStyleValue<'a> {}
756
757#[syntax(" normal | [ <opentype-tag> <number> ]# ")]
769#[derive(
770 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
771)]
772#[declaration_metadata(
773 initial = "normal",
774 inherits,
775 applies_to = Elements|Text,
776 animation_type = Unknown,
777 reset_by = Font,
778 property_group = Fonts,
779 computed_value_type = Unknown,
780 canonical_order = "per grammar",
781)]
782#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
783#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-variation-settings"))]
784#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
785#[derive(csskit_derives::NodeWithMetadata)]
786pub struct FontVariationSettingsStyleValue<'a>;
787
788#[syntax(" <font-weight-absolute> | bolder | lighter ")]
800#[derive(
801 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
802)]
803#[declaration_metadata(
804 initial = "normal",
805 inherits,
806 applies_to = Elements|Text,
807 animation_type = ByComputedValue,
808 shorthands = Font,
809 property_group = Fonts,
810 computed_value_type = Unknown,
811 canonical_order = "per grammar",
812)]
813#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
814#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-weight"))]
815#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
816#[derive(csskit_derives::NodeWithMetadata)]
817pub enum FontWeightStyleValue<'a> {}
818
819#[syntax(
831 " normal | <percentage [0,∞]> | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded "
832)]
833#[derive(
834 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
835)]
836#[declaration_metadata(
837 initial = "normal",
838 inherits,
839 applies_to = Elements|Text,
840 animation_type = ByComputedValue,
841 percentages = None,
842 shorthands = Font,
843 property_group = Fonts,
844 computed_value_type = Unknown,
845 canonical_order = "per grammar",
846)]
847#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
848#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.font-width"))]
849#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
850#[derive(csskit_derives::NodeWithMetadata)]
851pub enum FontWidthStyleValue<'a> {}