Intereting Posts
поле ввода скрыто, когда в телефонной таблице появляется мягкая клавиатура JQuery – дата окончания меньше даты начала Трехмерный массив Javascript Объявить переменную в шаблоне Scala для Play2 Примечание: Неопределенное смещение: 0 в Как предотвратить увеличение размера текста на html / css Как я могу заставить Facebook очистить свой кеш и использовать более новое мета-описание общей веб-страницы? Как получить полный путь к файлу с помощью управления загрузкой файлов в asp.net или любым другим способом? AngularJS не обновляет img src при изменении модели Как отправить форму с помощью кнопки jqueryui dialog, Ajax, отображающийся как неопределенный Как я могу ссылаться на относительный поддомен в HTML? Как я могу заполнить другой раскрывающийся список событием onChange первого выпадающего списка? Onclick Expand Ширина текстового поля PHP + JS: Как сделать Fileuploads в форме HTML как многостраничный тип контента (через JS)?

Почему свойство .tagName DOM возвращает значение в верхнем регистре?

Например, если у нас есть

  FooBar    

Если мы будем делать document.getElementByTagName("title").TagName , тогда у нас будет TITLE (верхний регистр). Хотя html-стандарты рекомендуют писать html-tags в нижнем регистре.

Я знаю, что между ними нет никакой взаимосвязи, но это все еще не имеет смысла.

Есть ли причина, по которой DOM должен возвращать имена тегов в верхнем регистре?

Технически это предусмотрено в DOM Level 1 :

HTML DOM возвращает tagName элемента HTML в канонической форме в верхнем регистре, независимо от случая в исходном HTML-документе.

Согласование имен тегов верхнего регистра, вероятно, связано с наследием, когда HTML был ранее разработан на основе SGML, а типы элементов были объявлены в верхнем регистре. См. Этот раздел спецификации HTML 4.01, в которой обсуждаются SGML, HTML и его синтаксис , а также, например, определение четкости описания HTML 4.01 . Любые реализации DOM, поддерживающие HTML, последуют этому примеру.

Обратите внимание, что имена тегов в нижнем регистре явно требуются только в XHTML (но не в XML), и авторам обычно рекомендуется писать строчные tags для упрощения переноса между HTML / XHTML, а также для повышения удобочитаемости. Однако эта рекомендация не встречается в спецификации; все это говорит о том, что имена тегов не учитывают регистр только в HTML, а не XHTML и XML.