HTML: различия между версиями
Материал из Aprel Wiki
Дополнительные действия
Codic (обсуждение | вклад) м Добавлены Категории |
APRELKUN (обсуждение | вклад) Нет описания правки |
||
| (не показаны 3 промежуточные версии 2 участников) | |||
| Строка 1: | Строка 1: | ||
'''HTML''' (HyperText Markup Language) — язык разметки, повсеместно применяемый нынче в [[Интернет]]е. Вместе с языком описания стилей [[CSS]] и скриптовой машинерией [[JavaScript]] стал фактически опорой нынешней сети. Именно в формате HTML прогружается большая часть материалов сети (все страницы с какой-либо разметкой, хотя иногда встречаются и материалы в формате plain text, ограниченные только текстовыми материалами). Изначально был разработан как язык разметки научной документации, но вошёл в массовое употребление в Интернете. | |||
'''HTML''' (HyperText Markup Language | |||
== История == | |||
Стандарт разрабатывается организацией W3C, преобразовывается в визуальный вид любых интернет-браузером. С распространением Интернета больше всего применялась версия HTML4, в 2014 был формализован стандарт HTML5, ставший ныне наиболее распространенным. Эта версия получила множество новых возможностей: рисование 2D-изображений, сохранение информации в браузере, API для изображений и видео, перетаскивание файлов на страницу. За счет новых технологий стало возможно создание браузерных игр и приложений на основе HTML5, без использования устаревшей небезопасной технологии Flash. | |||
Уже самые первые версии HTML стали революцией за счет возможности использования гипертекста: возможности проставлять ссылки на другие страницы, что обеспечивало высокую связность сети и стало одной из самых известных особенностей Интернета — за счёт гиперссылок стало возможно моментально перейти на нужный материал, что делало массив информации не монолитным. | |||
Первые спецификации HTML весьма сильно зависели от конкретной платформы, так что для нормального отображения сайта требовалось использовать хаки (в частности, отличалось отображение в разных браузерах). Со временем была достигнута довольно неплохая стандартизация, но стало практиковаться создание полностью отдельных версий для обычных ПК и смартфонов из-за сильного различия этих платформ. | |||
Файлы HTML сохраняются с расширением .html или .htm, но подобно [[www]], в большинстве современных сайтов окончание не используется и страница имеет более простой человекочитаемый адрес, который легко запомнить и воспроизвести. | |||
== | Характерная структура HTML-файла: | ||
* Вначале идет классическое указание на то, что файл это HTML, чтобы без расширения браузер правильно отображал страницу: <nowiki><!DOCTYPE html></nowiki> и <nowiki><html class="client-nojs" lang="ru" dir="ltr"></nowiki>. | |||
* Внутри блока <head> указываются системные данные — название страницы, адрес favicon, кодировка (хотя абсолютно все сейчас применяют UTF-8), подгружаются CSS и JS-файлы (однако бывает и так, что эти файлы включаются в конец страницы). Название страницы является одним из самых важных показателей для поисковой оптимизации. | |||
* В блоке <body> находится непосредственный контент страницы. | |||
Вначале HTML предполагался к использованию сам по себе, и имел значительное количество впоследствии признанных устаревшими тегов разметки, вроде font (который задавал формат конкретного текста). Впоследствии был сделан уклон в большую структурность языка, распространилась блоковая разметка с использованием <nowiki><div></nowiki>, разделения на абзацы. Конкретное же оформление, ранее писавшееся непосредственно в тексте, было перенесено в CSS. В современном HTML элементы имеют только идентификаторы и классы, а вся информация о внешнем виде связывается с ними в CSS-файле. | |||
Помимо тегов, также в HTML имеются так называемые мнемоники, позволяющие разместить специальные символы. Они вставляются с использованием кода <nowiki>&мнемоника;</nowiki>. По мере распространения кодировки UTF-8, позволяющей вставлять их без всяких кодов, непосредственно в текст, с использованием кодов стали размещать только неоднозначные символы, способные вызвать проблемы, размещённые без экранирования: <nowiki>&, >, <, "</nowiki>. Очень большую популярность в качестве полноценного [[мем]]а получила мнемоника <nowiki> </nowiki> (неразрывный пробел), которую усиленно форсил [[Мицгол]], но которая делала тексты слаборедактируемыми. | |||
== Надстройки == | |||
Хотя HTML и воссиял как главный стандарт Интернета, недостатком является то, что для простого [[человек]] написание документов в формате HTML довольно сложно и требует затрат времени, кроме того есть и проблемы с безопасностью (можно подключить скрипты с внешних сайтов). В связи с этим были реализованы некоторые надстройки над HTML, призванные ускорить процесс создания готовых веб-страниц, а для конечного пользователя применяется фильтрация вводимых данных, чтобы предотвратить возможные проблемы с безопасностью: | |||
* Шаблоны — подстановка определенных вводных данных в уже готовые HTML-формы, от человека требуется предоставить только информацию, разметка генерируется автоматически, | |||
* Форумная разметка типа BB-кода, где позволено использовать только некоторые опции языка, не позволяющие взломать сайт и поставить под угрозу пользователей, | |||
* HTML | * Вики-разметка — упрощенная разметка для быстрого редактирования страниц на технологии [[вики]], преобразует специальную разметку в HTML за счет движка. | ||
* HTML | |||
Математики и иные ученые применяют также язык разметки TeX, более приспособленный под добавление разного рода формул и сложных конструкций. | |||
== Интересные факты == | |||
* HTML не может быть нормально обработан с использованием регулярных выражений из-за того, что является контекстно-свободным. Возможна обработка исключительно определённых документов с заранее известной структурой, при этом при отклонении от заданной структуры могут возникнуть ошибки (всегда есть возможность создать HTML-код, который будет неверно обработан произвольным регулярным выражением). | |||
[[Категория:Интернет]] | [[Категория:Интернет]] | ||