The border-block CSS property is a shorthand property for setting the individual logical block border property values in a single place in the style sheet.

border-block: 1px;
border-block: 2px dotted;
border-block: medium dashed blue;

border-block can be used to set the values for one or more of border-block-width, border-block-style, and border-block-color setting both the start and end in the block dimension at once. The physical borders to which it maps depends on the element's writing mode, directionality, and text orientation. It corresponds to the border-top and border-bottom or border-right, and border-left properties depending on the values defined for writing-mode, direction, and text-orientation.

The borders in the other dimension can be set with border-inline, which sets border-inline-start, and border-inline-end.

Constituent properties

This property is a shorthand for the following CSS properties:



The border-block is specified with one or more of the following, in any order:

The width of the border. See border-width.
The line style of the border. See border-style.
The color of the border. See color.

Formal definition

Initial value as each of the properties of the shorthand:
Applies to all elements
Inherited no
Computed value as each of the properties of the shorthand:
Animation type discrete

Formal syntax

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

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

<rgb()> = rgb( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? ) | rgb( <percentage>#{3} , <alpha-value>? ) | rgb( <number>#{3} , <alpha-value>? )
<rgba()> = rgba( <percentage>{3} [ / <alpha-value> ]? ) | rgba( <number>{3} [ / <alpha-value> ]? ) | rgba( <percentage>#{3} , <alpha-value>? ) | rgba( <number>#{3} , <alpha-value>? )
<hsl()> = hsl( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsl( <hue>, <percentage>, <percentage>, <alpha-value>? )
<hsla()> = hsla( <hue> <percentage> <percentage> [ / <alpha-value> ]? ) | hsla( <hue>, <percentage>, <percentage>, <alpha-value>? )

<alpha-value> = <number> | <percentage>
<hue> = <number> | <angle>


Border with vertical text


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


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

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



Specification Status Comment
CSS Logical Properties and Values Level 1
The definition of 'border-block' in that specification.
Editor's Draft Initial definition

Browser compatibilityUpdate compatibility data on GitHub

Chrome Edge Firefox Internet Explorer Opera Safari
border-block 69 79 66 No 56 No
Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
border-block 69 69 66 48 No 10.0

See also

© 2005–2020 Mozilla and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.