Годная статья, которая рассказывает о важности использования семантических элементов в HTML и демонстрирует на примерах разницу родных элементов (button, details и т.п.) от div с навороченным сверху JS.