浏览代码

feat: add all the css

Jonathan Kelley 3 年之前
父节点
当前提交
9f60dfa8b0
共有 2 个文件被更改,包括 670 次插入378 次删除
  1. 411 0
      examples/all_css.rs
  2. 259 378
      packages/html/src/global_attributes.rs

+ 411 - 0
examples/all_css.rs

@@ -0,0 +1,411 @@
+use dioxus::prelude::*;
+
+fn main() {
+    dioxus::desktop::launch(app);
+}
+
+fn app(cx: Scope) -> Element {
+    cx.render(rsx! {
+        div {
+          align_content: "a",
+          align_items: "a",
+          align_self: "a",
+          alignment_adjust: "a",
+          alignment_baseline: "a",
+          all: "a",
+          alt: "a",
+          animation: "a",
+          animation_delay: "a",
+          animation_direction: "a",
+          animation_duration: "a",
+          animation_fill_mode: "a",
+          animation_iteration_count: "a",
+          animation_name: "a",
+          animation_play_state: "a",
+          animation_timing_function: "a",
+          azimuth: "a",
+          backface_visibility: "a",
+          background: "a",
+          background_attachment: "a",
+          background_clip: "a",
+          background_color: "a",
+          background_image: "a",
+          background_origin: "a",
+          background_position: "a",
+          background_repeat: "a",
+          background_size: "a",
+          background_blend_mode: "a",
+          baseline_shift: "a",
+          bleed: "a",
+          bookmark_label: "a",
+          bookmark_level: "a",
+          bookmark_state: "a",
+          border: "a",
+          border_color: "a",
+          border_style: "a",
+          border_width: "a",
+          border_bottom: "a",
+          border_bottom_color: "a",
+          border_bottom_style: "a",
+          border_bottom_width: "a",
+          border_left: "a",
+          border_left_color: "a",
+          border_left_style: "a",
+          border_left_width: "a",
+          border_right: "a",
+          border_right_color: "a",
+          border_right_style: "a",
+          border_right_width: "a",
+          border_top: "a",
+          border_top_color: "a",
+          border_top_style: "a",
+          border_top_width: "a",
+          border_collapse: "a",
+          border_image: "a",
+          border_image_outset: "a",
+          border_image_repeat: "a",
+          border_image_slice: "a",
+          border_image_source: "a",
+          border_image_width: "a",
+          border_radius: "a",
+          border_bottom_left_radius: "a",
+          border_bottom_right_radius: "a",
+          border_top_left_radius: "a",
+          border_top_right_radius: "a",
+          border_spacing: "a",
+          bottom: "a",
+          box_decoration_break: "a",
+          box_shadow: "a",
+          box_sizing: "a",
+          box_snap: "a",
+          break_after: "a",
+          break_before: "a",
+          break_inside: "a",
+          buffered_rendering: "a",
+          caption_side: "a",
+          clear: "a",
+          clear_side: "a",
+          clip: "a",
+          clip_path: "a",
+          clip_rule: "a",
+          color: "a",
+          color_adjust: "a",
+          color_correction: "a",
+          color_interpolation: "a",
+          color_interpolation_filters: "a",
+          color_profile: "a",
+          color_rendering: "a",
+          column_fill: "a",
+          column_gap: "a",
+          column_rule: "a",
+          column_rule_color: "a",
+          column_rule_style: "a",
+          column_rule_width: "a",
+          column_span: "a",
+          columns: "a",
+          column_count: "a",
+          column_width: "a",
+          contain: "a",
+          content: "a",
+          counter_increment: "a",
+          counter_reset: "a",
+          counter_set: "a",
+          cue: "a",
+          cue_after: "a",
+          cue_before: "a",
+          cursor: "a",
+          direction: "a",
+          display: "a",
+          display_inside: "a",
+          display_outside: "a",
+          display_extras: "a",
+          display_box: "a",
+          dominant_baseline: "a",
+          elevation: "a",
+          empty_cells: "a",
+          enable_background: "a",
+          fill: "a",
+          fill_opacity: "a",
+          fill_rule: "a",
+          filter: "a",
+          float: "a",
+          float_defer_column: "a",
+          float_defer_page: "a",
+          float_offset: "a",
+          float_wrap: "a",
+          flow_into: "a",
+          flow_from: "a",
+          flex: "a",
+          flex_basis: "a",
+          flex_grow: "a",
+          flex_shrink: "a",
+          flex_flow: "a",
+          flex_direction: "a",
+          flex_wrap: "a",
+          flood_color: "a",
+          flood_opacity: "a",
+          font: "a",
+          font_family: "a",
+          font_size: "a",
+          font_stretch: "a",
+          font_style: "a",
+          font_weight: "a",
+          font_feature_settings: "a",
+          font_kerning: "a",
+          font_language_override: "a",
+          font_size_adjust: "a",
+          font_synthesis: "a",
+          font_variant: "a",
+          font_variant_alternates: "a",
+          font_variant_caps: "a",
+          font_variant_east_asian: "a",
+          font_variant_ligatures: "a",
+          font_variant_numeric: "a",
+          font_variant_position: "a",
+          footnote_policy: "a",
+          glyph_orientation_horizontal: "a",
+          glyph_orientation_vertical: "a",
+          grid: "a",
+          grid_auto_flow: "a",
+          grid_auto_columns: "a",
+          grid_auto_rows: "a",
+          grid_template: "a",
+          grid_template_areas: "a",
+          grid_template_columns: "a",
+          grid_template_rows: "a",
+          grid_area: "a",
+          grid_column: "a",
+          grid_column_start: "a",
+          grid_column_end: "a",
+          grid_row: "a",
+          grid_row_start: "a",
+          grid_row_end: "a",
+          hanging_punctuation: "a",
+          height: "a",
+          hyphenate_character: "a",
+          hyphenate_limit_chars: "a",
+          hyphenate_limit_last: "a",
+          hyphenate_limit_lines: "a",
+          hyphenate_limit_zone: "a",
+          hyphens: "a",
+          icon: "a",
+          image_orientation: "a",
+          image_resolution: "a",
+          image_rendering: "a",
+          ime: "a",
+          ime_align: "a",
+          ime_mode: "a",
+          ime_offset: "a",
+          ime_width: "a",
+          initial_letters: "a",
+          inline_box_align: "a",
+          isolation: "a",
+          justify_content: "a",
+          justify_items: "a",
+          justify_self: "a",
+          kerning: "a",
+          left: "a",
+          letter_spacing: "a",
+          lighting_color: "a",
+          line_box_contain: "a",
+          line_break: "a",
+          line_grid: "a",
+          line_height: "a",
+          line_slack: "a",
+          line_snap: "a",
+          list_style: "a",
+          list_style_image: "a",
+          list_style_position: "a",
+          list_style_type: "a",
+          margin: "a",
+          margin_bottom: "a",
+          margin_left: "a",
+          margin_right: "a",
+          margin_top: "a",
+          marker: "a",
+          marker_end: "a",
+          marker_mid: "a",
+          marker_pattern: "a",
+          marker_segment: "a",
+          marker_start: "a",
+          marker_knockout_left: "a",
+          marker_knockout_right: "a",
+          marker_side: "a",
+          marks: "a",
+          marquee_direction: "a",
+          marquee_play_count: "a",
+          marquee_speed: "a",
+          marquee_style: "a",
+          mask: "a",
+          mask_image: "a",
+          mask_repeat: "a",
+          mask_position: "a",
+          mask_clip: "a",
+          mask_origin: "a",
+          mask_size: "a",
+          mask_box: "a",
+          mask_box_outset: "a",
+          mask_box_repeat: "a",
+          mask_box_slice: "a",
+          mask_box_source: "a",
+          mask_box_width: "a",
+          mask_type: "a",
+          max_height: "a",
+          max_lines: "a",
+          max_width: "a",
+          min_height: "a",
+          min_width: "a",
+          mix_blend_mode: "a",
+          nav_down: "a",
+          nav_index: "a",
+          nav_left: "a",
+          nav_right: "a",
+          nav_up: "a",
+          object_fit: "a",
+          object_position: "a",
+          offset_after: "a",
+          offset_before: "a",
+          offset_end: "a",
+          offset_start: "a",
+          opacity: "a",
+          order: "a",
+          orphans: "a",
+          outline: "a",
+          outline_color: "a",
+          outline_style: "a",
+          outline_width: "a",
+          outline_offset: "a",
+          overflow: "a",
+          overflow_x: "a",
+          overflow_y: "a",
+          overflow_style: "a",
+          overflow_wrap: "a",
+          padding: "a",
+          padding_bottom: "a",
+          padding_left: "a",
+          padding_right: "a",
+          padding_top: "a",
+          page: "a",
+          page_break_after: "a",
+          page_break_before: "a",
+          page_break_inside: "a",
+          paint_order: "a",
+          pause: "a",
+          pause_after: "a",
+          pause_before: "a",
+          perspective: "a",
+          perspective_origin: "a",
+          pitch: "a",
+          pitch_range: "a",
+          play_during: "a",
+          pointer_events: "a",
+          position: "a",
+          quotes: "a",
+          region_fragment: "a",
+          resize: "a",
+          rest: "a",
+          rest_after: "a",
+          rest_before: "a",
+          richness: "a",
+          right: "a",
+          ruby_align: "a",
+          ruby_merge: "a",
+          ruby_position: "a",
+          scroll_behavior: "a",
+          scroll_snap_coordinate: "a",
+          scroll_snap_destination: "a",
+          scroll_snap_points_x: "a",
+          scroll_snap_points_y: "a",
+          scroll_snap_type: "a",
+          shape_image_threshold: "a",
+          shape_inside: "a",
+          shape_margin: "a",
+          shape_outside: "a",
+          shape_padding: "a",
+          shape_rendering: "a",
+          size: "a",
+          speak: "a",
+          speak_as: "a",
+          speak_header: "a",
+          speak_numeral: "a",
+          speak_punctuation: "a",
+          speech_rate: "a",
+          stop_color: "a",
+          stop_opacity: "a",
+          stress: "a",
+          string_set: "a",
+          stroke: "a",
+          stroke_dasharray: "a",
+          stroke_dashoffset: "a",
+          stroke_linecap: "a",
+          stroke_linejoin: "a",
+          stroke_miterlimit: "a",
+          stroke_opacity: "a",
+          stroke_width: "a",
+          tab_size: "a",
+          table_layout: "a",
+          text_align: "a",
+          text_align_all: "a",
+          text_align_last: "a",
+          text_anchor: "a",
+          text_combine_upright: "a",
+          text_decoration: "a",
+          text_decoration_color: "a",
+          text_decoration_line: "a",
+          text_decoration_style: "a",
+          text_decoration_skip: "a",
+          text_emphasis: "a",
+          text_emphasis_color: "a",
+          text_emphasis_style: "a",
+          text_emphasis_position: "a",
+          text_emphasis_skip: "a",
+          text_height: "a",
+          text_indent: "a",
+          text_justify: "a",
+          text_orientation: "a",
+          text_overflow: "a",
+          text_rendering: "a",
+          text_shadow: "a",
+          text_size_adjust: "a",
+          text_space_collapse: "a",
+          text_spacing: "a",
+          text_transform: "a",
+          text_underline_position: "a",
+          text_wrap: "a",
+          top: "a",
+          touch_action: "a",
+          transform: "a",
+          transform_box: "a",
+          transform_origin: "a",
+          transform_style: "a",
+          transition: "a",
+          transition_delay: "a",
+          transition_duration: "a",
+          transition_property: "a",
+          unicode_bidi: "a",
+          vector_effect: "a",
+          vertical_align: "a",
+          visibility: "a",
+          voice_balance: "a",
+          voice_duration: "a",
+          voice_family: "a",
+          voice_pitch: "a",
+          voice_range: "a",
+          voice_rate: "a",
+          voice_stress: "a",
+          voice_volumn: "a",
+          volume: "a",
+          white_space: "a",
+          widows: "a",
+          width: "a",
+          will_change: "a",
+          word_break: "a",
+          word_spacing: "a",
+          word_wrap: "a",
+          wrap_flow: "a",
+          wrap_through: "a",
+          writing_mode: "a",
+          z_index: "a",
+        }
+    })
+}

+ 259 - 378
packages/html/src/global_attributes.rs

@@ -118,524 +118,405 @@ pub trait GlobalAttributes {
     //
     // This roughly follows the html spec
     style_trait_methods! {
-        /// Specifies the alignment of flexible container's items within the flex container.
         align_content: "align-content",
-
-        /// Specifies the default alignment for items within the flex container.
         align_items: "align-items",
-
-        /// Specifies the alignment for selected items within the flex container.
         align_self: "align-self",
-
-        /// Specifies the keyframe_based animations.
+        alignment_adjust: "alignment-adjust",
+        alignment_baseline: "alignment-baseline",
+        all: "all",
+        alt: "alt",
         animation: "animation",
-
-        /// Specifies when the animation will start.
         animation_delay: "animation-delay",
-
-        /// Specifies whether the animation should play in reverse on alternate cycles or not.
         animation_direction: "animation-direction",
-
-        /// Specifies the number of seconds or milliseconds an animation should take to complete one cycle
         animation_duration: "animation-duration",
-
-        /// Specifies how a CSS animation should apply styles to its target before and after it is executing
         animation_fill_mode: "animation-fill-mode",
-
-        /// Specifies the number of times an animation cycle should be played before stopping.
         animation_iteration_count: "animation-iteration-count",
-
-        /// Specifies the name of @keyframes defined animations that should be applied to the selected element
         animation_name: "animation-name",
-
-        /// Specifies whether the animation is running or paused.
         animation_play_state: "animation-play-state",
-
-        /// Specifies how a CSS animation should progress over the duration of each cycle.
         animation_timing_function: "animation-timing-function",
-
-        /// Specifies whether or not the "back" side of a transformed element is visible when facing the user.
+        azimuth: "azimuth",
         backface_visibility: "backface-visibility",
-
-        /// Defines a variety of background properties within one declaration.
         background: "background",
-
-        /// Specify whether the background image is fixed in the viewport or scrolls.
         background_attachment: "background-attachment",
-
-        /// Specifies the painting area of the background.
         background_clip: "background-clip",
-
-        /// Defines an element's background color.
         background_color: "background-color",
-
-        /// Defines an element's background image.
         background_image: "background-image",
-
-        /// Specifies the positioning area of the background images.
         background_origin: "background-origin",
-
-        /// Defines the origin of a background image.
         background_position: "background-position",
-
-        /// Specify whether/how the background image is tiled.
         background_repeat: "background-repeat",
-
-        /// Specifies the size of the background images.
         background_size: "background-size",
-
-        /// Sets the width, style, and color for all four sides of an element's border.
+        background_blend_mode: "background-blend-mode",
+        baseline_shift: "baseline-shift",
+        bleed: "bleed",
+        bookmark_label: "bookmark-label",
+        bookmark_level: "bookmark-level",
+        bookmark_state: "bookmark-state",
         border: "border",
-
-        /// Sets the width, style, and color of the bottom border of an element.
+        border_color: "border-color",
+        border_style: "border-style",
+        border_width: "border-width",
         border_bottom: "border-bottom",
-
-        /// Sets the color of the bottom border of an element.
         border_bottom_color: "border-bottom-color",
-
-        /// Defines the shape of the bottom_left border corner of an element.
-        border_bottom_left_radius: "border-bottom-left-radius",
-
-        /// Defines the shape of the bottom_right border corner of an element.
-        border_bottom_right_radius: "border-bottom-right-radius",
-
-        /// Sets the style of the bottom border of an element.
         border_bottom_style: "border-bottom-style",
-
-        /// Sets the width of the bottom border of an element.
         border_bottom_width: "border-bottom-width",
-
-        /// Specifies whether table cell borders are connected or separated.
-        border_collapse: "border-collapse",
-
-        /// Sets the color of the border on all the four sides of an element.
-        border_color: "border-color",
-
-        /// Specifies how an image is to be used in place of the border styles.
-        border_image: "border-image",
-
-        /// Specifies the amount by which the border image area extends beyond the border box.
-        border_image_outset: "border-image-outset",
-
-        /// Specifies whether the image_border should be repeated, rounded or stretched.
-        border_image_repeat: "border-image-repeat",
-
-        /// Specifies the inward offsets of the image_border.
-        border_image_slice: "border-image-slice",
-
-        /// Specifies the location of the image to be used as a border.
-        border_image_source: "border-image-source",
-
-        /// Specifies the width of the image_border.
-        border_image_width: "border-image-width",
-
-        /// Sets the width, style, and color of the left border of an element.
         border_left: "border-left",
-
-        /// Sets the color of the left border of an element.
         border_left_color: "border-left-color",
-
-        /// Sets the style of the left border of an element.
         border_left_style: "border-left-style",
-
-        /// Sets the width of the left border of an element.
         border_left_width: "border-left-width",
-
-        /// Defines the shape of the border corners of an element.
-        border_radius: "border-radius",
-
-        /// Sets the width, style, and color of the right border of an element.
         border_right: "border-right",
-
-        /// Sets the color of the right border of an element.
         border_right_color: "border-right-color",
-
-        /// Sets the style of the right border of an element.
         border_right_style: "border-right-style",
-
-        /// Sets the width of the right border of an element.
         border_right_width: "border-right-width",
-
-        /// Sets the spacing between the borders of adjacent table cells.
-        border_spacing: "border-spacing",
-
-        /// Sets the style of the border on all the four sides of an element.
-        border_style: "border-style",
-
-        /// Sets the width, style, and color of the top border of an element.
         border_top: "border-top",
-
-        /// Sets the color of the top border of an element.
         border_top_color: "border-top-color",
-
-        /// Defines the shape of the top_left border corner of an element.
-        border_top_left_radius: "border-top-left-radius",
-
-        /// Defines the shape of the top_right border corner of an element.
-        border_top_right_radius: "border-top-right-radius",
-
-        /// Sets the style of the top border of an element.
         border_top_style: "border-top-style",
-
-        /// Sets the width of the top border of an element.
         border_top_width: "border-top-width",
-
-        /// Sets the width of the border on all the four sides of an element.
-        border_width: "border-width",
-
-        /// Specify the location of the bottom edge of the positioned element.
+        border_collapse: "border-collapse",
+        border_image: "border-image",
+        border_image_outset: "border-image-outset",
+        border_image_repeat: "border-image-repeat",
+        border_image_slice: "border-image-slice",
+        border_image_source: "border-image-source",
+        border_image_width: "border-image-width",
+        border_radius: "border-radius",
+        border_bottom_left_radius: "border-bottom-left-radius",
+        border_bottom_right_radius: "border-bottom-right-radius",
+        border_top_left_radius: "border-top-left-radius",
+        border_top_right_radius: "border-top-right-radius",
+        border_spacing: "border-spacing",
         bottom: "bottom",
-
-        /// Applies one or more drop_shadows to the element's box.
+        box_decoration_break: "box-decoration-break",
         box_shadow: "box-shadow",
-
-        /// Alter the default CSS box model.
         box_sizing: "box-sizing",
-
-        /// Specify the position of table's caption.
+        box_snap: "box-snap",
+        break_after: "break-after",
+        break_before: "break-before",
+        break_inside: "break-inside",
+        buffered_rendering: "buffered-rendering",
         caption_side: "caption-side",
-
-        /// Specifies the placement of an element in relation to floating elements.
         clear: "clear",
-
-        /// Defines the clipping region.
+        clear_side: "clear-side",
         clip: "clip",
-
-        /// Specify the color of the text of an element.
+        clip_path: "clip-path",
+        clip_rule: "clip-rule",
         color: "color",
-
-        /// Specifies the number of columns in a multi_column element.
-        column_count: "column-count",
-
-        /// Specifies how columns will be filled.
+        color_adjust: "color-adjust",
+        color_correction: "color-correction",
+        color_interpolation: "color-interpolation",
+        color_interpolation_filters: "color-interpolation-filters",
+        color_profile: "color-profile",
+        color_rendering: "color-rendering",
         column_fill: "column-fill",
-
-        /// Specifies the gap between the columns in a multi_column element.
         column_gap: "column-gap",
-
-        /// Specifies a straight line, or "rule", to be drawn between each column in a multi_column element.
         column_rule: "column-rule",
-
-        /// Specifies the color of the rules drawn between columns in a multi_column layout.
         column_rule_color: "column-rule-color",
-
-        /// Specifies the style of the rule drawn between the columns in a multi_column layout.
         column_rule_style: "column-rule-style",
-
-        /// Specifies the width of the rule drawn between the columns in a multi_column layout.
         column_rule_width: "column-rule-width",
-
-        /// Specifies how many columns an element spans across in a multi_column layout.
         column_span: "column-span",
-
-        /// Specifies the optimal width of the columns in a multi_column element.
-        column_width: "column-width",
-
-        /// A shorthand property for setting column_width and column_count properties.
         columns: "columns",
-
-        /// Inserts generated content.
+        column_count: "column-count",
+        column_width: "column-width",
+        contain: "contain",
         content: "content",
-
-        /// Increments one or more counter values.
         counter_increment: "counter-increment",
-
-        /// Creates or resets one or more counters.
         counter_reset: "counter-reset",
-
-        /// Specify the type of cursor.
+        counter_set: "counter-set",
+        cue: "cue",
+        cue_after: "cue-after",
+        cue_before: "cue-before",
         cursor: "cursor",
-
-        /// Define the text direction/writing direction.
         direction: "direction",
-
-        /// Specifies how an element is displayed onscreen.
         display: "display",
-
-        /// Show or hide borders and backgrounds of empty table cells.
+        display_inside: "display-inside",
+        display_outside: "display-outside",
+        display_extras: "display-extras",
+        display_box: "display-box",
+        dominant_baseline: "dominant-baseline",
+        elevation: "elevation",
         empty_cells: "empty-cells",
-
-        /// Specifies the components of a flexible length.
+        enable_background: "enable-background",
+        fill: "fill",
+        fill_opacity: "fill-opacity",
+        fill_rule: "fill-rule",
+        filter: "filter",
+        float: "float",
+        float_defer_column: "float-defer-column",
+        float_defer_page: "float-defer-page",
+        float_offset: "float-offset",
+        float_wrap: "float-wrap",
+        flow_into: "flow-into",
+        flow_from: "flow-from",
         flex: "flex",
-
-        /// Specifies the initial main size of the flex item.
         flex_basis: "flex-basis",
-
-        /// Specifies the direction of the flexible items.
-        flex_direction: "flex-direction",
-
-        /// A shorthand property for the flex_direction and the flex_wrap properties.
-        flex_flow: "flex-flow",
-
-        /// Specifies how the flex item will grow relative to the other items inside the flex container.
         flex_grow: "flex-grow",
-
-        /// Specifies how the flex item will shrink relative to the other items inside the flex container
         flex_shrink: "flex-shrink",
-
-        /// Specifies whether the flexible items should wrap or not.
+        flex_flow: "flex-flow",
+        flex_direction: "flex-direction",
         flex_wrap: "flex-wrap",
-
-        /// Specifies whether or not a box should float.
-        float: "float",
-
-        /// Defines a variety of font properties within one declaration.
+        flood_color: "flood-color",
+        flood_opacity: "flood-opacity",
         font: "font",
-
-        /// Defines a list of fonts for element.
         font_family: "font-family",
-
-        /// Defines the font size for the text.
         font_size: "font-size",
-
-        /// Preserves the readability of text when font fallback occurs.
-        font_size_adjust: "font-size-adjust",
-
-        /// Selects a normal, condensed, or expanded face from a font.
         font_stretch: "font-stretch",
-
-        /// Defines the font style for the text.
         font_style: "font-style",
-
-        /// Specify the font variant.
-        font_variant: "font-variant",
-
-        /// Specify the font weight of the text.
         font_weight: "font-weight",
-
-        /// Sets gaps (gutters) between rows and columns. Shorthand for row_gap and column_gap.
-        gap: "gap",
-
-        /// Specify the height of an element.
+        font_feature_settings: "font-feature-settings",
+        font_kerning: "font-kerning",
+        font_language_override: "font-language-override",
+        font_size_adjust: "font-size-adjust",
+        font_synthesis: "font-synthesis",
+        font_variant: "font-variant",
+        font_variant_alternates: "font-variant-alternates",
+        font_variant_caps: "font-variant-caps",
+        font_variant_east_asian: "font-variant-east-asian",
+        font_variant_ligatures: "font-variant-ligatures",
+        font_variant_numeric: "font-variant-numeric",
+        font_variant_position: "font-variant-position",
+        footnote_policy: "footnote-policy",
+        glyph_orientation_horizontal: "glyph-orientation-horizontal",
+        glyph_orientation_vertical: "glyph-orientation-vertical",
+        grid: "grid",
+        grid_auto_flow: "grid-auto-flow",
+        grid_auto_columns: "grid-auto-columns",
+        grid_auto_rows: "grid-auto-rows",
+        grid_template: "grid-template",
+        grid_template_areas: "grid-template-areas",
+        grid_template_columns: "grid-template-columns",
+        grid_template_rows: "grid-template-rows",
+        grid_area: "grid-area",
+        grid_column: "grid-column",
+        grid_column_start: "grid-column-start",
+        grid_column_end: "grid-column-end",
+        grid_row: "grid-row",
+        grid_row_start: "grid-row-start",
+        grid_row_end: "grid-row-end",
+        hanging_punctuation: "hanging-punctuation",
         height: "height",
-
-        /// Specifies how flex items are aligned along the main axis of the flex container after any flexible lengths and auto margins have been resolved.
+        hyphenate_character: "hyphenate-character",
+        hyphenate_limit_chars: "hyphenate-limit-chars",
+        hyphenate_limit_last: "hyphenate-limit-last",
+        hyphenate_limit_lines: "hyphenate-limit-lines",
+        hyphenate_limit_zone: "hyphenate-limit-zone",
+        hyphens: "hyphens",
+        icon: "icon",
+        image_orientation: "image-orientation",
+        image_resolution: "image-resolution",
+        image_rendering: "image-rendering",
+        ime: "ime",
+        ime_align: "ime-align",
+        ime_mode: "ime-mode",
+        ime_offset: "ime-offset",
+        ime_width: "ime-width",
+        initial_letters: "initial-letters",
+        inline_box_align: "inline-box-align",
+        isolation: "isolation",
         justify_content: "justify-content",
-
-        /// Specify the location of the left edge of the positioned element.
+        justify_items: "justify-items",
+        justify_self: "justify-self",
+        kerning: "kerning",
         left: "left",
-
-        /// Sets the extra spacing between letters.
         letter_spacing: "letter-spacing",
-
-        /// Sets the height between lines of text.
+        lighting_color: "lighting-color",
+        line_box_contain: "line-box-contain",
+        line_break: "line-break",
+        line_grid: "line-grid",
         line_height: "line-height",
-
-        /// Defines the display style for a list and list elements.
+        line_slack: "line-slack",
+        line_snap: "line-snap",
         list_style: "list-style",
-
-        /// Specifies the image to be used as a list_item marker.
         list_style_image: "list-style-image",
-
-        /// Specifies the position of the list_item marker.
         list_style_position: "list-style-position",
-
-        /// Specifies the marker style for a list_item.
-        list_styler_type: "list-style-type",
-
-        /// Sets the margin on all four sides of the element.
+        list_style_type: "list-style-type",
         margin: "margin",
-
-        /// Sets the bottom margin of the element.
         margin_bottom: "margin-bottom",
-
-        /// Sets the left margin of the element.
         margin_left: "margin-left",
-
-        /// Sets the right margin of the element.
         margin_right: "margin-right",
-
-        /// Sets the top margin of the element.
         margin_top: "margin-top",
-
-        /// Specify the maximum height of an element.
+        marker: "marker",
+        marker_end: "marker-end",
+        marker_mid: "marker-mid",
+        marker_pattern: "marker-pattern",
+        marker_segment: "marker-segment",
+        marker_start: "marker-start",
+        marker_knockout_left: "marker-knockout-left",
+        marker_knockout_right: "marker-knockout-right",
+        marker_side: "marker-side",
+        marks: "marks",
+        marquee_direction: "marquee-direction",
+        marquee_play_count: "marquee-play-count",
+        marquee_speed: "marquee-speed",
+        marquee_style: "marquee-style",
+        mask: "mask",
+        mask_image: "mask-image",
+        mask_repeat: "mask-repeat",
+        mask_position: "mask-position",
+        mask_clip: "mask-clip",
+        mask_origin: "mask-origin",
+        mask_size: "mask-size",
+        mask_box: "mask-box",
+        mask_box_outset: "mask-box-outset",
+        mask_box_repeat: "mask-box-repeat",
+        mask_box_slice: "mask-box-slice",
+        mask_box_source: "mask-box-source",
+        mask_box_width: "mask-box-width",
+        mask_type: "mask-type",
         max_height: "max-height",
-
-        /// Specify the maximum width of an element.
+        max_lines: "max-lines",
         max_width: "max-width",
-
-        /// Specify the minimum height of an element.
         min_height: "min-height",
-
-        /// Specify the minimum width of an element.
         min_width: "min-width",
-
-        /// Specifies the transparency of an element.
+        mix_blend_mode: "mix-blend-mode",
+        nav_down: "nav-down",
+        nav_index: "nav-index",
+        nav_left: "nav-left",
+        nav_right: "nav-right",
+        nav_up: "nav-up",
+        object_fit: "object-fit",
+        object_position: "object-position",
+        offset_after: "offset-after",
+        offset_before: "offset-before",
+        offset_end: "offset-end",
+        offset_start: "offset-start",
         opacity: "opacity",
-
-        /// Specifies the order in which a flex items are displayed and laid out within a flex container.
         order: "order",
-
-        /// Sets the width, style, and color for all four sides of an element's outline.
+        orphans: "orphans",
         outline: "outline",
-
-        /// Sets the color of the outline.
         outline_color: "outline-color",
-
-        /// Set the space between an outline and the border edge of an element.
-        outline_offset: "outline-offset",
-
-        /// Sets a style for an outline.
         outline_style: "outline-style",
-
-        /// Sets the width of the outline.
         outline_width: "outline-width",
-
-        /// Specifies the treatment of content that overflows the element's box.
+        outline_offset: "outline-offset",
         overflow: "overflow",
-
-        /// Specifies the treatment of content that overflows the element's box horizontally.
         overflow_x: "overflow-x",
-
-        /// Specifies the treatment of content that overflows the element's box vertically.
         overflow_y: "overflow-y",
-
-        /// Sets the padding on all four sides of the element.
+        overflow_style: "overflow-style",
+        overflow_wrap: "overflow-wrap",
         padding: "padding",
-
-        /// Sets the padding to the bottom side of an element.
         padding_bottom: "padding-bottom",
-
-        /// Sets the padding to the left side of an element.
         padding_left: "padding-left",
-
-        /// Sets the padding to the right side of an element.
         padding_right: "padding-right",
-
-        /// Sets the padding to the top side of an element.
         padding_top: "padding-top",
-
-        /// Insert a page breaks after an element.
+        page: "page",
         page_break_after: "page-break-after",
-
-        /// Insert a page breaks before an element.
         page_break_before: "page-break-before",
-
-        /// Insert a page breaks inside an element.
         page_break_inside: "page-break-inside",
-
-        /// Defines the perspective from which all child elements of the object are viewed.
+        paint_order: "paint-order",
+        pause: "pause",
+        pause_after: "pause-after",
+        pause_before: "pause-before",
         perspective: "perspective",
-
-        /// Defines the origin (the vanishing point for the 3D space) for the perspective property.
         perspective_origin: "perspective-origin",
-
-        /// Specifies how an element is positioned.
-        position: "position",
-
-        /// The pointer-events CSS property sets under what circumstances (if any) a particular graphic element can
-        /// become the target of pointer events.
-        ///
-        /// MDN: [`pointer_events`](https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events)
+        pitch: "pitch",
+        pitch_range: "pitch-range",
+        play_during: "play-during",
         pointer_events: "pointer-events",
-
-        /// Specifies quotation marks for embedded quotations.
+        position: "position",
         quotes: "quotes",
-
-        /// Specifies whether or not an element is resizable by the user.
+        region_fragment: "region-fragment",
         resize: "resize",
-
-        /// Specify the location of the right edge of the positioned element.
+        rest: "rest",
+        rest_after: "rest-after",
+        rest_before: "rest-before",
+        richness: "richness",
         right: "right",
-
-        /// Specifies the gap between the rows in a multi_column element.
-        row_gap: "row-gap",
-
-        /// Specifies the length of the tab character.
+        ruby_align: "ruby-align",
+        ruby_merge: "ruby-merge",
+        ruby_position: "ruby-position",
+        scroll_behavior: "scroll-behavior",
+        scroll_snap_coordinate: "scroll-snap-coordinate",
+        scroll_snap_destination: "scroll-snap-destination",
+        scroll_snap_points_x: "scroll-snap-points-x",
+        scroll_snap_points_y: "scroll-snap-points-y",
+        scroll_snap_type: "scroll-snap-type",
+        shape_image_threshold: "shape-image-threshold",
+        shape_inside: "shape-inside",
+        shape_margin: "shape-margin",
+        shape_outside: "shape-outside",
+        shape_padding: "shape-padding",
+        shape_rendering: "shape-rendering",
+        size: "size",
+        speak: "speak",
+        speak_as: "speak-as",
+        speak_header: "speak-header",
+        speak_numeral: "speak-numeral",
+        speak_punctuation: "speak-punctuation",
+        speech_rate: "speech-rate",
+        stop_color: "stop-color",
+        stop_opacity: "stop-opacity",
+        stress: "stress",
+        string_set: "string-set",
+        stroke: "stroke",
+        stroke_dasharray: "stroke-dasharray",
+        stroke_dashoffset: "stroke-dashoffset",
+        stroke_linecap: "stroke-linecap",
+        stroke_linejoin: "stroke-linejoin",
+        stroke_miterlimit: "stroke-miterlimit",
+        stroke_opacity: "stroke-opacity",
+        stroke_width: "stroke-width",
         tab_size: "tab-size",
-
-        /// Specifies a table layout algorithm.
         table_layout: "table-layout",
-
-        /// Sets the horizontal alignment of inline content.
         text_align: "text-align",
-
-        /// Specifies how the last line of a block or a line right before a forced line break is aligned when  is justify.",
+        text_align_all: "text-align-all",
         text_align_last: "text-align-last",
-
-        /// Specifies the decoration added to text.
+        text_anchor: "text-anchor",
+        text_combine_upright: "text-combine-upright",
         text_decoration: "text-decoration",
-
-        /// Specifies the color of the text_decoration_line.
         text_decoration_color: "text-decoration-color",
-
-        /// Specifies what kind of line decorations are added to the element.
         text_decoration_line: "text-decoration-line",
-
-        /// Specifies the style of the lines specified by the text_decoration_line property
         text_decoration_style: "text-decoration-style",
-
-        /// Indent the first line of text.
+        text_decoration_skip: "text-decoration-skip",
+        text_emphasis: "text-emphasis",
+        text_emphasis_color: "text-emphasis-color",
+        text_emphasis_style: "text-emphasis-style",
+        text_emphasis_position: "text-emphasis-position",
+        text_emphasis_skip: "text-emphasis-skip",
+        text_height: "text-height",
         text_indent: "text-indent",
-
-        /// Specifies the justification method to use when the text_align property is set to justify.
         text_justify: "text-justify",
-
-        /// Specifies how the text content will be displayed, when it overflows the block containers.
+        text_orientation: "text-orientation",
         text_overflow: "text-overflow",
-
-        /// Applies one or more shadows to the text content of an element.
+        text_rendering: "text-rendering",
         text_shadow: "text-shadow",
-
-        /// Transforms the case of the text.
+        text_size_adjust: "text-size-adjust",
+        text_space_collapse: "text-space-collapse",
+        text_spacing: "text-spacing",
         text_transform: "text-transform",
-
-        /// Specify the location of the top edge of the positioned element.
+        text_underline_position: "text-underline-position",
+        text_wrap: "text-wrap",
         top: "top",
-
-        /// Applies a 2D or 3D transformation to an element.
+        touch_action: "touch-action",
         transform: "transform",
-
-        /// Defines the origin of transformation for an element.
+        transform_box: "transform-box",
         transform_origin: "transform-origin",
-
-        /// Specifies how nested elements are rendered in 3D space.
         transform_style: "transform-style",
-
-        /// Defines the transition between two states of an element.
         transition: "transition",
-
-        /// Specifies when the transition effect will start.
         transition_delay: "transition-delay",
-
-        /// Specifies the number of seconds or milliseconds a transition effect should take to complete.
         transition_duration: "transition-duration",
-
-        /// Specifies the names of the CSS properties to which a transition effect should be applied.
         transition_property: "transition-property",
-
-        /// Specifies the speed curve of the transition effect.
-        transition_timing_function: "transition-timing-function",
-
-        /// The user-select CSS property controls whether the user can select text.
-        /// This doesn't have any effect on content loaded as part of a browser's user interface (its chrome), except in textboxes.
-        user_select: "user-select",
-        webkit_user_select: "-webkit-user-select",
-
-        /// Sets the vertical positioning of an element relative to the current text baseline.
+        unicode_bidi: "unicode-bidi",
+        vector_effect: "vector-effect",
         vertical_align: "vertical-align",
-
-        /// Specifies whether or not an element is visible.
         visibility: "visibility",
-
-        /// Specifies how white space inside the element is handled.
+        voice_balance: "voice-balance",
+        voice_duration: "voice-duration",
+        voice_family: "voice-family",
+        voice_pitch: "voice-pitch",
+        voice_range: "voice-range",
+        voice_rate: "voice-rate",
+        voice_stress: "voice-stress",
+        voice_volumn: "voice-volumn",
+        volume: "volume",
         white_space: "white-space",
-
-        /// Specify the width of an element.
+        widows: "widows",
         width: "width",
-
-        /// Specifies how to break lines within words.
+        will_change: "will-change",
         word_break: "word-break",
-
-        /// Sets the spacing between words.
         word_spacing: "word-spacing",
-
-        /// Specifies whether to break words when the content overflows the boundaries of its container.
         word_wrap: "word-wrap",
-
-        /// Specifies a layering or stacking order for positioned elements.
-        z_index	: "z-index",
-
+        wrap_flow: "wrap-flow",
+        wrap_through: "wrap-through",
+        writing_mode: "writing-mode",
+        z_index: "z-index",
     }
     aria_trait_methods! {
         aria_current: "aria-current",