Tuesday, August 21, 2012

CSS Units


Measurement Values

UnitDescription
%percentage
ininch
cmcentimeter
mmmillimeter
em1em is equal to the current font size. 2em means 2 times the size of the current font. E.g., if an element is displayed with a font of 12 pt, then '2em' is 24 pt. The 'em' is a very useful unit in CSS, since it can adapt automatically to the font that the reader uses
exone ex is the x-height of a font (x-height is usually about half the font-size)
ptpoint (1 pt is the same as 1/72 inch)
pcpica (1 pc is the same as 12 points)
pxpixels (a dot on the computer screen)

CSS Web Safe Font Combinations


Commonly Used Font Combinations

The font-family property should hold several font names as a "fallback" system, to ensure maximum compatibility between browsers/operating systems. 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:

Example

p{font-family:"Times New Roman", Times, serif}

Try it yourself »

Below are some commonly used font combinations, organized by generic family.

Serif Fonts

font-familyExample text
Georgia, serif

This is a heading

This is a paragraph
"Palatino Linotype", "Book Antiqua", Palatino, serif

This is a heading

This is a paragraph
"Times New Roman", Times, serif

This is a heading

This is a paragraph

Sans-Serif Fonts

font-familyExample text
Arial, Helvetica, sans-serif

This is a heading

This is a paragraph
"Arial Black", Gadget, sans-serif

This is a heading

This is a paragraph
"Comic Sans MS", cursive, sans-serif

This is a heading

This is a paragraph
Impact, Charcoal, sans-serif

This is a heading

This is a paragraph
"Lucida Sans Unicode", "Lucida Grande", sans-serif

This is a heading

This is a paragraph
Tahoma, Geneva, sans-serif

This is a heading

This is a paragraph
"Trebuchet MS", Helvetica, sans-serif

This is a heading

This is a paragraph
Verdana, Geneva, sans-serif

This is a heading

This is a paragraph

Monospace Fonts

font-familyExample text
"Courier New", Courier, monospace

This is a heading

This is a paragraph
"Lucida Console", Monaco, monospace

This is a heading

This is a paragraph

CSS Aural Reference


Aural Style Sheets

Aural style sheets use a combination of speech synthesis and sound effects to make the user listen to information, instead of reading information.

Aural presentation can be used:
  • by blind people
  • to help users learning to read
  • to help users who have reading problems
  • for home entertainment
  • in the car
  • by print-impaired communities
The aural presentation converts the document to plain text and feed this to a screen reader (a program that reads all the characters on the screen).

An example of an Aural style sheet:

h1,h2,h3,h4
{
voice-family:male;
richness:80;
cue-before:url("beep.au")
}The example above will make the speech synthesizer play a sound, then speak the headers in a very rich male voice.

CSS Aural Reference

The "CSS" column indicates in which CSS version the property is defined (CSS1 or CSS2).

PropertyDescriptionValuesCSS
azimuthSets where the sound should come fromangle
left-side
far-left
left
center-left
center
center-right
right
far-right
right-side
behind
leftwards
rightwards
2
cueSets the cue properties in one declarationcue-before
cue-after
2
cue-afterSpecifies a sound to be played after speaking an element's contentnone
url
2
cue-beforeSpecifies a sound to be played before speaking an element's contentnone
url
2
elevationSets where the sound should come fromangle
below
level
above
higher
lower 
2
pauseSets the pause properties in one declarationpause-before
pause-after
2
pause-afterSpecifies a pause after speaking an element's contenttime
%
2
pause-beforeSpecifies a pause before speaking an element's contenttime
%
2
pitchSpecifies the speaking voicefrequency
x-low
low
medium
high
x-high 
2
pitch-rangeSpecifies the variation in the speaking voice. (Monotone voice or animated voice?)number2
play-duringSpecifies a sound to be played while speaking an element's contentauto
none
url
mix
repeat
2
richnessSpecifies the richness of the speaking voice. (Rich voice or thin voice?)number2
speakSpecifies whether content will render aurallynormal
none
spell-out
2
speak-headerSpecifies how to handle table headers. Should the headers be spoken before every cell, or only before a cell with a different header than the previous cellalways
once
2
speak-numeralSpecifies how to speak numbersdigits
continuous
2
speak-punctuationSpecifies how to speak punctuation charactersnone
code
2
speech-rateSpecifies the speed of the speakingnumber
x-slow
slow
medium
fast
x-fast
faster
slower 
2
stressSpecifies the "stress" in the speaking voicenumber2
voice-familySpecifies the voice family of the speakingspecific-voice
generic-voice
2
volumeSpecifies the volume of the speakingnumber%silent
x-soft
soft
medium
loud
x-loud 
2

CSS Selector Reference


CSS Selectors

In CSS, selectors are patterns used to select the element(s) you want to style.
The "CSS" column indicates in which CSS version the property is defined (CSS1, CSS2, or CSS3).

SelectorExampleExample descriptionCSS
.class.introSelects all elements with class="intro"1
#id#firstnameSelects the element with id="firstname"1
**Selects all elements2
elementpSelects all <p> elements1
element,elementdiv,pSelects all <div> elements and all <p> elements1
element elementdiv pSelects all <p> elements inside <div> elements1
element>elementdiv>pSelects all <p> elements where the parent is a <div> element2
element+elementdiv+pSelects all <p> elements that are placed immediately after <div> elements2
[attribute][target]Selects all elements with a target attribute2
[attribute=value][target=_blank]Selects all elements with target="_blank"2
[attribute~=value][title~=flower]Selects all elements with a title attribute containing the word "flower"2
[attribute|=value][lang|=en]Selects all elements with a lang attribute value starting with "en"2
:linka:linkSelects all unvisited links1
:visiteda:visitedSelects all visited links1
:activea:activeSelects the active link1
:hovera:hoverSelects links on mouse over1
:focusinput:focusSelects the input element which has focus2
:first-letterp:first-letterSelects the first letter of every <p> element1
:first-linep:first-lineSelects the first line of every <p> element1
:first-childp:first-childSelects every <p> element that is the first child of its parent2
:beforep:beforeInsert content before  the content of every <p> element2
:afterp:afterInsert content after every <p> element2
:lang(language)p:lang(it)Selects every <p> element with a lang attribute value starting with "it"2
element1~element2p~ulSelects every <ul> element that are preceded by a <p> element3
[attribute^=value]a[src^="https"]Selects every <a> element whose src attribute value begins with "https"3
[attribute$=value]a[src$=".pdf"]Selects every <a> element whose src attribute value ends with ".pdf"3
[attribute*=value]a[src*="w3schools"]Selects every <a> element whose src attribute value contains the substring "w3schools"3
:first-of-typep:first-of-typeSelects every <p> element that is the first <p> element of its parent3
:last-of-typep:last-of-typeSelects every <p> element that is the last <p> element of its parent3
:only-of-typep:only-of-typeSelects every <p> element that is the only <p> element of its parent3
:only-childp:only-childSelects every <p> element that is the only child of its parent3
:nth-child(n)p:nth-child(2)Selects every <p> element that is the second child of its parent3
:nth-last-child(n)p:nth-last-child(2)Selects every <p> element that is the second child of its parent, counting from the last child3
:nth-of-type(n)p:nth-of-type(2)Selects every <p> element that is the second <p> element of its parent3
:nth-last-of-type(n)p:nth-last-of-type(2)Selects every <p> element that is the second <p> element of its parent, counting from the last child3
:last-childp:last-childSelects every <p> element that is the last child of its parent3
:root:rootSelects the document’s root element3
:emptyp:emptySelects every <p> element that has no children (including text nodes)3
:target#news:targetSelects the current active #news element (clicked on a URL containing that anchor name)3
:enabledinput:enabledSelects every enabled <input> element3
:disabledinput:disabledSelects every disabled <input> element3
:checkedinput:checkedSelects every checked <input> element3
:not(selector):not(p)Selects every element that is not a <p> element3
::selection::selectionSelects the portion of an element that is selected by a user3