CSS Fonts

fonts are a big and complex topic

to set a font in CSS, use the font-family property, e.g. this sets the font for all paragraphs to be arial:

p {
    font-family: arial;
}

fonts have many properties, including: color, background-color

Web Safe Fonts

not all fonts are available on all web browsers

so you need to be careful which fonts you want to use on your web page

a few fonts are considered “web safe”, which means they are usually available in all web browsers

Name Type Notes
Arial sans-serif  
Courier New monospace all characters have the same width
Georgia serif  
Times New Roman serif  
Trebuchet MS sans-serif may not be as widely available as other fonts on this list
Verdana sans-serif  

Default Fonts

CSS defines a few generic fonts that web browsers can display with different particular fonts

Name Notes
serif serifs are the small flourishes at the end of the letters
sans-serif fonts without serifs; often good for titles/headers
monospace all characters are the same width; good for code listings
cursive similar to hand-writing
fantasy decorative fonts

Font Stacks

since you don’t know for certain what fonts a user’s web browser will have, you can provide a list of different fonts to try, e.g.:

p {
    font-family: "Trebuchet MS", Verdana, sans-serif;
}

Font Sizes

the most common units for font sizes are px (an absolute unit) and em (a relative unit)

em units are often the preferred way to specify sizes, although they can result in some tricky arithmetic for setting precise font sizes

the font-size property is inherited, i.e. the font-size of a child element will, by default, be the same as it’s parent’s font-size

Some Other Font Properties

font-style property: normal, oblique (slanted version of normal text), italic (italic version of the normal font; defaults to oblique is there is no italic version)

font-weight property sets how bold the font is: normal, bold, lighter, bolder, or a numeric value from "100" to "900"

text-transform property: none, uppercase, lowercase, capitalize, full-width (makes the text monospaced)

text-decoration property: none, underline, overline, line-through

text-shadow property: gives text a shadow (see a CSS reference for the details of the values)

there are many other font styles you can browse in a CSS reference

Text Layout

text-align property: left, right, center, justify

line-height property: height of text lines

letter-spacing property: space between individual letters

word-spacing property: space between individual words

there are many other text layout styles you can browse in a CSS reference