Intro to Web Typography

new course
CSS grid landing page tutorial (36min)

Lesson info

Lesson info

Choosing the right typographic styles for your website is one of the most important decisions you'll make for every web project.

While there are many typographic properties to work with, we’ll cover the essentials in this video:

  1. ‍Font family
  2. ‍Font weight
  3. ‍Font color
  4. ‍Font style (default or italic)
  5. ‍Best practices

Explore this project

Want to dig into the project featured in this video and see how everything is put together? We've included the full project we used when making this lesson, and we've shared the link right under this very paragraph.

View and clone this projectDownload lesson assets
Clone this projectDownload project assets


Typography can say a lot about you. And unless your hand is forced by a client who insists upon using 9-point Brush Script MT, the possibilities are endless. With so many options (and control over precisely how text is displayed in a project), we'll cover the essentials for configuring typography:

That includes font, font weight, and color.

From the Designer, we can select a text element directly, like this heading, and go over to set our typography styles. Like font. Let's look at the fonts in our dropdown and select one for this heading.

By default, a number of fonts are accessible for our project. At any time, we can go over to our Project Settings and visit the Fonts tab to add additional fonts and font weights from Google Fonts, Adobe Typekit — you can even upload a custom font set.

Of course we changed our font on this heading directly, but let's also look at the Body tag. From here, we can essentially change the default font in our project. This will affect typography everywhere. Except for our heading of course. Why? Because we already styled our heading here with its own font. If we remove that font styling? The font we put on the Body tag is now inherited. We can even see that by clicking the indicator.

That's font selection.

Next is font weight.

A lot of fonts have multiple font weights — some look good on headings, some look good on paragraphs, and some look good on nothing.

And two things to note here: (1) inside the Designer, the available font weights are indicated in the dropdown, but if it's grayed out, that means the font weight isn't available or loaded into your project. And (2) You can hover over these weights and see the effect in real time right on the canvas. You don't have to click through each option manually before seeing the preview.

That's font weight.

Last is color.

For font color, we can type in Hex, RGBA, Color Name, or we can use the Color Picker. Now the selection here is the parent element to its children, so these color changes are being inherited.

Just like we set the font on the Body tag earlier, this concept applies for text color as well. So we can override this color by making a change on any of the child elements. If we want to figure out where a color's coming from, we can show its inheritance using the indicator to the left of font color.

And one last thing. Let's make this #4. It applies to styling of all kinds, but it really needs to be said:

Sometimes when we're in Photoshop or Word or other environments where we're styling text, there can be a habit of selecting different things — like these text elements. Making changes one-by-one. Can you do this? Yes. Should you do this? Well, you're likely making a lot of work for yourself.

What's the best practice here? Well, ideally, we'd use CSS to our advantage. Create styles  when we need them, and apply them to different elements. In short, the best practice is doing the least amount of work with the best results. There's no wrong way to do this. But just consider this before creating 112 different paragraph styles that all do the same thing.

So, from the Designer, we can set a font, choose the appropriate font weight, and set a color — all this can be done by creating classes or using tags which style parent elements or the direct element itself.