Font Size
Utilities for controlling the font size of an element.
Class reference
Class | Properties |
---|---|
.text-xs | font-size: 0.75rem; |
.text-sm | font-size: 0.875rem; |
.text-base | font-size: 1rem; |
.text-lg | font-size: 1.125rem; |
.text-xl | font-size: 1.25rem; |
.text-2xl | font-size: 1.5rem; |
.text-3xl | font-size: 1.875rem; |
.text-4xl | font-size: 2.25rem; |
.text-5xl | font-size: 3rem; |
.text-6xl | font-size: 4rem; |
Usage
Control the font size of an element using the .text-{size}
utilities.
<p class="text-xs ...">The quick brown fox ...</p>
<p class="text-sm ...">The quick brown fox ...</p>
<p class="text-base ...">The quick brown fox ...</p>
<p class="text-lg ...">The quick brown fox ...</p>
<p class="text-xl ...">The quick brown fox ...</p>
<p class="text-2xl ...">The quick brown fox ...</p>
<p class="text-3xl ...">The quick brown fox ...</p>
<p class="text-4xl ...">The quick brown fox ...</p>
<p class="text-5xl ...">The quick brown fox ...</p>
<p class="text-6xl ...">The quick brown fox ...</p>
Responsive
To control the font size of an element at a specific breakpoint, add a {screen}:
prefix to any existing font size utility. For example, use md:text-lg
to apply the text-lg
utility at only medium screen sizes and above.
For more information about Tailwind’s responsive design features, check out the Responsive Design documentation.
all
sm
md
lg
xl
<p class="text-base sm:text-lg md:text-xl lg:text-2xl xl:text-3xl ...">The quick brown fox jumped over the lazy dog.</p>
The quick brown fox jumped over the lazy dog.
Customizing
Font Sizes
By default Tailwind provides 10 font-size
utilities. You change, add, or remove these by editing the theme.fontSize
section of your Tailwind config.
// tailwind.config.js
module.exports = {
theme: {
fontSize: {
- 'xs': '.75rem',
- 'sm': '.875rem',
+ 'tiny': '.875rem',
'base': '1rem',
'lg': '1.125rem',
'xl': '1.25rem',
'2xl': '1.5rem',
- '3xl': '1.875rem',
- '4xl': '2.25rem',
'5xl': '3rem',
'6xl': '4rem',
+ '7xl': '5rem',
}
}
}
Providing a default line-heightv1.3.0+
You can provide a default line-height for each of your font-sizes using a tuple of the form [fontSize, lineHeight]
in your tailwind.config.js
file.
// tailwind.config.js
module.exports = {
theme: {
fontSize: {
sm: ['14px', '20px'],
base: ['16px', '24px'],
lg: ['20px', '28px'],
xl: ['24px', '32px'],
}
}
}
We don’t do this out-of-the-box for backwards compatibility reasons, but it can be a very convenient customization to make in your own projects.
Providing a default letter-spacingv1.7.0+
If you also want to provide a default letter-spacing value for a font size, you can do so using a tuple of the form [fontSize, { letterSpacing, lineHeight }]
in your tailwind.config.js
file.
// tailwind.config.js
module.exports = {
theme: {
fontSize: {
'2xl': ['24px', {
letterSpacing: '-0.01em',
}],
// Or with a default line-height as well
'3xl': ['32px', {
letterSpacing: '-0.02em',
lineHeight: '40px',
}],
}
}
}
Responsive and pseudo-class variants
By default, only responsive variants are generated for text sizing utilities.
You can control which variants are generated for the text sizing utilities by modifying the fontSize
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: {
// ...
- fontSize: ['responsive'],
+ fontSize: ['responsive', 'hover', 'focus'],
}
}
Disabling
If you don’t plan to use the text sizing utilities in your project, you can disable them entirely by setting the fontSize
property to false
in the corePlugins
section of your config file:
// tailwind.config.js
module.exports = {
corePlugins: {
// ...
+ fontSize: false,
}
}