TOOLSPHERE.

A Digital Kit for Gentler Days • Emi's Room

Design Systems4 min read

Responsive Web Design 101: Why You Should Stop Using PX for Typography

Why absolute units break digital accessibility, and how relative EM and REM multipliers scale your layouts perfectly.

Written by Emily N.
•
Published July 19, 2026

When web design was in its infancy, laying out a webpage was simple. Monitors shared relatively similar, predictable resolutions, and screens were completely flat. Designers could hardcode text sizes using absolute pixels (px), confident that what they saw on their screen was exactly what the end user would see.

Fast forward to today, and the digital landscape is entirely different. Users browse your website on everything from a massive 32-inch 4K desktop monitor to a compact smartphone screen, a smartwatch, or even an accessible screen reader.

If you are still using pixels to style your website's typography, you are accidentally breaking your user experience. To build modern, flexible, and accessible websites, it is time to move away from fixed pixels and master relative units: EM and REM.

The Fatal Flaw of Absolute Pixels

Pixels are an absolute measurement unit. If you set your body text font size to font-size: 16px;, that text will render exactly 16 pixels tall on every screen, regardless of the device's size or the user's personal preferences.

While this control sounds great for pixel-perfect design, it creates a massive barrier for digital accessibility.

Many users—especially those with visual impairments—change their browser's default font size settings. The universal standard default is 16px, but a user might scale their default text up to 20px or 24px so they can read comfortably without straining.

When you hardcode your typography in pixels, you override their browser choices. The browser forces your absolute pixel size anyway, effectively locking out users who desperately need larger text.

Enter Relative Units: REM and EM

Relative units solve this problem by adapting dynamically to their surroundings. Instead of stating a fixed size, they act as a multiplier.

1. The REM Unit (Root EM)

The rem unit is relative strictly to the root element of the webpage (the <html> tag). By default, if the browser root font size is 16px:

  • 1rem = 16px
  • 2rem = 32px
  • 0.5rem = 8px

If a user changes their browser's base font size to 20px, a website built with rem scales perfectly in lockstep. Your 2rem heading automatically adjusts to 40px (2 × 20px).

2. The EM Unit

The em unit is relative to the font size of its immediate parent element. While rem always looks back to the root, em looks at whatever box it is currently sitting inside.

This makes em incredibly useful for components that need to scale proportionally based on their own size, like padding inside buttons or margins around a specific card.

⚠️ Compounding issues: Nested lists styled with em can get smaller or larger by accident!

Establishing a Flawless Typography Scale

The gold standard layout for modern web design is to use rem for your typography (headings, body text, subtext) and em for spacing that needs to change relative to that text.

To create visual harmony on a page, you shouldn't pick font sizes at random. You want a structured scale where your main title (h1), secondary headers (h2, h3), and body text all share a distinct mathematical relationship. For example, a "Perfect Fourth" scale multiplies each heading level by a consistent factor of 1.333.

Getting Your Measurements Right

Switching between pixels in your design file (like Figma or Adobe XD) and writing out your relative code in CSS can be a major mental headache.

Instead of pausing your workflow to run manual division calculations, use our tool. It instantly maps out your entire layout scheme, giving you clean, production-ready code that protects your site's responsiveness and accessibility.

📐Happy Coding from Emi's Room!

Complete Reading Room Directory (36 Essays & Guides)