Tailwind CSS on GitHub

Align Self

Utilities for controlling how an individual flex or grid item is positioned along its container's cross axis.

Default class reference

Class
Properties
self-autoalign-self: auto;
self-startalign-self: flex-start;
self-endalign-self: flex-end;
self-centeralign-self: center;
self-stretchalign-self: stretch;

Auto

Use self-auto to align an item based on the value of the container's align-items property:

1
2
3
<div class="flex items-stretch ...">
  <div>1</div>
  <div class="self-auto ...">2</div>
  <div>3</div>
</div>

Start

Use self-start to align an item to the start of the container's cross axis, despite the container's align-items value:

1
2
3
<div class="flex items-stretch ...">
  <div>1</div>
  <div class="self-start ...">2</div>
  <div>3</div>
</div>

Center

Use self-center to align an item along the center of the container's cross axis, despite the container's align-items value:

1
2
3
<div class="flex items-stretch ...">
  <div>1</div>
  <div class="self-center ...">2</div>
  <div>3</div>
</div>

End

Use self-end to align an item to the end of the container's cross axis, despite the container's align-items value:

1
2
3
<div class="flex items-stretch ...">
  <div>1</div>
  <div class="self-end ...">2</div>
  <div>3</div>
</div>

Stretch

Use self-stretch to stretch an item to fill the container's cross axis, despite the container's align-items value:

1
2
3
<div class="flex items-stretch ...">
  <div>1</div>
  <div class="self-stretch ...">2</div>
  <div>3</div>
</div>

Responsive

To control the alignment of a flex item at a specific breakpoint, add a {screen}: prefix to any existing utility class. For example, use md:self-end to apply the self-end utility at only medium screen sizes and above.

<div class="items-stretch ...">
  <div class="self-auto md:self-end ...">
    <!-- ... -->
  </div>
</div>

For more information about Tailwind's responsive design features, check out the Responsive Design documentation.

Customizing

Variants

By default, only responsive variants are generated for align-self utilities.

You can control which variants are generated for the align-self utilities by modifying the alignSelf property in the variants section of your tailwind.config.js file.

For example, this config will also generate hover and focus variants:

  // tailwind.config.js
  module.exports = {
    variants: {
      extend: {
        // ...
+       alignSelf: ['hover', 'focus'],
      }
    }
  }

Disabling

If you don't plan to use the align-self utilities in your project, you can disable them entirely by setting the alignSelf property to false in the corePlugins section of your config file:

  // tailwind.config.js
  module.exports = {
    corePlugins: {
      // ...
+     alignSelf: false,
    }
  }