inset - CSS | MDN (original) (raw)

Try it

<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;
}

While part of the CSS logical properties and values module, it does not define logical offsets. It defines physical offsets, regardless of the element's writing mode, directionality, and text orientation.

Constituent properties

This property is a shorthand for the following CSS properties:

Syntax

/* <length> values */
inset: 10px; /* value applied to all edges */
inset: 4px 8px; /* top/bottom left/right */
inset: 5px 15px 10px; /* top left/right bottom */
inset: 2.4em 3em 3em 3em; /* top right bottom left */
inset: calc(anchor(50%) + 10px) anchor(self-start) auto auto;
inset: anchor-size(block) calc(anchor(50%) + 10px) auto
  calc(anchor-size(width) / 4);

/* <percentage>s of the width (left/right) or height (top/bottom) of the containing block */
inset: 10% 5% 5% 5%;

/* Keyword value */
inset: auto;

/* Global values */
inset: inherit;
inset: initial;
inset: revert;
inset: revert-layer;
inset: unset;

Values

The inset property takes the same values as the left property.

Formal definition

Initial value as each of the properties of the shorthand:top: autobottom: autoleft: autoright: auto
Applies to positioned elements
Inherited no
Percentages relative to the containing block's size in the corresponding axis (e.g. width for left or right, height for top or bottom)
Computed value as each of the properties of the shorthand:top: if specified as a length, the corresponding absolute length; if specified as a percentage, the specified value; otherwise, autobottom: if specified as a length, the corresponding absolute length; if specified as a percentage, the specified value; otherwise, autoleft: if specified as a length, the corresponding absolute length; if specified as a percentage, the specified value; otherwise, autoright: if specified as a length, the corresponding absolute length; if specified as a percentage, the specified value; otherwise, auto
Animation type a length, percentage or calc();

Formal syntax

inset =
<'top'>{1,4}

=
auto |
|
<anchor()> |
<anchor-size()>

=
|

<anchor()> =
anchor( ? &&
, ? )

<anchor-size()> =
anchor-size( || []? , ? )

=

=
inside |
outside |
top |
left |
right |
bottom |
start |
end |
self-start |
self-end |
|
center

=
width |
height |
block |
inline |
self-block |
self-inline

Examples

Setting offsets for an element

HTML

<div>
  <span class="exampleText">Example text</span>
</div>

CSS

div {
  background-color: yellow;
  width: 150px;
  height: 120px;
  position: relative;
}

.exampleText {
  writing-mode: sideways-rl;
  position: absolute;
  inset: 20px 40px 30px 10px;
  background-color: #c8c800;
}

Result

Specifications

Specification
CSS Logical Properties and Values Level 1 # propdef-inset
CSS Positioned Layout Module Level 3 # propdef-inset

Browser compatibility

See also