In defence of lists

Over time, I've noticed a few people criticising what they call "listitis". In the same way that Jeffery Zeldman called out "divitis" and "classitis" in Designing with Web Standards, "listitis" apparently refers to excesssive use of list elements (ul and ol) in markup.

For example, on a fairly typical page you might have the main navigation, the breadcrumb navigation, pagination controls and a set of products all marked up as ordered or unordered lists, plus perhaps several more, especially if you have things like filters on the list of products.

I see nothing wrong with this.

When you look at the definition of an unordered list in the HTML spec, it is semantically very broad:

The ul element represents a list of items, where the order of the items is not important — that is, where changing the order would not materially change the meaning of the document.

So, ul is a series of items where the order doesn't matter. Nothing more is stipulated about the content of the items. What about an ordered list?

The ol element represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document.

So, ol is a series of items where the order does matter. Again, there is nothing specifying what the content of the list items can or cannot be.

All of this tells us that, apart from being a series of items and not just one item, ul and ol are just as generic as div. Therefore, it's only natural that we should end up using them a lot — the scope for use cases is broad.