Working Draft · css-ui

CSS Basic User Interface

25 properties defined by this specification, 19 of them known to at least one browser (the others are badged Not in any browser yet).

Each feature in detail

-webkit-appearance

Property Not in any browser yet

No prose in the spec's definition and no MDN page yet: the spec link below is the only description.

Syntax

none | auto | base | base-select | <compat-auto> | <compat-special>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

-webkit-user-select

Property Not in any browser yet

No prose in the spec's definition and no MDN page yet: the spec link below is the only description.

Syntax

auto | text | none | contain | all

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

accent-color

Property Limited availability Modern CSS: accent-color

MDN The accent-color CSS property sets the accent color for user-interface controls generated by some elements.

Live preview Example from MDN
.container > div {
  display: flex;
  align-items: center;
}

#example-element {
  width: 40px;
  height: 40px;
}

#example-label {
  margin-left: 10px;
  font-size: x-large;
}

Syntax

auto | <color>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
all elements
Inherited
yes
Percentages
N/A
Computed value
the keyword auto or a computed color
Canonical order
per grammar
Animation type
by computed value type

Browser support

First browser version supporting accent-color
Chrome 93
Edge 93
Firefox 92
Safari 26.2
Chrome Android 93
Safari iOS 26.2

First version with support, from MDN browser-compat-data.

appearance

Property Baseline: widely availablesince September 2024 Modern CSS: Customizable <select>

MDN The appearance CSS property specifies the rendered appearance of replaced UI widget elements such as form controls. Most commonly, such elements are given native, platform-specific styling based on the operating system's theme, or a primitive appearance with styles that can be overridden using CSS.

Live preview Example from MDN
input,
button {
  appearance: inherit;
}

Syntax

none | auto | base | base-select | <compat-auto> | <compat-special>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
none
Applies to
all elements
Inherited
no
Percentages
n/a
Computed value
specified keyword
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting appearance
Chrome 84
Edge 84
Firefox 80
Safari 15.4
Chrome Android 84
Safari iOS 15.4

First version with support, from MDN browser-compat-data.

caret

Property

MDN The caret CSS shorthand property sets the appearance and behavior of the insertion caret in a single declaration.

Live preview Example from MDN
div {
  text-align: left;
}

#example-element {
  font-size: 1.2rem;
  padding: 8px;
  width: 300px;
}

Syntax

<'caret-color'> || <'caret-animation'> || <'caret-shape'>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
text or elements that accept text input
Inherited
yes
Percentages
N/A
Computed value
see individual properties
Canonical order
per grammar
Animation type
see individual properties
Longhands
caret-color, caret-animation, caret-shape

caret-animation

Property Experimental

MDN The caret-animation CSS property is used to enable or disable the blinking behavior of the insertion caret, the visible marker that appears in editable elements to indicate where the next character will be inserted or deleted.

Live preview Example from MDN
p {
  caret-color: red;
}

p:first-of-type {
  caret-animation: auto;
}

p:last-of-type {
  caret-animation: manual;
}

Syntax

auto | manual

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
text or elements that accept text input
Inherited
yes
Percentages
N/A
Computed value
specified keyword
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting caret-animation
Chrome 140
Edge 140
Firefox No
Safari No
Chrome Android 140
Safari iOS No

First version with support, from MDN browser-compat-data.

caret-color

Property Baseline: widely availablesince July 2022

MDN The caret-color CSS property sets the color of the insertion caret, sometimes referred to as the text input cursor. This is the visible marker appearing at the insertion point where the next character typed will be added or where the next character deleted will be removed.

Live preview Example from MDN
#example-element {
  font-size: 1.2rem;
}

Syntax

auto | <color> [auto | <color>]?

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
text or elements that accept text input
Inherited
yes
Percentages
N/A
Computed value
The computed value for auto is auto. For <color> values, see CSS Color 4 § 15. Resolving <color> Values.
Canonical order
per grammar
Animation type
by computed value

Browser support

First browser version supporting caret-color
Chrome 57
Edge 79
Firefox 53
Safari 11.1
Chrome Android 57
Safari iOS 11.3

First version with support, from MDN browser-compat-data.

caret-shape

Property Limited availability Experimental Modern CSS: caret-shape

MDN The caret-shape CSS property sets the shape of the insertion caret, the visible marker that appears in editable elements to indicate where the next character will be inserted or deleted.

Live preview Example from MDN
div {
  text-align: left;
}

#example-element {
  font-size: 1.2rem;
  padding: 8px;
  width: 300px;
}

Syntax

auto | bar | block | underscore

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
text or elements that accept text input
Inherited
yes
Percentages
N/A
Computed value
specified keyword
Canonical order
per grammar
Animation type
by computed value

Browser support

First browser version supporting caret-shape
Chrome 144
Edge 144
Firefox No
Safari No
Chrome Android 144
Safari iOS No

First version with support, from MDN browser-compat-data.

cursor

Property Limited availability

MDN The cursor CSS property sets the mouse cursor, if any, to show when the mouse pointer is over an element.

Live preview Example from MDN
#example-element {
  display: flex;
  background-color: #1766aa;
  color: white;
  height: 180px;
  width: 360px;
  justify-content: center;
  align-items: center;
  font-size: 14pt;
  padding: 5px;
}

Syntax

[<cursor-image>,]* <cursor-predefined>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
all elements
Inherited
yes
Percentages
N/A
Computed value
as specified, except with any relative URLs converted to absolute
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting cursor
Chrome 1
Edge 12
Firefox 1
Safari 1.2
Chrome Android 18
Safari iOS 13.4

First version with support, from MDN browser-compat-data.

interactivity

Property Limited availability Experimental Modern CSS: interactivity

MDN The interactivity CSS property specifies whether an element and its descendant nodes are set to be inert.

Live preview Example from MDN
.inert {
  interactivity: inert;
  background-color: lightpink;
}

Syntax

auto | inert

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
all elements
Inherited
yes
Percentages
N/A
Computed value
as specified
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting interactivity
Chrome 135
Edge 135
Firefox No
Safari No
Chrome Android 135
Safari iOS No

First version with support, from MDN browser-compat-data.

interest-delay

Property Limited availability Experimental Modern CSS: Interest invokers

MDN The interest-delay CSS property specifies the delay between the user showing interest in an interest invoker element and the HTMLElement.interest_event event firing, and the delay between the user losing interest and the HTMLElement.loseinterest_event event firing.

Live preview Example from MDN
.delay {
  interest-delay: 1s 2s;
}

Syntax

<'interest-delay-start'>{1,2}

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
see individual properties
Applies to
see individual properties
Inherited
see individual properties
Percentages
see individual properties
Computed value
see individual properties
Canonical order
per grammar
Animation type
see individual properties
Longhands
interest-delay-start, interest-delay-end

Browser support

First browser version supporting interest-delay
Chrome 142
Edge 142
Firefox No
Safari No
Chrome Android 142
Safari iOS No

First version with support, from MDN browser-compat-data.

interest-delay-end

Property Limited availability Experimental Modern CSS: Interest invokers

MDN The interest-delay-end CSS property specifies the delay between the user losing interest in an interest invoker element and the HTMLElement.loseinterest_event event firing.

Live preview Example from MDN
.delay {
  interest-delay-end: 2s;
}

Syntax

normal | <time>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
normal
Applies to
all elements
Inherited
yes
Percentages
n/a
Computed value
the keyword normal or a computed time
Canonical order
per grammar
Animation type
by computed value type

Browser support

First browser version supporting interest-delay-end
Chrome 142
Edge 142
Firefox No
Safari No
Chrome Android 142
Safari iOS No

First version with support, from MDN browser-compat-data.

interest-delay-start

Property Limited availability Experimental Modern CSS: Interest invokers

MDN The interest-delay-start CSS property specifies the delay between the user showing interest in an interest invoker element and the HTMLElement.interest_event event firing.

Live preview Example from MDN
.delay {
  interest-delay-start: 2s;
}

Syntax

normal | <time>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
normal
Applies to
all elements
Inherited
yes
Percentages
n/a
Computed value
the keyword normal or a computed time
Canonical order
per grammar
Animation type
by computed value type

Browser support

First browser version supporting interest-delay-start
Chrome 142
Edge 142
Firefox No
Safari No
Chrome Android 142
Safari iOS No

First version with support, from MDN browser-compat-data.

outline

Property Baseline: widely availablesince September 2025 Modern CSS: outline

MDN The outline CSS shorthand property sets the style, color, and width of an element's outline.

Live preview Example from MDN
#example-element {
  padding: 0.75rem;
  width: 80%;
  height: 100px;
}

Syntax

<'outline-width'> || <'outline-style'> || <'outline-color'>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
see individual properties
Applies to
all elements
Inherited
no
Percentages
N/A
Computed value
see individual properties
Canonical order
per grammar
Animation type
see individual properties
Longhands
outline-width, outline-style, outline-color

Browser support

First browser version supporting outline
Chrome 94
Edge 94
Firefox 88
Safari 16.4
Chrome Android 94
Safari iOS 16.4

First version with support, from MDN browser-compat-data.

outline-color

Property Baseline: widely availablesince October 2019

MDN The outline-color CSS property sets the color of an element's outline.

Live preview Example from MDN
#example-element {
  outline: 0.75em solid;
  padding: 0.75em;
  width: 80%;
  height: 100px;
}

Syntax

auto | <'border-top-color'>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
all elements
Inherited
no
Percentages
N/A
Computed value
see below
Canonical order
per grammar
Animation type
by computed value

Browser support

First browser version supporting outline-color
Chrome 1
Edge 12
Firefox 1.5
Safari 1.2
Chrome Android 18
Safari iOS 1

First version with support, from MDN browser-compat-data.

outline-offset

Property Baseline: widely availablesince October 2019

MDN The outline-offset CSS property sets the amount of space between an outline and the edge or border of an element.

Live preview Example from MDN
#example-element {
  border: 2px solid crimson;
  outline: 0.75em solid;
  padding: 0.75em;
  width: 80%;
  height: 100px;
}

Syntax

<length>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
0
Applies to
all elements
Inherited
no
Percentages
N/A
Computed value
absolute length
Canonical order
per grammar
Animation type
by computed value

Browser support

First browser version supporting outline-offset
Chrome 1
Edge 15
Firefox 1.5
Safari 1.2
Chrome Android 18
Safari iOS 1

First version with support, from MDN browser-compat-data.

outline-style

Property Baseline: widely availablesince October 2019

MDN The outline-style CSS property sets the style of an element's outline. An outline is a line that is drawn around an element, outside the border.

Live preview Example from MDN
#example-element {
  outline: 0.75em solid;
  padding: 0.75em;
  width: 80%;
  height: 100px;
}

Syntax

auto | <outline-line-style>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
none
Applies to
all elements
Inherited
no
Percentages
N/A
Computed value
specified keyword
Canonical order
per grammar
Animation type
by computed value

Browser support

First browser version supporting outline-style
Chrome 1
Edge 12
Firefox 1.5
Safari 1.2
Chrome Android 18
Safari iOS 1

First version with support, from MDN browser-compat-data.

outline-width

Property Baseline: widely availablesince October 2019

MDN The CSS outline-width property sets the thickness of an element's outline. An outline is a line that is drawn around an element, outside the border.

Live preview Example from MDN
#example-element {
  outline: 0.75em solid;
  padding: 0.75em;
  width: 80%;
  height: 100px;
}

Syntax

<line-width>

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
medium
Applies to
all elements
Inherited
no
Percentages
N/A
Computed value
absolute length, snapped as a border width
Canonical order
per grammar
Animation type
by computed value

Browser support

First browser version supporting outline-width
Chrome 1
Edge 12
Firefox 1.5
Safari 1.2
Chrome Android 18
Safari iOS 1

First version with support, from MDN browser-compat-data.

resize

Property Limited availability Modern CSS: resize (CSS property)

MDN The resize CSS property sets whether an element is resizable, and if so, in which directions.

Live preview Example from MDN
#example-element {
  background: linear-gradient(135deg, cyan 0%, cyan 94%, white 95%);
  border: 3px solid #c5c5c5;
  overflow: auto;
  width: 250px;
  height: 250px;
  font-weight: bold;
  color: black;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

Syntax

none | both | horizontal | vertical | block | inline

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
none
Applies to
elements that are scroll containers and optionally replaced elements such as images, videos, and iframes
Inherited
no
Percentages
N/A
Computed value
specified keyword
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting resize
Chrome 1
Edge 79
Firefox 4
Safari 3
Chrome Android 18
Safari iOS No

First version with support, from MDN browser-compat-data.

user-select

Property Limited availability

MDN 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.

Live preview Example from MDN
#example-element {
  font-size: 1.5rem;
}

Syntax

auto | text | none | contain | all

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
auto
Applies to
all elements, and optionally to the ::before and ::after pseudo-elements
Inherited
no
Percentages
n/a
Computed value
specified keyword
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting user-select
Chrome 54
Edge 79
Firefox 69
Safari Preview
Chrome Android 54
Safari iOS 3 (-webkit- prefix)

First version with support, from MDN browser-compat-data.

window-drag

Property Limited availability Experimental Modern CSS: window-drag

No prose in the spec's definition and no MDN page yet: the spec link below is the only description.

Syntax

none | move

Formal grammar from the specification, as webref extracts it: the latest level's definition, sometimes ahead of what browsers implement.

Definition

Initial
none
Applies to
all elements
Inherited
yes
Percentages
N/A
Computed value
as specified
Canonical order
per grammar
Animation type
discrete

Browser support

First browser version supporting window-drag
Chrome 152
Edge 152
Firefox No
Safari No
Chrome Android No
Safari iOS No

First version with support, from MDN browser-compat-data.