Basically, hyphenation is the splitting of words with dashes at the end of text lines. By using it, the text displayed on the screen can by gracefully justified or lined-wrapped, and shown in a neat column.
Up to now, there were two ways to get them: either setting soft hyphens in HTML from the server side (telling the browser where it can cut words by inserting the ­ character) or using a javascript library to hyphenate your text on the client side. You can now do it directly with CSS3 styling.