I recently had to help someone at work with an intranet that they had been instructed to build. They came to me with a (table based) layout that I promptly turned into CSS looking close enough to how it was. as I was explaining to him how/why to do things I thought about things that I frequently take forgranted now. So here they are: The top ten things (I think) a newbie should learn about CSS

  1. Semantic HTML
  2. Selectors
  3. Inheritance
  4. Units
  5. The Box Model
  6. Positioning
  7. Floats
  8. Hacks (a necessary evil)
  9. IDs vs. Classes
  10. Alternative media