CSS outline-style
The CSS outline-style
property is used to specify the style 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.
Syntax
The outline-style
property accepts most of the same values that border-style
accepts, with a couple of exceptions (noted below).
Details on these values below.
Possible Values
auto
- Specifies that the user agent can render a custom outline style. This could be an outline in the default style for the platform, or some other style that's not covered by CSS.
none
- No outline. Color and width are ignored.
dotted
- A series of round dots.
dashed
- A series of square-ended dashes.
solid
- A single line segment.
double
- Two parallel solid lines with some space between them. When using this value, the
border-width
value determines the sum of the lines and the space between them. groove
- Looks as if it were carved in the canvas.
ridge
- Looks as if it were coming out of the canvas.
inset
- Looks as if the content on the inside of the border is sunken into the canvas. Treated as
ridge
in the collapsing border model. outset
- Looks as if the content on the inside of the border is coming out of the canvas. Treated as
groove
in the collapsing border model.
In addition, all CSS properties also accept the following CSS-wide keyword values as the sole component of their property value:
initial
- Represents the value specified as the property's initial value.
inherit
- Represents the computed value of the property on the element's parent.
unset
- This value acts as either
inherit
orinitial
, 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
none
- Applies To
- All elements
- Inherited?
- No
- Media
- Visual
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
- CSS Basic User Interface Module Level 3 (CSS3 UI) (W3C Candidate Recommendation, 02 March 2017)
- CSS Level 2.1 (W3C Recommendation 07 June 2011)