Text Spacing in CSS - Control line-height and letter-spacing for Better Readability

In UI design, spacing quality matters more than flashy colors. Good text is not just a nice font, but also the right spacing between lines, letters, and words.

If you are looking for line-height in CSS, best letter-spacing values, or the difference between line-height and word-spacing, this lesson is practical and direct.

What Is Text Spacing in CSS?

CSS provides three main properties for text spacing:

  • line-height: spacing between lines.
  • letter-spacing: spacing between letters.
  • word-spacing: spacing between words.
Simple definition: Text spacing in CSS means controlling the gaps inside text to improve readability and clarity.

line-height in CSS (The Most Important Property for Readability)

The line-height property controls the vertical distance between lines. It is the single most important step to improve reading comfort in long paragraphs.

p {
    line-height: 1.6;
}

What does this code do? It adds comfortable spacing between paragraph lines.

Line by line:

  • p: targets paragraphs.
  • line-height: 1.6;: sets line spacing to 1.6x the font size.

Expected result: easier eye movement between lines and less reading fatigue.

Common mistake: using line-height: 1 in long text, which makes it feel cramped.

Result in the browser: line-height: 1

This is a longer sample paragraph to show the difference between line-height values in CSS and how they directly affect reading comfort.

Result in the browser: line-height: 1.6

This is a longer sample paragraph to show the difference between line-height values in CSS and how they directly affect reading comfort.

letter-spacing in CSS (Spacing Between Letters)

The letter-spacing property increases or decreases space between letters. It is often used for English headings or logos.

h3.brand {
    letter-spacing: 4px;
}

What does this code do? It widens letter spacing to emphasize the heading.

Expected result: a more premium look for short titles.

Common mistake: applying large spacing to long paragraphs, which hurts readability.

Result in the browser:

DEVARABI

Important note for Arabic: it is usually not recommended to use letter-spacing with Arabic text because Arabic letters are connected, and extra spacing can make the word shapes look unnatural.

word-spacing in CSS (Spacing Between Words)

The word-spacing property controls the space between words, not letters. It can be used lightly in headings or decorative text.

p.note {
    word-spacing: 10px;
}

What does this code do? It increases the gap between words inside the paragraph.

Expected result: a clear visual change in word spacing.

Common mistake: using a very large value that makes the sentence feel broken apart.

Result in the browser:

This sentence demonstrates the effect of word-spacing in CSS.

Practical Recommended Values for Text Spacing

  • line-height: usually between 1.5 and 1.8 for body text.
  • letter-spacing: use small values like 0.5px to 2px for headings.
  • word-spacing: start with 2px to 6px depending on the font.

Complete Practical Example in CSS

HTML:

<h3 class="title">web typography</h3>
<p class="article">This paragraph explains how spacing affects readability in web interfaces.</p>

CSS:

.title {
    letter-spacing: 2px;
    text-transform: uppercase;
}

.article {
    line-height: 1.7;
    word-spacing: 3px;
}

What does this example do? It balances a standout title with a readable paragraph.

Expected result: cleaner, more professional text.

Common mistake: applying the same values to all text without considering the content type.

Result in the browser:

web typography

This paragraph explains how spacing affects readability in web interfaces.

Common Mistakes with line-height, letter-spacing, and word-spacing

1) Crowded text: line-height too low.

2) Over-spaced letters: large letter-spacing on long text.

3) Broken words: word-spacing too high.

FAQ - Common Search Questions

What is the best line-height in CSS?

Usually between 1.5 and 1.8, depending on font size and type. For Arabic, values in this range often work well too.

What is the difference between letter-spacing and word-spacing in CSS?

letter-spacing affects letters, while word-spacing affects words.

Is letter-spacing good for Arabic text?

Usually no, unless used very carefully because Arabic is a connected script.

Why does my text look cramped in CSS?

It is usually due to low line-height or a small font size with little spacing.

How can I improve text readability quickly?

Start with line-height: 1.6;, then adjust font size and contrast before adding effects.

Try it now: apply line-height: 1.6 to a long paragraph and compare it with 1 to feel the difference immediately.
Great job! You now know how to set text spacing in CSS professionally. In the next lesson we will learn fonts in CSS and how to choose the right font family.
Smart Editor

Write code and see the result instantly

Try it free