The inset-inline-start property controls the offset of an element’s inline-start edge using logical CSS. In horizontal LTR pages, that usually means the left edge.
01
Inline-Start
Logical edge.
02
auto
Default value.
03
Longhand
One side only.
04
RTL
Adapts direction.
05
absolute
Common use.
06
inset-inline
Shorthand pair.
Fundamentals
Introduction
The inset-inline-start property in CSS specifies the offset from the start of the inline axis of an element’s containing block. In left-to-right (LTR) writing mode, that is usually the left side; in right-to-left (RTL) writing mode, it is usually the right side.
This property is part of the Logical Properties and Values specification, which provides more adaptable ways to control layout, especially for internationalized websites.
Definition and Usage
Apply inset-inline-start on positioned elements when you need to offset or anchor the inline-start side only. Use it for side panels, labels, icons, or any UI pinned to the logical start of the inline axis.
💡
Beginner Tip
Think of inset-inline-start as logical left in horizontal LTR writing mode. Pair it with inset-inline-end or use the inset-inline shorthand when you need both inline edges.
Foundation
📝 Syntax
The syntax for the inset-inline-start property accepts a single value:
The default value of the inset-inline-start property is auto, which means the browser determines the inline-start offset from other positioning rules.
Syntax Rules
Longhand for the inline-start side of the inset-inline shorthand.
Only works when position is not static.
The property is not inherited.
Accepts length, percentage, and auto values.
In horizontal LTR writing mode, maps to left.
Cheat Sheet
⚡ Quick Reference
Question
Answer
Initial value
auto
Applies to
Positioned elements
Inherited
No
Animatable
Yes, as a length
Horizontal LTR writing mode
Behaves like left
Reference
💎 Property Values
Value
Description
length
A fixed offset such as 20px, 1em, or 1rem.
percentage
An offset relative to the containing block size on the inline axis.
auto
Lets the browser calculate the inline-start offset automatically.
Logical Layout
Inline-Start and Text Direction
Logical inset properties follow the document’s direction instead of fixed physical sides:
Horizontal LTR (dir="ltr") — inline-start is usually the physical left edge.
Horizontal RTL (dir="rtl") — inline-start moves to the opposite side, but the same CSS rule still works.
Related longhands — inset-inline-end controls the opposite inline edge; inset-inline sets both in one rule.
🔄
When to Use the Longhand
Use inset-inline-start alone when only the inline-start edge needs a fixed offset. Use inset-inline when both inline-start and inline-end should be set together.
Preview
👀 Live Preview
An absolutely positioned box with inset-inline-start: 20px in horizontal LTR writing mode:
Hands-On
Examples Gallery
Offset from the inline-start edge, anchor a side panel, stretch with inline-end, and see behavior in RTL direction.
🔢 Inline-Start Offsets
Start with a fixed inline-start offset and anchor UI to the logical start of the container.
Example 1 — 20px Inline-Start Offset
Place a box 20px from the inline-start edge of a positioned container.
Logical properties follow the inline axis, not fixed left directions, so the same rule works in both LTR and RTL layouts.
A11y
♿ Accessibility
Positioning does not change reading order — DOM order still matters for screen readers.
Test RTL layouts — Logical offsets should not hide essential content.
Avoid covering focusable controls — Side panels and overlays can block keyboard access.
Support zoom on mobile — Fixed inline-start offsets should not clip important text.
Set dir on the document — Correct text direction helps both layout and assistive technology.
🧠 How inset-inline-start Works
1
Direction defines inline-start
LTR or RTL text flow determines which physical direction inline-start maps to.
Text direction
2
inset-inline-start sets one offset
You specify the distance from the containing block’s inline-start edge to the element’s inline-start edge.
CSS rule
3
The browser places the element
The box is positioned along the inline axis while other inset values remain at their defaults.
Layout
=
←
Logical inline-start positioning
Panels, icons, and labels stay on the correct logical edge when text direction changes.
Compatibility
🖥 Browser Compatibility
The inset-inline-start property is supported in modern browsers including Chrome 87+, Firefox 63+, Safari 14.1+, and Edge 87+.
✓ Baseline · Modern browsers
Logical positioning in today’s browsers
All major browsers support inset-inline-start as part of the CSS Logical Properties module.
94%Modern browser support
Google Chrome87+ · Desktop & Mobile
Full support
Mozilla Firefox63+ · Desktop & Mobile
Full support
Apple Safari14.1+ · macOS & iOS
Full support
Microsoft Edge87+ · Chromium
Full support
Opera73+ · Modern versions
Full support
inset-inline-start property94% supported
Bottom line: Safe for modern logical layouts. Use physical left only when legacy support is required.
Wrap Up
🎉 Conclusion
The inset-inline-start property provides a logical and flexible way to control positioning relative to the start of the inline axis. It is especially useful in responsive and internationalized websites, because it adapts to different text directions without rewriting your CSS.
For beginners, start with horizontal LTR pages where it behaves like left, then explore RTL direction to see the real advantage of logical CSS.