inset-inline
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
* Some parts of this feature may have varying levels of support.
The inset-inline
CSS property defines the logical start and end offsets of an element in the inline direction, which maps to physical offsets depending on the element's writing mode, directionality, and text orientation. It corresponds to the top
and bottom
, or right
and left
properties depending on the values defined for writing-mode
, direction
, and text-orientation
.
This inset property has no effect on non-positioned elements.
Try it
inset-inline: 5% 10%;
writing-mode: horizontal-tb;
inset-inline: 10px 40px;
writing-mode: vertical-rl;
inset-inline: 5% 10%;
writing-mode: horizontal-tb;
direction: rtl;
<section id="default-example">
<div class="example-container">
<div id="example-element">I am absolutely positioned.</div>
<p>
As much mud in the streets as if the waters had but newly retired from the
face of the earth, and it would not be wonderful to meet a Megalosaurus,
forty feet long or so, waddling like an elephantine lizard up Holborn
Hill.
</p>
</div>
</section>
.example-container {
border: 0.75em solid #ad1457;
padding: 0.75em;
text-align: left;
position: relative;
width: 100%;
min-height: 200px;
}
#example-element {
background-color: #07136c;
border: 6px solid #ffa000;
color: white;
position: absolute;
inset: 0;
}
Constituent properties
This property is a shorthand for the following CSS properties:
Syntax
/* <length> values */
inset-inline: 3px 10px;
inset-inline: 2.4em 3em;
inset-inline: 10px; /* value applied to start and end */
inset-inline: auto calc(anchor(self-start) + 20px);
inset-inline: 400px anchor-size(--myAnchor height, 100px);
/* <percentage>s of the width or height of the containing block */
inset-inline: 10% 5%;
/* Keyword value */
inset-inline: auto;
/* Global values */
inset-inline: inherit;
inset-inline: initial;
inset-inline: revert;
inset-inline: revert-layer;
inset-inline: unset;
Values
The inset-inline
property takes the same values as the left
property.
Formal definition
Initial value | as each of the properties of the shorthand:
|
---|---|
Applies to | positioned elements |
Inherited | no |
Percentages | logical-width of containing block |
Computed value | as each of the properties of the shorthand:
|
Animation type | a length, percentage or calc(); |
Formal syntax
inset-inline =
<'top'>{1,2}
<top> =
auto |
<length-percentage> |
<anchor()> |
<anchor-size()>
<length-percentage> =
<length> |
<percentage>
<anchor()> =
anchor( <anchor-name>? &&
<anchor-side> , <length-percentage>? )
<anchor-size()> =
anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? )
<anchor-name> =
<dashed-ident>
<anchor-side> =
inside |
outside |
top |
left |
right |
bottom |
start |
end |
self-start |
self-end |
<percentage> |
center
<anchor-size> =
width |
height |
block |
inline |
self-block |
self-inline
Examples
Setting inline start and end offsets
HTML
<div>
<p class="exampleText">Example text</p>
</div>
CSS
div {
background-color: yellow;
width: 120px;
height: 120px;
}
.exampleText {
writing-mode: vertical-lr;
position: relative;
inset-inline: 20px 50px;
background-color: #c8c800;
}
Result
Specifications
Specification |
---|
CSS Logical Properties and Values Level 1 # propdef-inset-inline |
CSS Positioned Layout Module Level 3 # propdef-inset-inline |
Browser compatibility
BCD tables only load in the browser
See also
- The mapped physical properties:
top
,right
,bottom
, andleft
- The mapped physical shortcut:
inset
- The mapped block shortcut:
inset-block
writing-mode
,direction
,text-orientation