Table of contents
Positioning
In Tailwind CSS, positioning of elements can be achieved using utility classes that define the position property, as well as classes for setting the top, bottom, left, and right values.
Here are some examples of how to position elements in Tailwind:
Set the position property: To set the position property of an element, you can use the
absolute
,relative
,fixed
, orstatic
classes. For example,absolute
sets the element's position relative to its closest positioned ancestor, whilefixed
sets the element's position relative to the viewport.Set the top, bottom, left, and right values: To set the top, bottom, left, and right values of an element, you can use the
top-{value}
,bottom-{value}
,left-{value}
, andright-{value}
classes, where{value}
is a number or a keyword such as0
,auto
, orfull
. For example,top-0
sets the top value of an element to 0 pixels, whileright-auto
sets the right value to the default value of auto.Center an element horizontally: To center an element horizontally, you can use the
mx-auto
class, which sets the left and right margins to auto. This works well for block-level elements such as<div>
.Center an element vertically: To center an element vertically, you can use the
my-auto
class, which sets the top and bottom margins to auto. This works well for block-level elements such as<div>
.Combine positioning classes: You can combine positioning classes to achieve more complex layouts. For example, to position an element at the bottom-right corner of its parent element, you can use the following classes:
absolute bottom-0 right-0
.
Here's an example of how to use Tailwind's positioning classes to center an element both horizontally and vertically:
<div class="h-64 w-64 bg-blue-500 absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2"></div>
In this example, the absolute
class positions the <div>
element relative to its closest positioned ancestor, while top-1/2
and left-1/2
set the top and left values to 50% of the parent element, respectively. The transform
class is used to center the element both horizontally and vertically by translating it 50% of its own width and height in the x and y directions, respectively.
Display in Tailwind
In Tailwind CSS, the display
property can be set using utility classes. Tailwind includes classes for all the common display
property values, such as block
, inline
, inline-block
, flex
, and grid
, as well as some less common values like table
and table-caption
.
Here are some examples of how to use the display
property in Tailwind:
Display an element as a block: To display an element as a block-level element, you can use the
block
class. For example,<div class="block">
will display the<div>
element as a block-level element.Display an element as an inline-level element: To display an element as an inline-level element, you can use the
inline
class. For example,<span class="inline">
will display the<span>
element as an inline-level element.Display an element as an inline-block element: To display an element as an inline-block element, you can use the
inline-block
class. For example,<div class="inline-block">
will display the<div>
element as an inline-block element.Display an element as a flex container: To display an element as a flex container, you can use the
flex
class. For example,<div class="flex">
will display the<div>
element as a flex container.Display an element as a grid container: To display an element as a grid container, you can use the
grid
class. For example,<div class="grid">
will display the<div>
element as a grid container.
Here's an example of how to use the display
property to create a simple two-column layout using flexbox:
<div class="flex">
<div class="w-1/2 p-4">Left column</div>
<div class="w-1/2 p-4">Right column</div>
</div>
In this example, the flex
class is applied to the parent <div>
element to create a flex container. The child <div>
elements are given a width of 50% using the w-1/2
class, which makes them both take up half of the available space in the flex container. The p-4
class sets some padding on each column for spacing.
Z-index
In Tailwind CSS, the z-index
property can be set using utility classes. The z-index
property determines the stack order of HTML elements, meaning it determines which elements are displayed on top of others when they overlap.
Here's an example of how to use the z-index
property in Tailwind:
cssCopy code<div class="relative">
<div class="absolute top-0 left-0 bg-blue-500 w-64 h-64 z-10"></div>
<div class="absolute top-0 left-0 bg-red-500 w-64 h-64 z-20"></div>
</div>
In this example, there are two child <div>
elements that are positioned absolutely inside a parent <div>
element that has the relative
class. The first child <div>
has a z-index
of 10, and the second child <div>
has a z-index
of 20. This means that the second child <div>
will be displayed on top of the first child <div>
because it has a higher z-index
value.
Here are some of the most common z-index
utility classes in Tailwind:
z-0
: Sets thez-index
value to 0.z-10
: Sets thez-index
value to 10.z-20
: Sets thez-index
value to 20.z-30
: Sets thez-index
value to 30.z-40
: Sets thez-index
value to 40.z-50
: Sets thez-index
value to 50.
Note that the z-index
property only works on elements that have a position
value of relative
, absolute
, or fixed
.