Build faster with Premium Chakra UI Components 💎

Learn more
Skip to Content
DocsPlaygroundGuidesBlog
Sponsor

Heading

Used to render semantic HTML heading elements.

The quick brown fox jumps over the lazy dog

Usage

import { Heading } from "@chakra-ui/react"
<Heading>I'm a Heading</Heading>

Examples

Sizes

Use the size prop to change the size of the heading component.

Heading (sm)

Heading (md)

Heading (lg)

Heading (xl)

Heading (2xl)

Heading (3xl)

Heading (4xl)

Heading (5xl)

Heading (6xl)

Highlight

Compose the Heading component with the Highlight component to highlight text.

Create accessible React apps with speed

Chakra UI is a simple, modular and accessible component library that gives you the building blocks you need.

As another element

Use the as prop to render the heading as another HTML element.

Level 1

Level 2

Level 3

Weights

Use the fontWeight prop to change the weight of the heading component.

Normal

Medium

Semibold

Bold

Composition

Use the Heading component to compose other components.

Modern payments for Stores

PayMe helps startups get paid by anyone, anywhere in the world

Customization

To override the fontSize, we recommend using the textStyle prop since it considers the line height and letter spacing as well.

Base style

Here's an example of customizing the Heading component.

provider.tsx

import { createSystem, defineRecipe } from "@chakra-ui/react"
import { defaultConfig } from "@chakra-ui/react"

const headingRecipe = defineRecipe({
  base: {
    fontWeight: "normal",
    textStyle: "4xl",
  },
})

const system = createSystem(defaultConfig, {
  theme: {
    recipes: { heading: headingRecipe },
  },
})

Custom Size

Update the variants.size property to create a custom size.

provider.tsx

import { createSystem, defineRecipe } from "@chakra-ui/react"
import { defaultConfig } from "@chakra-ui/react"

const headingRecipe = defineRecipe({
  variants: {
    size: {
      custom: {
        fontSize: "100px",
        lineHeight: "100px",
        letterSpacing: "-2px",
      },
    },
  },
})

const system = createSystem(defaultConfig, {
  theme: {
    recipes: { heading: headingRecipe },
  },
})

Then, use the custom variant to create a custom size.

<Heading size="custom">I'm a custom size</Heading>

Props

PropDefaultType
colorPalette 'gray'
'gray' | 'red' | 'orange' | 'yellow' | 'green' | 'teal' | 'blue' | 'cyan' | 'purple' | 'pink'

The color palette of the component

size 'xl'
'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl' | '7xl'

The size of the component

Previous

Em

Next

Highlight