CSS outline-color

The CSS outline-color property is used to specify the color of an element's outline.

Unlike an element's border (e.g. set using border or its associated properties), an element's outline does not take up extra space and it can be non-rectangular.

The outline is always on top of a box, and it does not influence the position or size of the box, or of any other boxes. Therefore, displaying or suppressing outlines does not cause reflow or overflow.

User agents typically render an outline on elements in the :focus state.


Possible Values


This value specifies the color of the outline. It can be any valid color.


This value performs a color inversion on the pixels on the screen. This is to ensure the focus border is visible, regardless of the background color.

If the user agent does not support the invert value, the initial value of the outline-color property is the currentColor keyword.

In addition, all CSS properties also accept the following CSS-wide keyword values as the sole component of their property value:

Represents the value specified as the property's initial value.
Represents the computed value of the property on the element's parent.
This value acts as either inherit or initial, depending on whether the property is inherited or not. In other words, it sets all properties to their parent value if they are inheritable or to their initial value if not inheritable.

General Information

Initial Value
Applies To
All elements
Visual, Interactive
Yes (see example)

Example Code

Accessibility Considerations

The CSS spec warns against removing the outline on elements in the :focus state:

Keyboard users, in particular people with disabilities who may not be able to interact with the page in any other fashion, depend on the outline being visible on elements in the :focus state, thus authors must not make the outline invisible on such elements without making sure an alternative highlighting mechanism is provided.

Official Specifications