CSS, short for Cascading Style Sheets, is the primary language used to describe look and formatting for webpages across the Internet and documents of markup (e.g. HTML and XML) in general. If you want to work with designing your own webpages, you need to be able to understand and write CSS. Lucky for you, you've come to the right place, because in this tutorial, you will be able to learn pretty much anything there is to know about CSS, from the most basic stuff about syntax and simple properties, to more advanced examples.

How do I use this tutorial?

If you're brand new in the world of CSS, I suggest that you start from the top of the Table of Contents to the right and then simply go all the way through the tutorial. It has been organized to start with some very basic theory and then move on to more and more advanced stuff. If you already know some CSS, then I suggest that you snoop around in the various chapters, to learn the stuff you haven't already been exposed to. Each chapter has been written so that you can use it alone, to learn that particular subject.


For webpages, CSS is always used in combination with a markup language, usually HTML/XHTML. CSS may be used for other purposes, but in this tutorial, we will focus on how you use it together with HTML. Most examples have HTML code in them, to show you how CSS and HTML work together, so a bit of HTML knowledge is preferable. If you don't already know HTML, then I suggest that you have a look at this HTML5 Tutorial.

You don't need any special tools to write CSS - it can be done in any plain text editor, e.g. Notepad. If you already know HTML, then you probably also have a favorite web editor which can likely be used for CSS as well.

With that in place, you're ready to start learning CSS - enjoy!

>> Start the tutorial

Localized versions

Would you prefer to read this tutorial in another language? All our content is available for translation by our visitors and this tutorial is currently being translated into many new languages.

Top 10 Languages
Language Most active user Progress
German User #338 ?
99% complete
Dutch User #1026 ?
49% complete
Spanish User #464 ?
26% complete
Portuguese User #2753 ?
16% complete
Russian User #2090 ?
6% complete
Vietnamese User #4569 ?
6% complete
Arabic User #1005 ?
6% complete
Chinese User #2989 ?
3% complete
Turkish User #3662 ?
2% complete
Hindi User #2637 ?
1% complete
More languages...

A big thanks goes out to all the translators making this possible! Perhaps you would like to contribute as well? Select language...