Довод против id всего один: поиск по id является наибыстрейшим методом нахождения элемента на странице в JS. Программист, который пишет скрипты для сайта не должен думать о том, что он может повлиять на отображение сайта если он, например, создаст элемент на странице с каким-то id. Иногда требуется клонировать какой-то элемент на странице, а т.к. id должен быть уникальным, то такой элемент клонировать будет нельзя (стили поведут себя непредсказуемо).
Да можно сказать что-то типа: "я делаю сайт один, от и до, без команды, я и программист и верстальщик в одном лице". Но надо понимать, что вы отдадите сайт потом в пользование клиенту. Когда-то сайту потребуется доработка, и у человека, который будет дорабатывать страницу возникнет геморрой. А всё потому, что вам впадлу было точку вместо шарпа написать в CSS. Или потому, что вы не знаете как по-другому повысить специфичность правил и перекрыть какие-то стили.
Думать надо о коллегах короче.