Utilities for controlling the font family of an element.
The quick brown fox jumps over the lazy dog.
<p class="font-sans ...">
The quick brown fox jumps over the lazy dog.
</p>
The quick brown fox jumps over the lazy dog.
<p class="font-serif ...">
The quick brown fox jumps over the lazy dog.
</p>
The quick brown fox jumps over the lazy dog.
<p class="font-mono ...">
The quick brown fox jumps over the lazy dog.
</p>
To control the font family of an element at a specific breakpoint, add a {screen}:
prefix to any existing font family utility class. For example, use md:font-serif
to apply the font-serif
utility at only medium screen sizes and above.
<p class="font-sans md:font-serif">
<!-- ... -->
</p>
For more information about Tailwind's responsive design features, check out the Responsive Design documentation.
By default, Tailwind provides three font family utilities: a cross-browser sans-serif stack, a cross-browser serif stack, and a cross-browser monospaced stack. You can change, add, or remove these by editing the theme.fontFamily
section of your Tailwind config.
// tailwind.config.js
module.exports = {
theme: {
fontFamily: {
- 'sans': ['ui-sans-serif', 'system-ui', ...],
- 'serif': ['ui-serif', 'Georgia', ...],
- 'mono': ['ui-monospace', 'SFMono-Regular', ...],
+ 'display': ['Oswald', ...],
+ 'body': ['Open Sans', ...],
}
}
}
Font families can be specified as an array or as a simple comma-delimited string:
{
// Array format:
'sans': ['Helvetica', 'Arial', 'sans-serif'],
// Comma-delimited format:
'sans': 'Helvetica, Arial, sans-serif',
}
Note that Tailwind does not automatically escape font names for you. If you're using a font that contains an invalid identifier, wrap it in quotes or escape the invalid characters.
{
// Won't work:
'sans': ['Exo 2', ...],
// Add quotes:
'sans': ['"Exo 2"', ...],
// ...or escape the space:
'sans': ['Exo\\ 2', ...],
}
By default, only responsive variants are generated for font family utilities.
You can control which variants are generated for the font family utilities by modifying the fontFamily
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: {
// ...
+ fontFamily: ['hover', 'focus'],
}
}
}
If you don't plan to use the font family utilities in your project, you can disable them entirely by setting the fontFamily
property to false
in the corePlugins
section of your config file:
// tailwind.config.js
module.exports = {
corePlugins: {
// ...
+ fontFamily: false,
}
}