This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.


The -webkit-border-before CSS property is a shorthand property for setting the individual logical block start border property values in a single place in the style sheet. -webkit-border-before can be used to set the values for one or more of: -webkit-border-before-width, -webkit-border-before-style, and -webkit-border-before-color. It maps to a physical border depending on the element's writing mode, directionality, and text orientation. It corresponds to the border-top, border-right, border-bottom, or border-left property depending on the values defined for writing-mode, direction, and text-orientation.

It relates to -webkit-border-after, -webkit-border-start, and -webkit-border-end, which define the other borders of the element.

This property is on the standard track as border-block-start.

Initial valueas each of the properties of the shorthand:
Applies toall elements
Percentagesas each of the properties of the shorthand:
Computed valueas each of the properties of the shorthand:
Canonical orderthe unique non-ambiguous order defined by the formal grammar


/* Border values */
-webkit-border-before: 1px;
-webkit-border-before: 2px dotted;
-webkit-border-before: medium dashed blue;

/* Global values */
-webkit-border-before: inherit;
-webkit-border-before: initial;
-webkit-border-before: unset;


One or more of the following, in any order:

See border-width
See border-style
See color

Formal syntax

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

<color> = <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>

<rgb()> = rgb( <rgb-component>#{3} )
<rgba()> = rgba( <rgb-component>#{3} , <alpha-value> )
<hsl()> = hsl( <hue>, <percentage>, <percentage> )
<hsla()> = hsla( <hue>, <percentage>, <percentage>, <alpha-value> )
<named-color> = <ident>
<deprecated-system-color> = ActiveBorder | ActiveCaption | AppWorkspace | Background | ButtonFace | ButtonHighlight | ButtonShadow | ButtonText | CaptionText | GrayText | Highlight | HighlightText | InactiveBorder | InactiveCaption | InactiveCaptionText | InfoBackground | InfoText | Menu | MenuText | Scrollbar | ThreeDDarkShadow | ThreeDFace | ThreeDHighlight | ThreeDLightShadow | ThreeDShadow | Window | WindowFrame | WindowText

<rgb-component> = <integer> | <percentage>
<alpha-value> = <number>
<hue> = <number>


HTML Content

  <p class="exampleText">Example text</p>

CSS Content

div {
  background-color: yellow;
  width: 120px;
  height: 120px;

.exampleText {
  writing-mode: vertical-rl;
  -webkit-border-before: 5px dashed blue;


Not part of any specification, though it relates to the border-block-start property.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (Yes) Not supported Not supported (Yes) ?
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support ? Not supported Not supported ? ?

See also

Document Tags and Contributors

 Contributors to this page: mrenty, Sebastianz, kscarfone, velvel53, Sheppy, mohan589
 Last updated by: mrenty,