#[repr(C)]pub enum CssPropertyType {
Show 152 variants
CaretColor = 0,
CaretAnimationDuration = 1,
CaretWidth = 2,
SelectionBackgroundColor = 3,
SelectionColor = 4,
SelectionRadius = 5,
TextColor = 6,
FontSize = 7,
FontFamily = 8,
FontWeight = 9,
FontStyle = 10,
TextAlign = 11,
TextJustify = 12,
VerticalAlign = 13,
LetterSpacing = 14,
TextIndent = 15,
InitialLetter = 16,
LineClamp = 17,
HangingPunctuation = 18,
TextCombineUpright = 19,
ExclusionMargin = 20,
HyphenationLanguage = 21,
LineHeight = 22,
WordSpacing = 23,
TabSize = 24,
WhiteSpace = 25,
Hyphens = 26,
Direction = 27,
UserSelect = 28,
TextDecoration = 29,
Cursor = 30,
Display = 31,
Float = 32,
BoxSizing = 33,
Width = 34,
Height = 35,
MinWidth = 36,
MinHeight = 37,
MaxWidth = 38,
MaxHeight = 39,
Position = 40,
Top = 41,
Right = 42,
Left = 43,
Bottom = 44,
ZIndex = 45,
FlexWrap = 46,
FlexDirection = 47,
FlexGrow = 48,
FlexShrink = 49,
FlexBasis = 50,
JustifyContent = 51,
AlignItems = 52,
AlignContent = 53,
ColumnGap = 54,
RowGap = 55,
GridTemplateColumns = 56,
GridTemplateRows = 57,
GridAutoColumns = 58,
GridAutoRows = 59,
GridColumn = 60,
GridRow = 61,
GridTemplateAreas = 62,
GridAutoFlow = 63,
JustifySelf = 64,
JustifyItems = 65,
Gap = 66,
GridGap = 67,
AlignSelf = 68,
Font = 69,
WritingMode = 70,
Clear = 71,
BackgroundContent = 72,
BackgroundPosition = 73,
BackgroundSize = 74,
BackgroundRepeat = 75,
OverflowX = 76,
OverflowY = 77,
PaddingTop = 78,
PaddingLeft = 79,
PaddingRight = 80,
PaddingBottom = 81,
PaddingInlineStart = 82,
PaddingInlineEnd = 83,
MarginTop = 84,
MarginLeft = 85,
MarginRight = 86,
MarginBottom = 87,
BorderTopLeftRadius = 88,
BorderTopRightRadius = 89,
BorderBottomLeftRadius = 90,
BorderBottomRightRadius = 91,
BorderTopColor = 92,
BorderRightColor = 93,
BorderLeftColor = 94,
BorderBottomColor = 95,
BorderTopStyle = 96,
BorderRightStyle = 97,
BorderLeftStyle = 98,
BorderBottomStyle = 99,
BorderTopWidth = 100,
BorderRightWidth = 101,
BorderLeftWidth = 102,
BorderBottomWidth = 103,
BoxShadowLeft = 104,
BoxShadowRight = 105,
BoxShadowTop = 106,
BoxShadowBottom = 107,
Scrollbar = 108,
ScrollbarWidth = 109,
ScrollbarColor = 110,
Opacity = 111,
Visibility = 112,
Transform = 113,
TransformOrigin = 114,
PerspectiveOrigin = 115,
BackfaceVisibility = 116,
MixBlendMode = 117,
Filter = 118,
BackdropFilter = 119,
TextShadow = 120,
BreakBefore = 121,
BreakAfter = 122,
BreakInside = 123,
Orphans = 124,
Widows = 125,
BoxDecorationBreak = 126,
ColumnCount = 127,
ColumnWidth = 128,
ColumnSpan = 129,
ColumnFill = 130,
ColumnRuleWidth = 131,
ColumnRuleStyle = 132,
ColumnRuleColor = 133,
FlowInto = 134,
FlowFrom = 135,
ShapeOutside = 136,
ShapeInside = 137,
ClipPath = 138,
ShapeMargin = 139,
ShapeImageThreshold = 140,
TableLayout = 141,
BorderCollapse = 142,
BorderSpacing = 143,
CaptionSide = 144,
EmptyCells = 145,
Content = 146,
CounterReset = 147,
CounterIncrement = 148,
ListStyleType = 149,
ListStylePosition = 150,
StringSet = 151,
}Expand description
Represents a CSS key (for example "border-radius" => BorderRadius).
You can also derive this key from a CssProperty by calling CssProperty::get_type().
Variants§
CaretColor = 0
CaretAnimationDuration = 1
CaretWidth = 2
SelectionBackgroundColor = 3
SelectionColor = 4
SelectionRadius = 5
TextColor = 6
FontSize = 7
FontFamily = 8
FontWeight = 9
FontStyle = 10
TextAlign = 11
TextJustify = 12
VerticalAlign = 13
LetterSpacing = 14
TextIndent = 15
InitialLetter = 16
LineClamp = 17
HangingPunctuation = 18
TextCombineUpright = 19
ExclusionMargin = 20
HyphenationLanguage = 21
LineHeight = 22
WordSpacing = 23
TabSize = 24
WhiteSpace = 25
Hyphens = 26
Direction = 27
UserSelect = 28
TextDecoration = 29
Cursor = 30
Display = 31
Float = 32
BoxSizing = 33
Width = 34
Height = 35
MinWidth = 36
MinHeight = 37
MaxWidth = 38
MaxHeight = 39
Position = 40
Top = 41
Right = 42
Left = 43
Bottom = 44
ZIndex = 45
FlexWrap = 46
FlexDirection = 47
FlexGrow = 48
FlexShrink = 49
FlexBasis = 50
JustifyContent = 51
AlignItems = 52
AlignContent = 53
ColumnGap = 54
RowGap = 55
GridTemplateColumns = 56
GridTemplateRows = 57
GridAutoColumns = 58
GridAutoRows = 59
GridColumn = 60
GridRow = 61
GridTemplateAreas = 62
GridAutoFlow = 63
JustifySelf = 64
JustifyItems = 65
Gap = 66
GridGap = 67
AlignSelf = 68
Font = 69
WritingMode = 70
Clear = 71
BackgroundContent = 72
BackgroundPosition = 73
BackgroundSize = 74
BackgroundRepeat = 75
OverflowX = 76
OverflowY = 77
PaddingTop = 78
PaddingLeft = 79
PaddingRight = 80
PaddingBottom = 81
PaddingInlineStart = 82
PaddingInlineEnd = 83
MarginTop = 84
MarginLeft = 85
MarginRight = 86
MarginBottom = 87
BorderTopLeftRadius = 88
BorderTopRightRadius = 89
BorderBottomLeftRadius = 90
BorderBottomRightRadius = 91
BorderTopColor = 92
BorderRightColor = 93
BorderLeftColor = 94
BorderBottomColor = 95
BorderTopStyle = 96
BorderRightStyle = 97
BorderLeftStyle = 98
BorderBottomStyle = 99
BorderTopWidth = 100
BorderRightWidth = 101
BorderLeftWidth = 102
BorderBottomWidth = 103
BoxShadowLeft = 104
BoxShadowRight = 105
BoxShadowTop = 106
BoxShadowBottom = 107
Scrollbar = 108
ScrollbarWidth = 109
ScrollbarColor = 110
Opacity = 111
Visibility = 112
Transform = 113
TransformOrigin = 114
PerspectiveOrigin = 115
BackfaceVisibility = 116
MixBlendMode = 117
Filter = 118
BackdropFilter = 119
TextShadow = 120
BreakBefore = 121
BreakAfter = 122
BreakInside = 123
Orphans = 124
Widows = 125
BoxDecorationBreak = 126
ColumnCount = 127
ColumnWidth = 128
ColumnSpan = 129
ColumnFill = 130
ColumnRuleWidth = 131
ColumnRuleStyle = 132
ColumnRuleColor = 133
FlowInto = 134
FlowFrom = 135
ShapeOutside = 136
ShapeInside = 137
ClipPath = 138
ShapeMargin = 139
ShapeImageThreshold = 140
TableLayout = 141
BorderCollapse = 142
BorderSpacing = 143
CaptionSide = 144
EmptyCells = 145
Content = 146
CounterReset = 147
CounterIncrement = 148
ListStyleType = 149
ListStylePosition = 150
StringSet = 151
Implementations§
Source§impl CssPropertyType
impl CssPropertyType
Sourcepub fn from_str(input: &str, map: &CssKeyMap) -> Option<Self>
pub fn from_str(input: &str, map: &CssKeyMap) -> Option<Self>
Parses a CSS key, such as width from a string:
§Example
let map = get_css_key_map();
assert_eq!(
Some(CssPropertyType::Width),
CssPropertyType::from_str("width", &map)
);
assert_eq!(
Some(CssPropertyType::JustifyContent),
CssPropertyType::from_str("justify-content", &map)
);
assert_eq!(None, CssPropertyType::from_str("asdfasdfasdf", &map));Sourcepub fn to_str(&self) -> &'static str
pub fn to_str(&self) -> &'static str
Returns the original string that was used to construct this CssPropertyType.
Sourcepub fn is_inheritable(&self) -> bool
pub fn is_inheritable(&self) -> bool
Returns whether this property will be inherited during cascading Returns whether this CSS property is inherited by default according to CSS specifications.
Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/Guides/Cascade/Inheritance
pub fn get_category(&self) -> CssPropertyCategory
Sourcepub fn can_trigger_relayout(&self) -> bool
pub fn can_trigger_relayout(&self) -> bool
Returns whether this property can trigger a re-layout (important for incremental layout and caching layouted DOMs).
Sourcepub fn is_gpu_only_property(&self) -> bool
pub fn is_gpu_only_property(&self) -> bool
Returns whether the property is a GPU property (currently only opacity and transforms)
Sourcepub fn relayout_scope(&self, node_is_ifc_member: bool) -> RelayoutScope
pub fn relayout_scope(&self, node_is_ifc_member: bool) -> RelayoutScope
Context-dependent relayout scope for a CSS property change.
This is a more granular replacement for can_trigger_relayout().
Instead of returning a flat bool, it classifies the property change
into one of four impact levels (see RelayoutScope).
Inspired by Taffy’s binary dirty flag, extended with CSS-specific knowledge: font/text changes only affect IFC, sizing changes don’t require full subtree relayout, and paint-only changes skip layout entirely.
node_is_ifc_member: whether this node participates in an IFC
(has inline formatting context membership). When true, font/text
property changes trigger IFC-only relayout instead of being ignored.
Trait Implementations§
Source§impl Clone for CssPropertyType
impl Clone for CssPropertyType
Source§fn clone(&self) -> CssPropertyType
fn clone(&self) -> CssPropertyType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more