CSS border-block-start-style Property

Beginner
⏱️ 5 min read
📚 Updated: Jun 2026
🎯 4 Examples
Logical CSS & Borders

What You’ll Learn

The border-block-start-style property defines the line style of the block-start border on an element. In horizontal writing, that usually means the top border style.

01

Block-Start Style

One logical edge only.

02

solid

Continuous line.

03

dashed / dotted

Soft dividers.

04

3D Styles

groove, ridge, inset.

05

none Default

No border by default.

06

Writing Modes

Adapts to text flow.

Definition and Usage

The border-block-start-style CSS property is part of the Logical Properties and Values specification. It sets the style of the border on the block-start side of an element. In left-to-right writing modes like English, block-start usually corresponds to the top edge.

This property is especially useful when designing layouts that need to adapt to different writing directions. It lets you control border appearance based on logical content flow instead of fixed physical sides.

💡
Beginner Tip

A border only appears when border-block-start-style is not none. Pair it with border-block-start-width and border-block-start-color, or use border-block-start: 3px solid #3498db; as shorthand.

📝 Syntax

The syntax for border-block-start-style is straightforward:

syntax.css
selector {
  border-block-start-style: <border-style>;
}

Basic Example

border-block-start-style.css
.solid-border {
  border-block-start-style: solid;
  border-block-start-width: 4px;
  border-block-start-color: blue;
}

The style value refers to the border line type, such as solid, dashed, or dotted.

Syntax Rules

  • The initial value is none, which hides the block-start border.
  • Common values include solid, dashed, and dotted.
  • 3D-style keywords include groove, ridge, inset, and outset.
  • Pair with width and color longhands, or use the border-block-start shorthand.
  • Related longhands: border-block-start-width and border-block-start-color.

⚡ Quick Reference

QuestionAnswer
Initial valuenone
Applies toBlock-end border style only
InheritedNo
AnimatableNo
Common useSection headers, card accents, top rules, callout borders

Default Value

The default value of border-block-start-style is none, meaning no block-start border is displayed until you choose a visible style.

💎 Property Values

The border-block-start-style property accepts standard CSS border style keywords.

ValueDescription
noneNo border is displayed
solidA single solid line
dashedA series of dashed lines
dottedA series of dotted lines
doubleTwo solid lines with space between them
grooveA 3D grooved border that looks carved in
ridgeA 3D ridged border that looks raised out
insetA 3D inset border that looks embedded
outsetA 3D outset border that looks raised
hiddenSame as none, but can still affect table layout
previewsolid
previewdotted
previewdashed
previewdouble
previewgroove
previewridge
previewinset
previewoutset

Block-Start Style and Writing Modes

The block-start edge follows the block axis, so the same style rule adapts when writing mode changes.

Horizontal writing

Dashed block-start (top) border

Vertical writing (vertical-rl)

Logical dashed block-start

border-block-start-style vs border-top-style

PropertyTargetsBest for
border-block-start-styleLogical block-start border styleMultilingual and writing-mode-aware layouts
border-top-stylePhysical top border styleSimple horizontal pages with fixed top accents
border-block-startWidth, style, and color togetherWhen you want one shorthand for the full block-start border

👀 Live Preview

A box with a solid blue block-start border style:

This element has a solid block-start border style.

Uses border-block-start-style: solid; with width and color longhands.

Examples Gallery

Try border-block-start-style with solid, dashed, dotted styles, and vertical writing mode.

📚 Basic Block-Start Styles

Set the block-start border style with width and color longhands so the line is visible.

Example 1 — Solid Block-Start Border

Apply a solid border to the block-start side of a paragraph.

border-block-start-style-solid.html
<style>
  p {
    border-block-start-style: solid;
    border-block-start-width: 3px;
    border-block-start-color: #3498db;
    padding-block-start: 0.75rem;
  }
</style>

<p>
  This paragraph has a solid border on the block-start side.
</p>
Try It Yourself

How It Works

solid creates a continuous line on the block-start edge. Width and color make the border visible and styled.

Example 2 — Dashed Block-Start Border

Use a dashed style for a softer section divider on the block-start edge.

border-block-start-style-dashed.css
.section {
  border-block-start-style: dashed;
  border-block-start-width: 2px;
  border-block-start-color: #64748b;
  padding-block-start: 1rem;
}
Try It Yourself

How It Works

dashed breaks the block-start border into short line segments, which works well for subtle content separation.

🎨 More Border Styles

Try dotted lines and compare style keywords on the same logical block-start edge.

Example 3 — Dotted Block-Start Border

Compare dashed and dotted styles on block-start borders.

border-block-start-style-compare.css
.dashed {
  border-block-start: 2px dashed #2563eb;
}
.dotted {
  border-block-start-style: dotted;
  border-block-start-width: 2px;
  border-block-start-color: #dc2626;
}
Try It Yourself

How It Works

dotted uses round dots instead of dashes. Both styles target only the block-start edge.

Example 4 — Block-Start Style in Vertical Writing Mode

See how block-start border style follows the writing mode instead of staying on the physical top.

border-block-start-style-vertical.css
.vertical-panel {
  writing-mode: vertical-rl;
  border-block-start-style: solid;
  border-block-start-width: 3px;
  border-block-start-color: #7c3aed;
  padding: 1rem;
}
Try It Yourself

How It Works

With vertical writing, block-start moves with the block axis. The same style keyword still applies to the correct logical edge.

🧠 How border-block-start-style Works

1

You choose a line style

Set solid, dashed, dotted, or another border style keyword.

Style rule
2

You add width and color

Pair the style with border-block-start-width and border-block-start-color.

Border setup
3

The browser draws block-start only

Only the logical block-start edge uses that line style based on writing mode.

Logical mapping
=

Styled block-start divider

Your element gets a clear visual separator on the logical end edge.

Universal Browser Support

border-block-start-style is supported in all modern browsers. Internet Explorer does not support logical border properties.

Baseline · Modern browsers

Logical border styles in today’s browsers

Chrome, Firefox, Safari, Edge, and Opera support border-block-start-style in current versions.

96% Modern browser support
Google Chrome69+ · Desktop & Mobile
Full support
Mozilla Firefox66+ · Desktop & Mobile
Full support
Apple Safari12.1+ · macOS & iOS
Full support
Microsoft Edge79+ · Chromium
Full support
Opera56+ · Modern versions
Full support

Fallback behavior

For older browsers, use border-top-style as a physical fallback in horizontal layouts.

💻
Internet Explorer No support · Use border-top-style instead
None
border-block-start-style property 96% supported

Bottom line: Use border-block-start-style confidently in modern logical layout systems.

Conclusion

The border-block-start-style property is a versatile tool for web developers, especially when creating layouts that need to adapt to different writing directions. By controlling the style of the block-start border, you can add subtle design touches that enhance the overall look and feel of your web pages.

Experiment with different styles such as solid, dashed, and dotted to see how this property can be used in your projects.

💡 Best Practices

✅ Do

  • Use solid for clear accents on block-start
  • Pair style with width and color longhands for predictable results
  • Try dashed or dotted for softer separators
  • Use the border-block-start shorthand when setting all three parts
  • Test block-start styles in vertical writing mode when needed

❌ Don’t

  • Leave the value at none and expect a visible border
  • Assume block-start always equals physical top
  • Use heavy 3D styles everywhere in modern flat UI
  • Mix physical and logical style properties without a reason
  • Forget width when using thin styles like dotted or dashed

Key Takeaways

Knowledge Unlocked

Five things to remember about border-block-start-style

Use these points when styling the logical block-start edge.

5
Core concepts
02

none Default

Hidden by default.

Default
📝03

solid / dashed

Most common styles.

Values
⚙️04

Needs Width

Pair with longhands.

Setup
🔄05

Writing Mode

Adapts to flow.

Context

❓ Frequently Asked Questions

The border-block-start-style property sets the line style of the border on the block-start side of an element. In horizontal writing, that is usually the top border style.
The initial value is none, which means no block-start border is displayed until you set a visible style such as solid or dashed.
If the value is none, no border appears. You also need border-block-start-width greater than zero and usually a color, or use the border-block-start shorthand.
border-top-style always styles the physical top edge. border-block-start-style follows the writing mode and stays on the logical block-start side.
solid, dashed, and dotted are the most common for card accents and header rules. double, groove, ridge, inset, and outset create stronger visual effects.

Practice in the Live Editor

Open the HTML editor, try border-block-start-style, and preview logical block-start borders instantly.

HTML Editor →

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.

5 people found this page helpful