Сегодня (2015-02-25)
Это действительный HTML5, который отправляет на сервер пробел (не пробел):
<option label=" "></option>
Подтвержденный срок действия http://validator.w3.org/check
Проверенное поведение с Win7 (IE11 IE10 IE9 IE8 FF35 Safari5.1) Ubuntu14.10 (Chrome40, FF35) OSX_Yosemite (Safari8, Chrome40) Android (Samsung-Galaxy-S5)
Следующее такжепроходит проверку сегодня , но также передает некоторый символ пробела серверу из большинства браузеров (вероятно, не желательно) и пробел в других (Chrome40 / Linux пропускает пробел):
<option> </option>
Ранее (2013-08-02)
Согласно моим примечаниям, объект неразрывного пробела внутри тегов параметров, показанных выше, вызвал следующую ошибку в 2013 году:
Ошибка: W3C Служба разметки Validaton (Public): Первый дочерний элемент option элемента select с обязательным атрибутом и без атрибута множественного числа, размер которого равен 1, должен иметь либо атрибут пустого значения, либо не иметь текстового содержимого.
В то время обычным пробелом был действительный XHTML4, и он отправлял на сервер пустой пробел (не пробел) из каждого браузера:
<option> </option>
Future
Это могло бы радовать мое сердцеесли спецификация была обновлена, чтобы явно разрешить пустую опцию.Предпочтительно использовать кратчайший синтаксис.Любое из следующего было бы замечательно:
<option />
<option></option>
Тестовый файл
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Test</title>
</head>
<body>
<form action="index.html" method="post">
<select name="sel">
<option label=" "></option>
</select>
</form>
</body>
</html>