Place Self
- Tailwind CSS version
- v1.8.0+
Utilities for controlling how an individual item is justified and aligned at the same time.
Auto
Use place-self-auto
to align an item based on the value of the container's place-items
property:
<div class="grid grid-cols-3 place-items-stretch bg-gray-200 h-48">
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">1</div>
<div class="place-self-auto text-gray-800 text-center bg-gray-500 px-4 py-2 m-2">2</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">3</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">4</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">5</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">6</div>
</div>
Start
Use place-self-start
to align an item to the start on both axes:
<div class="grid grid-cols-3 place-items-stretch bg-gray-200 h-48">
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">1</div>
<div class="place-self-start text-gray-800 text-center bg-gray-500 px-4 py-2 m-2">2</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">3</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">4</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">5</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">6</div>
</div>
Center
Use place-self-center
to align an item at the center on both axes:
<div class="grid grid-cols-3 place-items-stretch bg-gray-200 h-48">
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">1</div>
<div class="place-self-center text-gray-800 text-center bg-gray-500 px-4 py-2 m-2">2</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">3</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">4</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">5</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">6</div>
</div>
End
Use place-self-end
to align an item to the end on both axes:
<div class="grid grid-cols-3 place-items-stretch bg-gray-200 h-48">
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">1</div>
<div class="place-self-end text-gray-800 text-center bg-gray-500 px-4 py-2 m-2">2</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">3</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">4</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">5</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">6</div>
</div>
Stretch
Use place-self-stretch
to stretch an item on both axes:
<div class="grid grid-cols-3 place-items-stretch bg-gray-200 h-48">
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">1</div>
<div class="place-self-stretch text-gray-800 text-center bg-gray-500 px-4 py-2 m-2">2</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">3</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">4</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">5</div>
<div class="text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">6</div>
</div>
Responsive
To place an item at a specific breakpoint, add a {screen}:
prefix to any existing place-self
utility. For example, use md:place-self-end
to apply the place-self-end
utility at only medium screen sizes and above.
<div class="place-self-start md:place-self-end">
<!-- ... -->
</div>
For more information about Tailwind's responsive design features, check out the Responsive Design documentation.
Customizing
Responsive and pseudo-class variants
By default, only responsive variants are generated for place-self utilities.
You can control which variants are generated for the place-self utilities by modifying the placeSelf
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: {
// ...
- placeSelf: ['responsive'],
+ placeSelf: ['responsive', 'hover', 'focus'],
}
}
Disabling
If you don't plan to use the place-self utilities in your project, you can disable them entirely by setting the placeSelf
property to false
in the corePlugins
section of your config file:
// tailwind.config.js
module.exports = {
corePlugins: {
// ...
+ placeSelf: false,
}
}