Разметка полиглота - Polyglot markup
В вычислениях разметка полиглота документ или сценарий, написанный в действительной форме из нескольких языки разметки, который выполняет тот же вывод, независимо от разметки парсер, механизм компоновки, или же устный переводчик. В целом разметка полиглота - это общее подмножество двух или более языков, которое можно использовать как надежный или упрощенный профиль.
Полиглот HTML является HTML который был написан для соответствия как HTML, так и XHTML технические характеристики.[1] Таким образом, документ полиглота может быть проанализирован как HTML (который SGML -совместимый) или же XML, и будет производить то же самое ДОМ структура в любом случае. Например, для того, чтобы HTML5 документ для соответствия этим критериям, два требования заключаются в том, что он должен иметь HTML5 doctype, и быть написанным в правильно сформированном XHTML.[2] Затем один и тот же документ может использоваться как HTML или XHTML, в зависимости от поддержки браузером и типа MIME.
Требования к полиглоту HTML
По выражению рекомендация HTML-полиглота,[1] Чтобы написать полиглот-документ HTML5, необходимо соблюдать следующие ключевые моменты:
- Инструкции по обработке и объявление XML запрещены в разметке полиглота.
- Указание кодировки символов документа
- ДОКТИП
- Пространства имён
- Синтаксис элемента (например, конечные теги не являются обязательными. Используйте самозакрывающиеся теги для пустых элементов.)
- Содержание элемента
- Текст (т.е. pre и textarea не должны начинаться с символа новой строки)
- Атрибуты (т.е. значения должны быть указаны в кавычках)
- Ссылки на именованные объекты (например, только amp, lt, gt, apos, quot)
- Комментарии (т.е. используйте )
- Создание сценариев и стили разметки полиглота
Таким образом, наиболее простой документ разметки полиглота будет выглядеть так:[1]
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" язык="" xml: lang=""> <голова> <заглавие>Элемент заголовка не должен быть пустым.</заглавие> </голова> <тело> </тело></html>
В документе разметки полиглота непустые элементы (например, сценарий
, п
, div
) не могут быть самозакрывающимися, даже если они пусты, поскольку это недопустимый HTML.[3] Например, чтобы добавить на страницу пустое текстовое поле, нельзя использовать <textarea/>
, но должен использовать <textarea></textarea>
вместо.
Смотрите также
Рекомендации
- ^ а б c Разметка Polyglot: надежный профиль словаря HTML5, Примечание Рабочей группы W3C от 29 сентября 2015 г.
- ^ Блог WhatWG - XHTML5 в двух словах, 25 июля 2010 г.
- ^ Разметка Polyglot: HTML-совместимые документы XHTML: 6.4 Void Elements. Проект редактора W3C от 9 июля 2012 г.