// This file specifies all the CSS properties we support and the necessary // information for our code generation. The various supported arguments // are described below with example usage // - alias_for=other-property // Properties specifying alias_for should be virtually identical to the // properties they alias. Minor parsing differences are allowed as long as // the CSSValues created are of the same format of the aliased property. // - runtime_flag=CSSGridLayout // The flag on RuntimeEnabledFeatures conditionally enables the property. // This doesn't currently work with alias_for. // - descriptor_only // These are actually descriptors and not CSS properties. Properties with // the same name as a descriptor do not get this flag. // - longhands=property;other-property // The property is a shorthand for several other properties. // Flags which go into CSSOMTypes: // - typedom_types=[Type|OtherType] // The property can take types specified in typedom_types for CSS Typed OM. // Keyword does not need to be specified as every property can take keywords. // - keywords=[keyword1|keyword2] // The property can take these keywords. // - supports_multiple // The property supports a list of values. // - supports_percentage // The property supports percentage types. // Flags which go into CSSPropertyMetadata: // - interpolable // The interpolable flag indicates whether a property can be animated smoothly. // If this flag is set, the property should also be added to the switch // statements in AnimatedStyleBuilder, CSSPropertyEquality and // CSSAnimatableValueFactory. // - inherited // The property will inherit by default if no value is specified, typically // mentioned in specifications as "Inherited: yes" // The remaining arguments are used for the StyleBuilder and allow us to // succinctly describe how to apply properties. When default handlers are not // sufficient, we should prefer to use converter, and failing that define // custom property handlers in StyleBuilderCustom.cpp. We only should use // StyleBuilderFunctions.cpp.tmpl to define handlers when there are multiple // properties requiring the same handling, but converter doesn't suffice. // - font // The default property handlers call into the FontBuilder instead of setting // values directly onto the ComputedStyle // - svg // The default property handlers access the SVGComputedStyle // - name_for_methods=BlendMode // Tweaks how we choose defaults for getter, setter, initial and type_name. // For example, setting this to BlendMode will make us use a setter of setBlendMode // - initial // The initial value accessor on the ComputedStyle, defaults to e.g. initialBoxShadow // - getter // The ComputedStyle getter, defaults to e.g. borderBottomLeft // - setter // The ComputedStyle setter, defaults to e.g. setBorderBottomLeft // - type_name // The computed type for the property. Only required for the default value // application, defaults to e.g. EDisplay // - converter=convertRadius // The StyleBuilder will call the specified function on StyleBuilderConverter // to convert a CSSValue to an appropriate platform value // - custom_initial // - custom_inherit // - custom_value // - custom_all // Handlers of the given types will be declared but not defined. Setting // custom_all is equivalent to setting the other three flags // - use_handlers_for=CSSPropertyTransform // Use handlers for the specified property instead of defining new ones // - builder_skip // Ignore this property in the StyleBuilder // - direction_aware // This property resolves to a different property based on the current direction // and writing mode. // Properties with StyleBuilder handling // High Priority and all other font properties. // Other properties can depend upon high priority properties (e.g. font-size / ems) color interpolable, inherited, custom_all direction inherited, custom_value font-family inherited, font, type_name=FontDescription::FamilyDescription, name_for_methods=FamilyDescription, converter=convertFontFamily font-kerning inherited, font, type_name=FontDescription::Kerning, name_for_methods=Kerning font-size interpolable, inherited, font, name_for_methods=Size, getter=getSize, converter=convertFontSize font-size-adjust runtime_flag=CSSFontSizeAdjust, interpolable, inherited, font, name_for_methods=SizeAdjust, converter=convertFontSizeAdjust font-stretch inherited, font, type_name=FontStretch, name_for_methods=Stretch font-style inherited, font, type_name=FontStyle, name_for_methods=Style font-variant-ligatures inherited, font, type_name=VariantLigatures, name_for_methods=VariantLigatures, converter=convertFontVariantLigatures font-variant-caps inherited, font, name_for_methods=VariantCaps, converter=convertFontVariantCaps font-variant-numeric inherited, font, name_for_methods=VariantNumeric, converter=convertFontVariantNumeric font-weight interpolable, inherited, font, type_name=FontWeight, name_for_methods=Weight, converter=convertFontWeight font-feature-settings inherited, font, name_for_methods=FeatureSettings, converter=convertFontFeatureSettings -webkit-font-smoothing inherited, font, type_name=FontSmoothingMode -webkit-locale inherited, font, custom_value text-orientation inherited, custom_value, type_name=TextOrientation -webkit-text-orientation inherited, custom_value, type_name=TextOrientation writing-mode inherited, custom_value, type_name=WritingMode -webkit-writing-mode inherited, custom_value, type_name=WritingMode text-rendering inherited, font, type_name=TextRenderingMode zoom custom_all align-content initial=initialContentAlignment, converter=convertContentAlignmentData align-items initial=initialSelfAlignment, converter=convertSelfOrDefaultAlignmentData alignment-baseline svg align-self initial=initialSelfAlignment, converter=convertSelfOrDefaultAlignmentData animation-delay custom_all animation-direction custom_all animation-duration custom_all animation-fill-mode custom_all animation-iteration-count custom_all animation-name custom_all animation-play-state custom_all animation-timing-function custom_all backdrop-filter interpolable, converter=convertFilterOperations, runtime_flag=CSSBackdropFilter backface-visibility background-attachment custom_all background-blend-mode custom_all background-clip custom_all background-color interpolable, custom_all background-image interpolable, custom_all background-origin custom_all background-position-x interpolable, custom_all background-position-y interpolable, custom_all background-repeat-x custom_all background-repeat-y custom_all background-size interpolable, custom_all baseline-shift interpolable, svg, custom_inherit, custom_value border-bottom-color interpolable, custom_all border-bottom-left-radius interpolable, initial=initialBorderRadius, converter=convertRadius border-bottom-right-radius interpolable, initial=initialBorderRadius, converter=convertRadius border-bottom-style type_name=EBorderStyle, initial=initialBorderStyle border-bottom-width interpolable, initial=initialBorderWidth, converter=convertLineWidth border-collapse inherited border-image-outset interpolable, custom_all border-image-repeat custom_all border-image-slice interpolable, custom_all border-image-source interpolable, custom_value border-image-width interpolable, custom_all border-left-color interpolable, custom_all border-left-style type_name=EBorderStyle, initial=initialBorderStyle border-left-width interpolable, initial=initialBorderWidth, converter=convertLineWidth border-right-color interpolable, custom_all border-right-style type_name=EBorderStyle, initial=initialBorderStyle border-right-width interpolable, initial=initialBorderWidth, converter=convertLineWidth border-top-color interpolable, custom_all border-top-left-radius interpolable, initial=initialBorderRadius, converter=convertRadius border-top-right-radius interpolable, initial=initialBorderRadius, converter=convertRadius border-top-style type_name=EBorderStyle, initial=initialBorderStyle border-top-width interpolable, initial=initialBorderWidth, converter=convertLineWidth, typedom_types=[Length], keywords=[thin|medium|thick], supports_percentage bottom interpolable, initial=initialOffset, converter=convertLengthOrAuto box-shadow interpolable, converter=convertShadow box-sizing break-after type_name=EBreak break-before type_name=EBreak break-inside type_name=EBreak buffered-rendering svg caption-side inherited clear clip interpolable, converter=convertClip, custom_all clip-path svg, name_for_methods=ClipperResource, converter=convertFragmentIdentifier clip-rule inherited, svg, type_name=WindRule color-interpolation inherited, svg color-interpolation-filters inherited, svg, type_name=EColorInterpolation color-rendering inherited, svg column-fill type_name=ColumnFill contain runtime_flag=CSSContainment, converter=convertFlags content custom_all counter-increment custom_all counter-reset custom_all cursor inherited, custom_all cx interpolable, svg, converter=convertLength cy interpolable, svg, converter=convertLength d runtime_flag=CSSPropertyD, interpolable, svg, converter=convertPathOrNone display dominant-baseline inherited, svg empty-cells inherited, type_name=EEmptyCells fill interpolable, inherited, svg, setter=setFillPaint, custom_all fill-opacity interpolable, inherited, svg, converter=convertNumberOrPercentage fill-rule inherited, svg, type_name=WindRule filter interpolable, converter=convertFilterOperations flex-basis interpolable, converter=convertLengthOrAuto flex-direction flex-grow interpolable, type_name=float flex-shrink interpolable, type_name=float flex-wrap float type_name=EFloat, name_for_methods=Floating flood-color interpolable, svg, converter=convertColor flood-opacity interpolable, svg, converter=convertNumberOrPercentage grid-auto-columns runtime_flag=CSSGridLayout, converter=convertGridTrackSize grid-auto-flow runtime_flag=CSSGridLayout, converter=convertGridAutoFlow, type_name=GridAutoFlow grid-auto-rows runtime_flag=CSSGridLayout, converter=convertGridTrackSize grid-column-end runtime_flag=CSSGridLayout, converter=convertGridPosition grid-column-gap runtime_flag=CSSGridLayout, converter=convertLength grid-column-start runtime_flag=CSSGridLayout, converter=convertGridPosition grid-row-end runtime_flag=CSSGridLayout, converter=convertGridPosition grid-row-gap runtime_flag=CSSGridLayout, converter=convertLength grid-row-start runtime_flag=CSSGridLayout, converter=convertGridPosition grid-template-areas runtime_flag=CSSGridLayout, custom_all grid-template-columns runtime_flag=CSSGridLayout, custom_all grid-template-rows runtime_flag=CSSGridLayout, custom_all height interpolable, initial=initialSize, converter=convertLengthSizing hyphens runtime_flag=CSSHyphens, inherited, type_name=Hyphens image-rendering inherited image-orientation runtime_flag=ImageOrientation, inherited, name_for_methods=RespectImageOrientation, converter=convertImageOrientation isolation justify-content initial=initialContentAlignment, converter=convertContentAlignmentData justify-items runtime_flag=CSSGridLayout, initial=initialSelfAlignment, converter=convertSelfOrDefaultAlignmentData justify-self runtime_flag=CSSGridLayout, initial=initialSelfAlignment, converter=convertSelfOrDefaultAlignmentData left interpolable, initial=initialOffset, converter=convertLengthOrAuto letter-spacing interpolable, inherited, initial=initialLetterWordSpacing, converter=convertSpacing lighting-color interpolable, svg, converter=convertColor line-height interpolable, inherited, getter=specifiedLineHeight, converter=convertLineHeight list-style-image interpolable, inherited, custom_value list-style-position inherited list-style-type inherited margin-bottom interpolable, initial=initialMargin, converter=convertQuirkyLength margin-left interpolable, initial=initialMargin, converter=convertQuirkyLength margin-right interpolable, initial=initialMargin, converter=convertQuirkyLength margin-top interpolable, initial=initialMargin, converter=convertQuirkyLength marker-end inherited, svg, name_for_methods=MarkerEndResource, converter=convertFragmentIdentifier marker-mid inherited, svg, name_for_methods=MarkerMidResource, converter=convertFragmentIdentifier marker-start inherited, svg, name_for_methods=MarkerStartResource, converter=convertFragmentIdentifier mask svg, name_for_methods=MaskerResource, converter=convertFragmentIdentifier mask-source-type runtime_flag=CSSMaskSourceType, custom_all mask-type svg max-height interpolable, initial=initialMaxSize, converter=convertLengthMaxSizing max-width interpolable, initial=initialMaxSize, converter=convertLengthMaxSizing min-height interpolable, initial=initialMinSize, converter=convertLengthSizing min-width interpolable, initial=initialMinSize, converter=convertLengthSizing mix-blend-mode type_name=blink::WebBlendMode, name_for_methods=BlendMode motion-offset interpolable, converter=convertLength motion-path converter=convertPathOrNone motion-rotation interpolable, converter=convertMotionRotation object-fit type_name=ObjectFit object-position interpolable, converter=convertPosition opacity interpolable, type_name=float order type_name=int orphans interpolable, inherited, type_name=short outline-color interpolable, custom_all outline-offset interpolable, converter=convertComputedLength outline-style custom_all outline-width interpolable, converter=convertLineWidth overflow-wrap inherited overflow-x type_name=EOverflow overflow-y type_name=EOverflow padding-bottom interpolable, initial=initialPadding, converter=convertLength padding-left interpolable, initial=initialPadding, converter=convertLength padding-right interpolable, initial=initialPadding, converter=convertLength padding-top interpolable, initial=initialPadding, converter=convertLength paint-order inherited, svg, converter=convertPaintOrder perspective interpolable, converter=convertPerspective perspective-origin interpolable, converter=convertPosition pointer-events inherited position custom_inherit quotes inherited, converter=convertQuotes resize custom_value right interpolable, initial=initialOffset, converter=convertLengthOrAuto r interpolable, svg, converter=convertLength rx interpolable, svg, converter=convertLengthOrAuto ry interpolable, svg, converter=convertLengthOrAuto scroll-behavior runtime_flag=CSSOMSmoothScroll, type_name=ScrollBehavior scroll-snap-type runtime_flag=CSSScrollSnapPoints, type_name=ScrollSnapType scroll-snap-points-x runtime_flag=CSSScrollSnapPoints, converter=convertSnapPoints scroll-snap-points-y runtime_flag=CSSScrollSnapPoints, converter=convertSnapPoints scroll-snap-destination runtime_flag=CSSScrollSnapPoints, converter=convertPosition scroll-snap-coordinate runtime_flag=CSSScrollSnapPoints, converter=convertSnapCoordinates shape-image-threshold interpolable, type_name=float shape-margin interpolable, converter=convertLength shape-outside interpolable, converter=convertShapeValue shape-rendering inherited, svg size custom_all snap-height runtime_flag=CSSSnapSize, inherited, custom_all speak inherited stop-color interpolable, svg, converter=convertColor stop-opacity interpolable, svg, converter=convertNumberOrPercentage stroke interpolable, inherited, svg, setter=setStrokePaint, custom_all stroke-dasharray interpolable, inherited, svg, name_for_methods=StrokeDashArray, converter=convertStrokeDasharray stroke-dashoffset interpolable, inherited, svg, name_for_methods=StrokeDashOffset, converter=convertLength stroke-linecap svg, inherited, type_name=LineCap, name_for_methods=CapStyle stroke-linejoin svg, inherited, type_name=LineJoin, name_for_methods=JoinStyle stroke-miterlimit interpolable, inherited, svg, type_name=float, name_for_methods=StrokeMiterLimit stroke-opacity interpolable, inherited, svg, converter=convertNumberOrPercentage stroke-width interpolable, inherited, svg, converter=convertUnzoomedLength table-layout tab-size inherited, converter=convertLengthOrTabSpaces, type_name=TabSize text-align inherited, custom_value text-align-last inherited, type_name=TextAlignLast text-anchor inherited, svg text-combine-upright inherited, type_name=TextCombine, name_for_methods=TextCombine // FIXME: We shouldn't switch between shorthand/not shorthand based on a runtime flag text-decoration use_handlers_for=CSSPropertyTextDecorationLine, longhands=text-decoration-line;text-decoration-style;text-decoration-color text-decoration-color runtime_flag=CSS3TextDecorations, interpolable, custom_all text-decoration-line runtime_flag=CSS3TextDecorations, name_for_methods=TextDecoration, type_name=TextDecoration, converter=convertFlags text-decoration-style runtime_flag=CSS3TextDecorations, type_name=TextDecorationStyle text-indent interpolable, inherited, custom_all text-justify runtime_flag=CSS3Text, inherited, type_name=TextJustify text-overflow type_name=TextOverflow text-shadow interpolable, inherited, converter=convertShadow text-transform inherited text-underline-position runtime_flag=CSS3TextDecorations, inherited, type_name=TextUnderlinePosition top interpolable, initial=initialOffset, converter=convertLengthOrAuto touch-action converter=convertFlags, type_name=TouchAction transform typedom_types=[Transform], keywords=[none], interpolable, custom_value transform-origin interpolable, converter=convertTransformOrigin transform-style name_for_methods=TransformStyle3D translate runtime_flag=CSSIndependentTransformProperties, converter=convertTranslate, interpolable rotate runtime_flag=CSSIndependentTransformProperties, converter=convertRotate, interpolable scale runtime_flag=CSSIndependentTransformProperties, converter=convertScale, interpolable transition-delay custom_all transition-duration custom_all transition-property custom_all transition-timing-function custom_all unicode-bidi vector-effect svg vertical-align interpolable, custom_inherit, custom_value visibility interpolable, inherited x interpolable, svg, converter=convertLength y interpolable, svg, converter=convertLength -webkit-appearance type_name=ControlPart -webkit-app-region custom_all -webkit-background-clip use_handlers_for=CSSPropertyBackgroundClip -webkit-background-origin use_handlers_for=CSSPropertyBackgroundOrigin -webkit-border-horizontal-spacing interpolable, inherited, name_for_methods=HorizontalBorderSpacing, converter=convertComputedLength -webkit-border-image initial=initialNinePieceImage, custom_value -webkit-border-vertical-spacing interpolable, inherited, name_for_methods=VerticalBorderSpacing, converter=convertComputedLength -webkit-box-align type_name=EBoxAlignment -webkit-box-decoration-break -webkit-box-direction inherited -webkit-box-flex type_name=float -webkit-box-flex-group type_name=unsigned int -webkit-box-lines -webkit-box-ordinal-group type_name=unsigned int -webkit-box-orient -webkit-box-pack -webkit-box-reflect converter=convertBoxReflect -webkit-clip-path interpolable, custom_value column-count interpolable, type_name=unsigned short, custom_all column-gap interpolable, converter=convertComputedLength, custom_all column-rule-color interpolable, custom_all column-rule-style type_name=EBorderStyle, initial=initialBorderStyle column-rule-width interpolable, converter=convertLineWidth column-span type_name=ColumnSpan column-width interpolable, converter=convertComputedLength, custom_all -webkit-highlight inherited, converter=convertString -webkit-hyphenate-character inherited, name_for_methods=HyphenationString, converter=convertString -webkit-line-break inherited, type_name=LineBreak -webkit-line-clamp type_name=LineClampValue -webkit-margin-after-collapse type_name=EMarginCollapse -webkit-margin-before-collapse type_name=EMarginCollapse -webkit-margin-bottom-collapse type_name=EMarginCollapse, name_for_methods=MarginAfterCollapse -webkit-margin-top-collapse type_name=EMarginCollapse, name_for_methods=MarginBeforeCollapse -webkit-mask-box-image-outset interpolable, custom_all -webkit-mask-box-image-repeat custom_all -webkit-mask-box-image-slice interpolable, custom_all -webkit-mask-box-image-source interpolable, custom_value -webkit-mask-box-image-width interpolable, custom_all -webkit-mask-clip custom_all -webkit-mask-composite custom_all -webkit-mask-image interpolable, custom_all -webkit-mask-origin custom_all -webkit-mask-position-x interpolable, custom_all -webkit-mask-position-y interpolable, custom_all -webkit-mask-repeat-x custom_all -webkit-mask-repeat-y custom_all -webkit-mask-size interpolable, custom_all -webkit-perspective-origin-x interpolable, converter=convertLength -webkit-perspective-origin-y interpolable, converter=convertLength -webkit-print-color-adjust inherited, type_name=PrintColorAdjust -webkit-rtl-ordering inherited, type_name=Order, setter=setRTLOrdering, initial=initialRTLOrdering -webkit-ruby-position inherited, type_name=RubyPosition -webkit-tap-highlight-color inherited, converter=convertColor -webkit-text-combine inherited, type_name=TextCombine, name_for_methods=TextCombine -webkit-text-emphasis-color inherited, custom_all -webkit-text-emphasis-position inherited, type_name=TextEmphasisPosition -webkit-text-emphasis-style inherited, custom_all -webkit-text-fill-color inherited, custom_all -webkit-text-security inherited -webkit-text-stroke-color interpolable, inherited, custom_all -webkit-text-stroke-width inherited, converter=convertTextStrokeWidth -webkit-transform-origin-x interpolable, converter=convertLength -webkit-transform-origin-y interpolable, converter=convertLength -webkit-transform-origin-z interpolable, converter=convertComputedLength -webkit-user-drag -webkit-user-modify inherited -webkit-user-select inherited white-space inherited widows interpolable, inherited, type_name=short width interpolable, initial=initialSize, converter=convertLengthSizing, typedom_types=[Length], keywords=[auto], supports_percentage will-change custom_all word-break inherited word-spacing interpolable, inherited, initial=initialLetterWordSpacing, converter=convertSpacing // UAs must treat 'word-wrap' as an alternate name for the 'overflow-wrap' property. So using the same handlers. word-wrap inherited, name_for_methods=OverflowWrap z-index interpolable, type_name=int, custom_all // Non-standard direction aware properties -webkit-border-end-color direction_aware -webkit-border-end-style direction_aware -webkit-border-end-width direction_aware -webkit-border-start-color direction_aware -webkit-border-start-style direction_aware -webkit-border-start-width direction_aware -webkit-border-before-color direction_aware -webkit-border-before-style direction_aware -webkit-border-before-width direction_aware -webkit-border-after-color direction_aware -webkit-border-after-style direction_aware -webkit-border-after-width direction_aware -webkit-margin-end direction_aware -webkit-margin-start direction_aware -webkit-margin-before direction_aware -webkit-margin-after direction_aware -webkit-padding-end direction_aware -webkit-padding-start direction_aware -webkit-padding-before direction_aware -webkit-padding-after direction_aware -webkit-logical-width direction_aware -webkit-logical-height direction_aware -webkit-min-logical-width direction_aware -webkit-min-logical-height direction_aware -webkit-max-logical-width direction_aware -webkit-max-logical-height direction_aware // Properties that we ignore in the StyleBuilder. // TODO(timloh): This seems wrong, most of these shouldn't reach the StyleBuilder all builder_skip page builder_skip -webkit-font-size-delta builder_skip -webkit-text-decorations-in-effect inherited, builder_skip // Descriptors font-display descriptor_only, runtime_flag=CSSFontDisplay max-zoom descriptor_only min-zoom descriptor_only orientation descriptor_only src descriptor_only unicode-range descriptor_only user-zoom descriptor_only // Shorthands animation longhands=animation-name;animation-duration;animation-timing-function;animation-delay;animation-iteration-count;animation-direction;animation-fill-mode;animation-play-state background longhands=background-image;background-position-x;background-position-y;background-size;background-repeat-x;background-repeat-y;background-attachment;background-origin;background-clip;background-color background-position longhands=background-position-x;background-position-y background-repeat longhands=background-repeat-x;background-repeat-y border longhands=border-top-color;border-top-style;border-top-width;border-right-color;border-right-style;border-right-width;border-bottom-color;border-bottom-style;border-bottom-width;border-left-color;border-left-style;border-left-width;border-image-source;border-image-slice;border-image-width;border-image-outset;border-image-repeat border-bottom longhands=border-bottom-width;border-bottom-style;border-bottom-color border-color longhands=border-top-color;border-right-color;border-bottom-color;border-left-color border-image longhands=border-image-source;border-image-slice;border-image-width;border-image-outset;border-image-repeat border-left longhands=border-left-width;border-left-style;border-left-color border-radius longhands=border-top-left-radius;border-top-right-radius;border-bottom-right-radius;border-bottom-left-radius border-right longhands=border-right-width;border-right-style;border-right-color border-spacing longhands=-webkit-border-horizontal-spacing;-webkit-border-vertical-spacing border-style longhands=border-top-style;border-right-style;border-bottom-style;border-left-style border-top longhands=border-top-width;border-top-style;border-top-color border-width longhands=border-top-width;border-right-width;border-bottom-width;border-left-width flex longhands=flex-grow;flex-shrink;flex-basis flex-flow longhands=flex-direction;flex-wrap font longhands=font-style;font-variant-ligatures;font-variant-caps;font-variant-numeric;font-weight;font-stretch;font-size;line-height;font-family font-variant longhands=font-variant-ligatures;font-variant-caps;font-variant-numeric grid runtime_flag=CSSGridLayout, longhands=grid-template-rows;grid-template-columns;grid-template-areas;grid-auto-flow;grid-auto-rows;grid-auto-columns;grid-column-gap;grid-row-gap grid-area runtime_flag=CSSGridLayout, longhands=grid-row-start;grid-column-start;grid-row-end;grid-column-end grid-column runtime_flag=CSSGridLayout, longhands=grid-column-start;grid-column-end grid-gap runtime_flag=CSSGridLayout, longhands=grid-row-gap;grid-column-gap grid-row runtime_flag=CSSGridLayout, longhands=grid-row-start;grid-row-end grid-template runtime_flag=CSSGridLayout, longhands=grid-template-rows;grid-template-columns;grid-template-areas list-style longhands=list-style-type;list-style-position;list-style-image margin longhands=margin-top;margin-right;margin-bottom;margin-left marker longhands=marker-start;marker-mid;marker-end motion longhands=motion-path;motion-offset;motion-rotation outline longhands=outline-color;outline-style;outline-width overflow longhands=overflow-x;overflow-y padding longhands=padding-top;padding-right;padding-bottom;padding-left page-break-after longhands=break-after page-break-before longhands=break-before page-break-inside longhands=break-inside transition longhands=transition-property;transition-duration;transition-timing-function;transition-delay -webkit-border-after longhands=-webkit-border-after-width;-webkit-border-after-style;-webkit-border-after-color -webkit-border-before longhands=-webkit-border-before-width;-webkit-border-before-style;-webkit-border-before-color -webkit-border-end longhands=-webkit-border-end-width;-webkit-border-end-style;-webkit-border-end-color -webkit-border-start longhands=-webkit-border-start-width;-webkit-border-start-style;-webkit-border-start-color -webkit-column-break-after longhands=break-after -webkit-column-break-before longhands=break-before -webkit-column-break-inside longhands=break-inside column-rule longhands=column-rule-width;column-rule-style;column-rule-color columns longhands=column-width;column-count -webkit-margin-collapse longhands=-webkit-margin-before-collapse;-webkit-margin-after-collapse -webkit-mask longhands=-webkit-mask-image;-webkit-mask-position-x;-webkit-mask-position-y;-webkit-mask-size;-webkit-mask-repeat-x;-webkit-mask-repeat-y;-webkit-mask-origin;-webkit-mask-clip -webkit-mask-box-image longhands=-webkit-mask-box-image-source;-webkit-mask-box-image-slice;-webkit-mask-box-image-width;-webkit-mask-box-image-outset;-webkit-mask-box-image-repeat -webkit-mask-position longhands=-webkit-mask-position-x;-webkit-mask-position-y -webkit-mask-repeat longhands=-webkit-mask-repeat-x;-webkit-mask-repeat-y -webkit-text-emphasis longhands=-webkit-text-emphasis-style;-webkit-text-emphasis-color -webkit-text-stroke longhands=-webkit-text-stroke-width;-webkit-text-stroke-color // Aliases; these map to the same CSSPropertyID -epub-caption-side alias_for=caption-side -epub-text-combine alias_for=-webkit-text-combine -epub-text-emphasis alias_for=-webkit-text-emphasis -epub-text-emphasis-color alias_for=-webkit-text-emphasis-color -epub-text-emphasis-style alias_for=-webkit-text-emphasis-style -epub-text-orientation alias_for=-webkit-text-orientation -epub-text-transform alias_for=text-transform -epub-word-break alias_for=word-break -epub-writing-mode alias_for=-webkit-writing-mode -webkit-align-content alias_for=align-content -webkit-align-items alias_for=align-items -webkit-align-self alias_for=align-self -webkit-animation alias_for=animation -webkit-animation-delay alias_for=animation-delay -webkit-animation-direction alias_for=animation-direction -webkit-animation-duration alias_for=animation-duration -webkit-animation-fill-mode alias_for=animation-fill-mode -webkit-animation-iteration-count alias_for=animation-iteration-count -webkit-animation-name alias_for=animation-name -webkit-animation-play-state alias_for=animation-play-state -webkit-animation-timing-function alias_for=animation-timing-function -webkit-backface-visibility alias_for=backface-visibility // "-webkit-background-size: 10px" behaves as "background-size: 10px 10px" -webkit-background-size alias_for=background-size -webkit-border-bottom-left-radius alias_for=border-bottom-left-radius -webkit-border-bottom-right-radius alias_for=border-bottom-right-radius // "-webkit-border-radius: 1px 2px" behaves as "border-radius: 1px / 2px" -webkit-border-radius alias_for=border-radius -webkit-border-top-left-radius alias_for=border-top-left-radius -webkit-border-top-right-radius alias_for=border-top-right-radius -webkit-box-shadow alias_for=box-shadow -webkit-box-sizing alias_for=box-sizing -webkit-column-count alias_for=column-count -webkit-column-gap alias_for=column-gap -webkit-column-rule alias_for=column-rule -webkit-column-rule-color alias_for=column-rule-color -webkit-column-rule-style alias_for=column-rule-style -webkit-column-rule-width alias_for=column-rule-width -webkit-column-span alias_for=column-span -webkit-column-width alias_for=column-width -webkit-columns alias_for=columns -webkit-filter alias_for=filter -webkit-flex alias_for=flex -webkit-flex-basis alias_for=flex-basis -webkit-flex-direction alias_for=flex-direction -webkit-flex-flow alias_for=flex-flow -webkit-flex-grow alias_for=flex-grow -webkit-flex-shrink alias_for=flex-shrink -webkit-flex-wrap alias_for=flex-wrap -webkit-font-feature-settings alias_for=font-feature-settings -webkit-justify-content alias_for=justify-content -webkit-opacity alias_for=opacity -webkit-order alias_for=order -webkit-perspective alias_for=perspective -webkit-perspective-origin alias_for=perspective-origin -webkit-shape-image-threshold alias_for=shape-image-threshold -webkit-shape-margin alias_for=shape-margin -webkit-shape-outside alias_for=shape-outside -webkit-transform alias_for=transform -webkit-transform-origin alias_for=transform-origin -webkit-transform-style alias_for=transform-style -webkit-transition alias_for=transition -webkit-transition-delay alias_for=transition-delay -webkit-transition-duration alias_for=transition-duration -webkit-transition-property alias_for=transition-property -webkit-transition-timing-function alias_for=transition-timing-function