CSS border-block-start Property

Beginner
6 min read
Updated: Oct 2026
3 examples
Live preview

Definition and Usage

The border-block-start property is a shorthand for the logical block-start border. In one declaration it can set border-block-start-width, border-block-start-style, and border-block-start-color.

The physical edge depends on writing-mode, direction, and text-orientation. In the default horizontal writing mode, block-start is usually the top edge, so this property acts like border-top. It applies to all elements and is not inherited.

Standard-track.

Not deprecated and not experimental. Logical border shorthands have been widely available since 2020.

CSS Syntax

syntax.css
border-block-start: 4px || solid || blue | initial | inherit;

Write width, style, and color in any order. You can omit parts. Missing style stays none, so the border stays hidden until a visible style is set.

Property Values

ValueDescriptionTry it
4px solid blueWidth, style, and color togetherTry it
4px dashed blueSame width and color with a dashed styleTry it
4px dotted blueA dotted block-start lineTry it
thick double blueA thick double line using a width keywordTry it
thin solid blueA thin solid lineTry it
initialResets the longhands to medium, none, and currentcolorTry it
inheritInherits this property from the parent elementTry it

How to Use border-block-start

Put width, style, and color in one line on the block-start edge.

  1. Choose a visible style such as solid or dashed.
  2. Add a width such as 4px or thick.
  3. Add a color that contrasts with the background.
  4. Write them together: border-block-start: 4px solid blue;
PieceRequired?Role
StyleTo see a lineWithout a visible style, the border stays hidden
WidthOptionalDefaults to medium if omitted
ColorOptionalDefaults to currentcolor if omitted

Live Preview

Only border-block-start changes. In horizontal writing, block-start is usually the top edge.

Width, style, and color are set together by the shorthand.

Result

Block start

border-block-start: 4px solid blue

CSS Examples

Each snippet uses only the shorthand. No extra layout CSS. Use Try It Yourself for a live editor.

Example 1 — Solid Block-Start Line

One shorthand sets width, style, and color on the block-start edge.

CSS
<style>
  p {
    border-block-start: 4px solid blue;
  }
</style>

<p>Block start</p>
Try It Yourself

How It Works

  1. Use the shorthand. border-block-start sets the three longhands at once.
  2. Read the three parts. 4px is the width. solid is the style. blue is the color.
  3. Order is flexible. The same result works as solid 4px blue or another order.
  4. Find the edge. With default horizontal writing, block-start is usually the top of the paragraph.

Example 2 — Dashed Accent

Same width and color, with a dashed style instead of solid.

CSS
<style>
  p {
    border-block-start: 4px dashed blue;
  }
</style>

<p>Block start</p>
Try It Yourself

How It Works

  1. Keep one declaration. The shorthand still carries width, style, and color.
  2. Change only the style. dashed replaces solid. Width and color stay the same idea.
  3. Compare the pattern. The line is still on the block-start edge. Only the stroke changes.
  4. Reuse the pattern. Swap in dotted or double the same way.

Example 3 — Vertical Writing Mode

The shorthand stays on the logical block-start side when the writing mode flips.

CSS
<style>
  p {
    writing-mode: vertical-rl;
    border-block-start: 8px solid blue;
  }
</style>

<p>Block start</p>
Try It Yourself

How It Works

  1. Flip the block axis. writing-mode: vertical-rl makes lines run vertically.
  2. Keep the logical shorthand. The same border-block-start still targets block-start.
  3. Watch the physical edge move. The line is no longer locked to the top of the screen box.
  4. Why logical borders help. One rule can follow writing mode instead of rewriting border-top or border-right.

Edge Cases & Pitfalls

If the line is missing, the style part of the shorthand is usually why.

style

Width alone is not enough

border-block-start: 4px keeps style as none, so nothing shows. Include a visible style such as solid.

top

Not the same as border-top

border-top always hits the physical top. This property follows the block-start side when writing-mode changes.

long

A longhand can override one part

After the shorthand, border-block-start-color can change only the color. Order in the stylesheet still matters.

reset

The shorthand resets all three longhands

Writing border-block-start: solid sets width back to medium and color back to currentcolor, not only the style.

pair

Block-end is the opposite edge

Use border-block-end for the other block side. Do not mix them up with inline-start and inline-end.

Browser Support

border-block-start is a browser layout property. Node.js, Deno, and Bun do not apply it.

✓ Baseline · Widely available since 2020

border-block-start

Chrome 69+, Firefox 41+, Safari 12.1+, Edge 79+. Internet Explorer has no support.

97% modern browsers
Google Chrome 69+
Full support
Mozilla Firefox 41+
Full support
Apple Safari 12.1+
Full support
Microsoft Edge 79+
Full support
Opera 56+
Full support
Samsung Internet 10.1+
Full support
Internet Explorer No support
None
border-block-start Widely supported

Bottom line: Safe for modern browsers. For Internet Explorer, use a physical fallback such as border-top when you only need horizontal layouts.

Key Takeaways

  • Role: shorthand for block-start width, style, and color.
  • Style: include a visible keyword, or the border stays hidden.
  • Logical: follows writing mode. Not locked to the physical top.
  • Longhands: width, style, and color can still be set one by one.

One line: border-block-start paints the block-start edge; writing mode chooses which physical side that is.

Frequently Asked Questions

It is a shorthand that sets the width, style, and color of the logical block-start border. In the default horizontal writing mode, that is usually the top edge.
As a shorthand it resets to medium none currentcolor. With style none, no border shows until you set a visible style such as solid.
border-top always styles the physical top edge. border-block-start follows writing-mode, direction, and text-orientation, so it stays on the logical block-start side.
It sets border-block-start-width, border-block-start-style, and border-block-start-color. You can write one, two, or all three values in any order.
If the style is missing or none, there is no line. Include a visible style such as solid, and use a color that contrasts with the background.
Chrome 69+, Firefox 41+, Safari 12.1+, and Edge 79+ support it. Internet Explorer does not. It is a browser layout property, not a Node.js feature.

Next: border-block-start-color

Change only the color of the logical block-start border.

border-block-start-color tutorial →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

8 people found this page helpful