The li isn't necessarily essential - it's just a bit more specificity, which in this case may have been enough to override a more generic rule that only specified a classname or element type.
a.cat-top would not have worked at all, because the <a> element is not named cat-top, the <li> element is.
Bookmarks