As Nikita Skvortsov pointed out, a self-closing div will not validate. This is because a div is a normal element, not a void element.
According to the HTML5 spec, tags that cannot have any contents (known as void elements) can be self-closing*. This includes the following tags:
area, base, br, col, embed, hr, img, input,
keygen, link, meta, param, source, track, wbr
The "/" is completely optional on the above tags, however, so <img/>
is not different from <img>
, but <img></img>
is invalid.
*Note: foreign elements can also be self-closing, but I don't think that's in scope for this answer.