A border appears only when the style is not none. Width defaults to medium and color to currentColor when omitted. For every side at once, use border. For a leading edge that follows text direction, use border-inline-start.
Baseline · Widely available.
Not deprecated and not experimental. The border-left shorthand has been supported across browsers since the early days of CSS.
Choose double. The browser draws two lines with a gap between them.
Give it room.8px is wide enough for both lines and the space between.
Set the color. Teal fills both left lines.
Still left-only. The shorthand applies the effect to the physical left edge alone.
Edge Cases & Pitfalls
If the left border disappears or looks wrong, check these first.
style
No style means no left border
border-left: 4px #000 still looks empty because style defaults to none. Always include solid or another style keyword.
reset
The shorthand resets omitted parts
Writing border-left: thick green after border-left-style: dotted resets style to none. Include the style in the shorthand, or set longhands after it.
logical
Physical left is not always “start”
border-left stays on the screen’s left edge. In RTL layouts, use border-inline-start when the line should follow the leading text edge instead.
size
Borders add to the box by default
With the default content-box sizing, a left border grows the element’s outer width. Use box-sizing: border-box to keep width inclusive of the border.
sides
Need every side the same?
Use border instead. Reach for border-left when only the left edge should change.
Compatibility
Browser Support
border-left is a browser CSS property for the box model. Node.js, Deno, and Bun do not apply it.
✓ Baseline · Widely available
border-left
Supported in all modern browsers and Internet Explorer. The side shorthand has been part of CSS since the earliest versions.
100%Universal support
Google ChromeAll versions
Full support
Mozilla FirefoxAll versions
Full support
Apple SafariAll versions
Full support
Microsoft EdgeAll versions
Full support
OperaAll versions
Full support
Samsung InternetAll versions
Full support
Internet ExplorerAll versions
Full support
border-leftWidely supported
Bottom line: Safe everywhere for left-edge width, style, and color. Prefer the shorthand when the left side is the only edge you need. It is not a runtime API.
Remember
Key Takeaways
Role: one shorthand for width, style, and color on the physical left edge.
Style required: initial style is none. Width or color alone will not draw.
Physical edge: always the screen left — not writing-direction aware like border-inline-start.
Shorthand reset: omitted parts fall back to defaults, including style none.
One line: use border-left when only the left edge needs a border — and always include a style keyword.
Frequently Asked Questions
It is a shorthand that sets border-left-width, border-left-style, and border-left-color on the physical left edge in one declaration.
A visible style is required. The initial style is none, so width or color alone will not draw a line. Use solid, dashed, dotted, or another style.
You can write width, style, and color in any order. The common pattern is width then style then color, for example border-left: 4px solid black.
border-left always targets the physical left edge. border-inline-start follows writing direction, so in RTL text it usually maps to the right side.
Yes. Like other border shorthands, omitted parts reset to their defaults. If you omit style, it becomes none and the border disappears.
It is Baseline Widely available and works in all modern browsers and Internet Explorer. It is a browser CSS property, not a Node.js feature.