HTML5 and CSS positioning

I stumbled across a weird bug today that I didn’t know about and wasn’t expecting. I’d done a little bit of a CSS file to go with a little bit of HTML that did some simple positioning of content. Then I validated my document on the W3C Markup Validation Service and it complained about a missing doctype. So I added a doctype for HTML5. After I did that my page looked all screwy, the CSS positioning was applying correctly. Anyway it turned out that the reason the CSS wasn’t applying was because I had property specifications like this:

#content {
  margin: 170 50 50 50;
  padding: 0;
}

Whereas I needed to specify the units, like this:

#content {
  margin: 170px 50px 50px 50px;
  padding: 0px;
}