Разрешены ли они? и работают ли они со всеми браузерами?
Пример:
<div role = "region"
id = "some-id"
class = "a-class another-class">
Ответ 1
Да, любое количество пробелов разрешено и будет работать во всех браузерах.
Одно соображение - это добавит размер страницы, поэтому, если проблема с пропускной способностью и производительностью, попробуйте ограничить количество пробелов, которые вы используете.
Ответ 2
Да, это вполне допустимая разметка. Пробелы прекрасно обрабатываются всеми браузерами.
В любой момент, когда вы путаете, вы можете проверить свой код на официальной службе валидации W3 :
Да, они есть, и они будут работать во всех основных браузерах, хотя я бы сказал, что считаться плохой практикой включать ненужное пустое пространство, поскольку оно бессмысленно увеличивает размер документа.
HTML, XHTML, XML и другие - это все варианты SGML, поэтому, если вы хотите знать, что является/не разрешено в общем, взгляните на эту спецификацию. Вы должны всегда передавать все свои документы с помощью валидаторов разметки W3C, чтобы убедиться, что они действительны.