Я считаю, что вы можете оставить его в кавычки, если это буквенно-цифровой, до тех пор, как он не содержит»,», ', = <, или>.
из HTML спецификации:
Атрибуты размещаются внутри начального тега, и состоит из имени и значения, разделенных символом «=» символ атрибута ва. lue может оставаться без кавычек, если он не содержит пробелов или символов «'= < или>. В противном случае он должен быть указан с использованием одиночных или двойных кавычек. Значение, наряду с символом «=», может быть опущено вообще, если значение представляет собой пустую строку.
Для согласования предпочитаю двойные кавычки. Нет смысла использовать их только иногда - это создает беспорядочный и менее читаемый код.