CSS font properties define the font family, boldness, size, and the style of a text.
On computer screens, sans-serif fonts are considered easier to read than serif fonts.
In CSS, there are two types of font family names:
|Generic family||Font family||Description|
|Serif||Times New Roman
|Serif fonts have small lines at the ends on some characters|
|"Sans" means without - these fonts do not have the lines at the ends of characters|
|All monospace characters have the same width|
The font family of a text is set with the font-family property.
The font-family property should hold several font names as a "fallback" system. If the browser does not support the first font, it tries the next font.
Start with the font you want, and end with a generic family, to let the browser pick a similar font in the generic family, if no other fonts are available.
Note: If the name of a font family is more than one word, it must be in quotation marks, like font-family: "Times New Roman".
More than one font family is specified in a comma-separated list:
For more commonly used font combinations, look at our Web Safe Font Combinations.
The font-style property is mostly used to specify italic text.
This property has three values:
The font-size property sets the size of the text.
Being able to manage the text size is important in web design. However, you should not use font size adjustments to make paragraphs look like headings, or headings look like paragraphs.
Always use the proper HTML tags, like <h1> - <h6> for headings and <p> for paragraphs.
The font-size value can be an absolute, or relative size.
If you do not specify a font size, the default size for normal text, like paragraphs, is 16px (16px=1em).
Setting the text size with pixels gives you full control over the text size:
The example above allows Internet Explorer 9, Firefox, Chrome, Opera, and Safari to resize the text.
Note: The example above does not work in IE, prior version 9.
The text can be resized in all browsers using the zoom tool (however, this resizes the entire page, not just the text).
To avoid the resizing problem with older versions of Internet Explorer, many developers use em instead of pixels.
The em size unit is recommended by the W3C.
1em is equal to the current font size. The default text size in browsers is 16px. So, the default size of 1em is 16px.
The size can be calculated from pixels to em using this formula: pixels/16=em
In the example above, the text size in em is the same as the previous example in pixels. However, with the em size, it is possible to adjust the text size in all browsers.
Unfortunately, there is still a problem with older versions of IE. The text becomes larger than it should when made larger, and smaller than it should when made smaller.
The solution that works in all browsers, is to set a default font-size in percent for the <body> element:
Our code now works great! It shows the same text size in all browsers, and allows all browsers to zoom or resize the text!
Set the boldness of the font
This example demonstrates how to set the boldness of a font.
Set the variant of the font
This example demonstrates how to set the variant of a font.
All the font properties in one
This example demonstrates how to use the shorthand property for setting all of the font properties in one declaration.
|font||Sets all the font properties in one declaration|
|font-family||Specifies the font family for text|
|font-size||Specifies the font size of text|
|font-style||Specifies the font style for text|
|font-variant||Specifies whether or not a text should be displayed in a small-caps font|
|font-weight||Specifies the weight of a font|
The perfect solution for professionals who need to balance work, family, and career building.
More than 10 000 certificates already issued!
The HTML Certificate documents your knowledge of HTML.
The HTML5 Certificate documents your knowledge of advanced HTML5.
The CSS Certificate documents your knowledge of advanced CSS.
The jQuery Certificate documents your knowledge of jQuery.
The XML Certificate documents your knowledge of XML, XML DOM and XSLT.
The ASP Certificate documents your knowledge of ASP, SQL, and ADO.
The PHP Certificate documents your knowledge of PHP and SQL (MySQL).
Your message has been sent to W3Schools.