Type Scales: Display & Headline

Type scales establish visual hierarchy and maintain consistency. Display and headline styles are used for larger text elements like headings.

Aa
Display Large
57px / 64px / 400
Aa
Display Medium
45px / 52px / 400
Aa
Display Small
36px / 44px / 400
Aa
Headline Large
32px / 40px / 400
Aa
Headline Medium
28px / 36px / 400
Aa
Headline Small
24px / 32px / 400
Aa
Title Large
22px / 28px / 500
Aa
Title Medium
16px / 24px / 500
Aa
Title Small
14px / 20px / 500

Type Scales: Body & Label

Body and label styles are used for paragraph text, buttons, and other UI elements.

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Body Large
16px / 24px / 400
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Body Medium
14px / 20px / 400
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Body Small
12px / 16px / 400
BUTTON TEXT
Label Large
14px / 20px / 500
BUTTON TEXT
Label Medium
12px / 16px / 500
BUTTON TEXT
Label Small
11px / 16px / 500

Typography Roles

Typography roles provide common use cases for the different type scales in your application.

Page Title

headline-large
Page Title
Used for primary headings and page titles.

Section Heading

headline-medium
Section Heading
Used for major section headings.

Subsection Heading

headline-small
Subsection Heading
Used for subsection headings.

Card Title

title-medium
Card Title
Used for card titles and smaller UI elements.

Body Text

body-medium
This is standard body text used for paragraphs and general content.
Used for the main body content.

Button Label

label-large
BUTTON TEXT
Used for button labels and interactive elements.

Font Weights

Font weights help create emphasis and establish hierarchy within text.

Aa
Light
300
Aa
Regular
400
Aa
Medium
500
Aa
Bold
700

Typography Demo

See how typography scales work together to create a coherent reading experience.

Typography in mtrl

Create a consistent reading experience

Good typography makes the reading experience comfortable and helps create clear hierarchies. The mtrl framework provides a comprehensive typography system that helps maintain consistent type styles across your application.

"Typography is what language looks like."— Ellen Lupton

Using Typography in Code

Learn how to use typography scales in your SCSS and JavaScript code.

SCSS Usage

@use 'mtrl/src/styles/abstract/config' as c;

.my-heading {
  @include c.typography('headline-large');
}

.my-paragraph {
  @include c.typography('body-medium');
  
  strong {
    font-weight: 500; // Using defined weights
  }
}

JavaScript Component Usage

// Creating a component with typography styles
const heading = createElement({
  tag: 'h1',
  class: 'type-headline-large',
  text: 'My Heading'
});

// Dynamically changing typography
element.classList.add('type-body-large');
element.classList.remove('type-body-medium');