How to Use Tailwind CSS Font Variant Numeric for Styling Numerals

When it comes to web design, typography plays a crucial role in the overall aesthetic and readability of your content. Tailwind CSS, a utility-first CSS framework, provides developers with a set of tools to control the presentation of numerals in text. In this article, we’ll dive deep into the font-variant-numeric utility in Tailwind CSS and how you can leverage it to enhance the typographic experience of your website.

Understanding Font Variant Numeric

Before we delve into Tailwind’s implementation, it’s important to understand what font-variant-numeric is. This CSS property controls the usage of alternate glyphs for numbers, fractions, and ordinal markers. It allows you to specify whether you want to use lining figures, old-style figures, tabular numbers, proportional numbers, etc.

Enabling Font Variant Numeric in Tailwind CSS

Tailwind CSS includes utilities for controlling numeric font variants by default. However, you need to ensure that the font you are using supports these features. Popular fonts like Roboto, Open Sans, and many others support numeric variants.

Here’s a quick guide on how to use the different numeric font variant utilities in Tailwind CSS:

Lining Numbers

Lining numbers, also known as lining figures, are numerals that are of uniform height and align with the uppercase letters of the font. To apply lining numbers in Tailwind CSS, you can use the following class:

<span class="font-normal">1234567890</span> <!-- Default numerals -->
<span class="font-nums">1234567890</span> <!-- Lining numerals -->

Old-Style Numbers

Old-style numbers, or text figures, have varying heights and resemble a typical flow of upper and lower case letters, which can make them blend more seamlessly into a block of text. To use old-style numbers in Tailwind CSS, apply this class:

<span class="font-normal">1234567890</span> <!-- Default numerals -->
<span class="font-oldstyle-nums">1234567890</span> <!-- Old-style numerals -->

Tabular Numbers

Tabular numbers are monospaced, meaning each numeral occupies the same horizontal space, which is particularly useful for tables, lists, or anywhere you need to align numbers vertically. To use tabular numbers in Tailwind CSS, use this class:

<span class="font-normal">1234567890</span> <!-- Default numerals -->
<span class="font-tabular-nums">1234567890</span> <!-- Tabular numerals -->

Proportional Numbers

Proportional numbers, as opposed to tabular, are spaced according to their width. This can make them look better in sentences or when mixed with text. To use proportional numbers in Tailwind CSS, use this class:

<span class="font-normal">1234567890</span> <!-- Default numerals -->
<span class="font-proportional-nums">1234567890</span> <!-- Proportional numerals -->

Slashed Zero

A slashed zero is a 0 with a slash through it, which helps differentiate it from the letter O. To apply a slashed zero in Tailwind CSS, use this class:

<span class="font-normal">0O</span> <!-- Default zero and letter O -->
<span class="font-slashed-zero">0O</span> <!-- Slashed zero and letter O -->

Ordinal Markers

Some fonts include special glyphs for ordinal markers like ‘st’, ‘nd’, ‘rd’, and ‘th’. To enable these in Tailwind CSS, apply this class:

<span class="font-normal">1st 2nd 3rd 4th</span> <!-- Default ordinals -->
<span class="font-ordinal">1st 2nd 3rd 4th</span> <!-- Ordinal markers -->

Diagonal Fractions

For fonts that support it, you can enable diagonal fractions using this Tailwind CSS class:

<span class="font-normal">1/2 3/4</span> <!-- Default fractions -->
<span class="font-diagonal-fractions">1/2 3/4</span> <!-- Diagonal fractions -->

Stacked Fractions

Similarly, stacked fractions can be enabled for fonts that support them:

<span class="font-normal">1/2 3/4</span> <!-- Default fractions -->
<span class="font-stacked-fractions">1/2 3/4</span> <!-- Stacked fractions -->

Customizing Font Variant Numeric in Tailwind CSS

If you need to customize the font-variant-numeric utility, you can do so in your tailwind.config.js file. Here’s an example of how to add custom variants:

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      fontVariantNumeric: {
        'custom-variant': 'lining-nums tabular-nums',


Tailwind CSS’s font-variant-numeric utility provides a powerful way to control the appearance of numbers in your typography. By understanding and using these classes, you can ensure that your numerals are presented in the most appropriate way for your content and design.

For more information on typography and the font-variant-numeric property, you can refer to the MDN Web Docs and the Tailwind CSS Documentation.

By mastering the use of numeric font variants in Tailwind CSS, you’ll be well-equipped to create visually appealing and highly readable web content that resonates with your audience.


What do you think?