Welcome to The Coding College! Fonts are a cornerstone of web design, shaping the readability and aesthetic of your content. CSS provides powerful tools to define and style fonts, ensuring your website looks polished and professional.
In this guide, we’ll explore the various CSS font properties, their syntax, examples, and tips for creating beautiful typography.
CSS Font Properties Overview
CSS offers a range of properties to control fonts. Here’s a quick overview:
Property | Description |
---|---|
font-family | Specifies the typeface of the text. |
font-size | Sets the size of the text. |
font-style | Controls the style of the font (e.g., italic). |
font-weight | Defines the thickness of the font. |
font-variant | Enables small caps or other variations. |
line-height | Adjusts the space between lines. |
letter-spacing | Sets the spacing between characters. |
word-spacing | Adjusts the space between words. |
font (shorthand) | A shorthand property for setting several font properties at once. |
1. CSS font-family
The font-family
property defines the typeface. You can specify a list of fonts to ensure a fallback if the preferred font is unavailable.
Syntax
selector {
font-family: "Font Name", fallback-font, generic-family;
}
Example
body {
font-family: "Roboto", Arial, sans-serif;
}
- Primary Font: Roboto
- Fallback Font: Arial
- Generic Family: sans-serif
2. CSS font-size
The font-size
property sets the size of the text.
Syntax
selector {
font-size: value;
}
- Units:
px
,em
,rem
,%
,vw
,vh
, etc.
Example
h1 {
font-size: 32px;
}
p {
font-size: 1.2em;
}
3. CSS font-style
The font-style
property is used to italicize text.
Values
normal
: Default style.italic
: Italicized text.oblique
: A slanted version of the text.
Example
em {
font-style: italic;
}
4. CSS font-weight
The font-weight
property defines the thickness of the font.
Values
normal
: Default weight.bold
: Bold text.lighter
/bolder
: Relative to the parent element.- Numerical values (100–900): Precise control of weight.
Example
strong {
font-weight: bold;
}
h1 {
font-weight: 700;
}
5. CSS font-variant
The font-variant
property creates variations like small caps.
Values
normal
: Default style.small-caps
: Converts lowercase text to small uppercase letters.
Example
p {
font-variant: small-caps;
}
6. CSS line-height
The line-height
property controls the vertical space between lines of text.
Example
p {
line-height: 1.6;
}
7. CSS Shorthand font
Property
The font
shorthand property can set several font properties in a single declaration.
Syntax
selector {
font: font-style font-variant font-weight font-size/line-height font-family;
}
Example
h1 {
font: italic small-caps bold 24px/1.5 "Arial", sans-serif;
}
Web Safe Fonts
To ensure compatibility across devices, use web-safe fonts or include fallbacks:
- Sans-serif: Arial, Helvetica
- Serif: Times New Roman, Georgia
- Monospace: Courier New, Consolas
Using Google Fonts
Google Fonts provides free, customizable fonts for web design.
Steps to Use Google Fonts:
- Visit Google Fonts.
- Choose a font and copy the
<link>
tag or@import
statement. - Apply the font in your CSS:
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
body {
font-family: 'Roboto', sans-serif;
}
Tips for Better Typography
- Consistency: Use a maximum of 2–3 font families per project.
- Readability: Prioritize legibility, especially for body text.
- Responsive Design: Use relative units like
em
orrem
for scalability. - Contrast: Ensure text contrasts well with the background.
Browser Compatibility
All major browsers support CSS font properties. However, ensure custom fonts load correctly by testing on different devices and browsers.
Conclusion
Fonts define the personality of your website. With CSS, you have complete control over typography, from the font family to spacing and style. Experiment with these properties to create visually appealing and user-friendly designs.
For more CSS tutorials and tips, visit The Coding College.
Design beautifully, one font at a time!