Язык гипертекстовой разметки. Языки гипертекстовой разметки SGML

В 1989 году гипертекст представлял новую многообещающую технологию, которая имела относительно большое число реализаций, с одной стороны, а с другой стороны, делались попытки построить формальные модели гипертекстовых систем, которые носили скорее описательных характер и были навеяны успехом реляционного подхода описания данных.

HTML – это язык гипертекстовой разметки, используемый для кодирования документов. Язык HTML представляет собой набор команд, в соответствии с которыми браузер отображает содержимое документа, команды HTML не отображаются. В языке HTML реализован механизм гипертекстовых ссылок, который обеспечивает связь одного документа с другими. Эти документы могут находиться на том же сервере, что и страница, с которой на них делается ссылка, а могут быть размещены на другом сервере.

Идея HTML - пример чрезвычайно удачного решения проблемы построения гипертекстовой системы при помощи специального средства управления отображением.

Наиболее эффективной формой организации гипертекста были признаны контекстные гипертекстовые ссылки, а кроме того, было признано деление на ссылки, ассоциированные со всем документом в целом и с отдельными его частями.


Все документы HTML имеют одну и ту же структуру, определяемую фиксированным набором тегов структуры. Документ HTML всегда должен начинаться с тега < HTML > и заканчиваться соответствующим закрывающим тегом (). Внутри документа выделяются два основных раздела: раздел заголовков и тело документа, - идущих именно в таком порядке. Раздел заголовков содержит информацию, описывающую документ в целом, и ограничивается тегами <НЕАD> и . В частности, раздел заголовков должен содержать общий заголовок документа, ограниченный парным тегом <ТITLE>.

). Тем не менее, при создании документа HTML опускать структурные теги не рекомендуется. Простейший правильный документ HTML содержащий все теги, определяющие структуру, может выглядеть следующим образом:

< TITLE > Заголовок документа < /TITLE >

Текст документа

Элементы HTML.

Для парных тегов область влияния определяется частью документа между открывающим и закрывающим тегом. Такую часть документа рассматривают как элемент языка HTML. Так, можно говорить об «элементе BODY», включающем тег , основное содержание документа и закрывающий тег . Весь документ HTML. можно рассматривать как «элемент HTML.». Для непарных тегов элемент совпадает с тегом, который его определяет.

Большинство элементов языка HTML. описывает части содержания документа и помещается между тегами . и , то есть внутрь структурного элемента BODY. Такие элементы делят на блочные и текстовые. Блочные элементы относятся к частям текста уровня абзаца. Текстовые элементы описывают свойства отдельных фраз и еще болей мелких частей текста.

Теперь можно сформулировать правила вложения элементов.

Элементы не должны пересекаться. Другими словами, если открывающий тег располагается внутри элемента, то и соответствующий закрывающий тег должен располагаться внутри этого же элемента.

Блочные элементы могут содержать вложенные блочные и текстовые элементы.

Текстовые элементы могут содержать вложенные текстовые элементы.

Текстовые элементы не могут содержать вложенные блочные элементы.

Функциональные блочные элементы.

В большинстве документов основными функциональными элементами являются заголовки и абзацы. Язык HTML. поддерживает шесть уровней заголовков. Они задаются при помощи парных тегов от <Н1> до <Н6>. При отображении Web-документы ются при помощи таким образом; тегом (документа на экране компьютера эти элементы показываются при помощи шрифтов разного размера.

Обычные абзацы задаются с помощью парного тега <Р>. Язык HTML. не содержит средств для создания абзацного отступа («красной строки»), поэтому при отображении на экране компьютера абзацы разделяются пустой строкой. Закрывающий тег рассматривается как необязательный. Подразумевается, что он стоит перед тегом, который задает начало очередного абзаца документа. Например:

Заголовок

<Р>Первый абзац<Р>Второй абзац

Заголовок второго уровня

Следствием наличия специального тега, определяющего абзац, является тот факт, что обычного символа конца строки, вводимого по нажатию клавиши ENTER, для создания абзацного отступа недостаточно. Язык HTML. рассматривает символы конца строки и пробелы особым образом. Любая последовательность; состоящая только из пробелов и символов конца строки, при отображении документа рассматривается как одиночный пробел. Это, в частности, означает, что символ конца строки даже не осуществляет перехода на новую строку (для этой цели используется текстовый элемент, задаваемый непарным тегом
.

В качестве ограничителя абзацев может также использоваться горизонтальная линейка. Этот элемент задается непарным тегом


. При отображении документа на экране линейка разделяет части текста друг от друга. Ее длина и толщина задается атрибутами тега
.


Этот тег создает горизонтальную линейку шириной в 10 пикселов, занимающую половину ширины окна и расположенную справа.


Создание сайтов - одна из широко доступных возможностей современной Интернет-индустрии. Собственно создание сайтов в принципе не намного сложнее создания личных электронных ящиков и электронных визиток.

Для создания сайта, прежде всего, необходим сервер, подключенный к Интернет, на котором можно размешать необходимые гипертексты. Кроме того, необходима регистрация имени сайга у провайдера, обслуживающего выбранный сервер.

В Интернет можно найти провайдеров, предлагающих бесплатное открытие сайтов на своих серверах. Бесплатные сайты можно открыть на отечественных серверах narod.ru, boom.ru, hotmail.ru и на зарубежных серверах, например geocities.com, tripod.com.

На указанных серверах можно зарегистрировать доменные имена вида:

<имя>. narod.ru

имя>.boom.ru,

Примеры зарегистрированных доменных имен:

wdu.da.ru- сайт электронного университета;

wduniv.newmail.ru - сайт распределенного университета.

После регистрации доменного имени сайта на нем можно размещать гипертексты. Размещение гипертекстов на сайте производится с помощью специальных программ, позволяющих создавать, редактировать, накапливать и копировать самые различные гипертексты. Сразу после размещения самой первой (главной) гипертекстовой страницы ее информация может читаться с помощью браузера в любой стране с любого компьютера, подключенного к Интернет. Для этого в окошке браузера указывается адрес сайта в Интернет. Например: http://bak.boom.ru

Все размещаемые файлы должны быть гипертекстами, записанными в формате HTML и имеющими идентификаторы вида <имя>.html.

HTML - это язык разметки гипертекстов (hypertext markup language).

По структуре гипертекст - это текст со ссылками на другие гипертексты, размещенные на данном сервере, либо на других серверах. При нажатии мышкой на такую ссылку браузер автоматически загружает на экран компьютера страницу гипертекста независимо от того, на каком сервере и в какой стране он находится.

С помощью указанных средств и программ в Интернет могут быть созданы самые разнообразные информационные сайты и системы - личные сайты, фирменные сайты, электронные газеты, журналы, электронные книги, энциклопедии, а также электронные архивы и библиотеки.

Разница между сайтами состоит в объеме информации, их структуре и процедурах обновления. В целом для сайтов в Интернет, как и для любой организации, можно говорить о жизненных циклах их создания, развития, модернизации и ликвидации.

Объем информации определяется владельцами - людьми или организациями, создавшими сайты и размещающими на них свою информацию. Объем информации на сайтах может составлять от нескольких килобайт до нескольких гигабайт (миллионов килобайт).

Структура сайтов может быть самой разнообразной. Простейшая структура - это главная страница со ссылками на набор текстов. Эти ссылки могут находиться в тексте главной страницы либо выделяться в оглавлении в ее начале.

Каждая страница сайта может быть снабжена названием, которое появляется на верхней строке экрана при загрузке сайта браузером.

Кроме того, в главной странице сайта можно указать список ключевых слов для поисковых систем.

Поисковые системы еженедельно просматривают все серверы в сети Интернет и записывают адреса всех найденных сайтов и гипертекстов вместе с выделенными в них ключевыми словами. По этим причинам не позже чем через неделю любая информация, опубликованная в Интернет, может быть найдена но содержащимся в них ключевым словам.

Для создания электронных обучающих программ чаще всего используется язык гипертекстовой разметки документов (HTML).

Данный выбор обусловлен тем, что наряду с простотой создания данного вида документов, язык гипертекстовой разметки обладает колоссальными возможностями, такими, как вывод форматированного текста, использование графических объектов практически всех известных форматов, использование фонового рисунка, вставка таких объектов, как фоновый звук, видео и т.д.

Кроме этого, HTML позволяет легко организовывать ссылки на другие объекты или фрагменты текста самого документа .

Большим преимуществом HTML является то, что большинство современных инструментальных средств (такие, как, текстовые и графические редакторы, языки визуального программирования, Internet Explorer...) поддерживают работу и сохранение документов в HTML формате.

Поэтому зачастую именно HTML используется для создания подобных программных продуктов. Однако создание различного вида демонстрационных примеров, процедур тестирования и опроса, на мой взгляд, делается все же проще с помощью языков визуального программирования.

Поэтому в настоящей дипломной работе рассматриваются вопросы интеграции различных инструментальных средств, для создания обучающих, тестирующих программ и электронных учебников.

Тем не менее, использование HTML документов во многом облегчает написание теоретической части программы и делает ее более живой. Давайте рассмотрим несколько вопросов, связанных с созданием HTML документов. Можно работать на Web без знания языка HTML, так как тексты HTML могут создаваться различными специальными редакторами и конвертерами.

Однако лучше писать непосредственно на HTML или, по крайней мере, изредка контролировать и модифицировать код HTML. Писать непосредственно на HTML нетрудно. Возможно, это даже легче, чем изучать HTML-редактор или конвертер, которые часто ограничены в своих возможностях, содержат ошибки или производят плохой HTML код, который не работает на различных платформах .

Первая версия HTML была разработана в начале 90-х годов Тимом Бенерс-Ли для популярного в прошлом броузера Mosaic. Но в те времена ни для броузера, ни для самого языка еще не нашлось достойного применения. В 1993 году появился HTML+, и эта версия также осталась практически незамеченной. Начало широкому использованию гипертекста дала версия 2.0, которая появилась в июне 1994 года.

Это был момент начала роста популярности WWW по всему миру. Элементы, включенные в версию 2, в большинстве своем используются и по сей день .

В версии 3.0 HTML, которая появилась год спустя, была реализована возможность прорисовки математических символов (знаков интеграла, бесконечности, дроби, скобок и т. д.) при помощи элементов языка. Под эту версию разрабатывались и броузеры (Arena). Но этот проект оказался тупиковым и не получил дальнейшего распространения .

В 1996 году появился HTML версии 3.2. Это было новаторское решение, достаточно упомянуть, что в спецификацию языка были введены фреймы, которые стали теперь весьма популярными у разработчиков Web-страниц.

Даже сейчас на основе этой спецификации можно реализовывать очень неплохие дизайнерские решения. Практически все современные броузеры стопроцентно поддерживают версию 3.2, поэтому у авторов не возникают сомнения по поводу работоспособности заявленных элементов.

Наряду с официальными спецификациями языка, которые разрабатывались организацией W3C (W3 Консорциум), компании-производители броузеров создавали собственные элементы (расширения).

Впоследствии некоторые из этих элементов, после получения всеобщего признания, включались в спецификацию следующей версии языка. Интересно, например, что новаторское решение - фреймы, -- которое так полюбилось многим разработчикам, не было включено спецификацию 3.2.

Но броузеры поддерживали фреймы, и многие книги, посвященные HTML, содержали описания фреймов без упоминания о том, что это нестандартные элементы. И это было правильно, потому что фреймы стали стандарте де-факто . В версию языка 4 они уже были включены на полном основании.

И наоборот, элементы APPLET и SCRIPT, необходимые для расширения HTML другbми программными кодами, в версии 3.2 не сыграли той роли, которую были призваны сыграть.

Это объяснялось тем, что броузеры различных версий по-разному интерпретировали программы на языках Java, JavaScript, Visual Basic VBScript. В результате не удавалось получить достаточно надежно работающий код, и данные языки использовались любителями HTML в основном для экспериментов.

Официальная спецификация HTML 4 (Dynamic HTML) появилась в 1997 году. В это время уже было очевидно, что дальнейшее развитие гипертекста будет осуществляться за счет скрипт-программирования. Это оказалось намного более эффективным, чем вводить в язык все новые элементы.

Появившиеся в то время броузеры (Netscape Navigator 4, Microsoft Internet Explorer 4 и др.) уже достаточно надежно интерпретировали программный код (был достигнут определенный уровень стандартизации). Однако проблемы у разработчиков еще остались. В качестве примера можно отметить, что многие скрипты начинаются с определения версии броузера, чтобы потом использовать тот или иной фрагмент кода.

Очевидно, что на программиста ложится обязанность тестирования страниц на всех популярных в настоящее время броузерах. Кроме того, актуальной остается проблема использования старых или не очень популярных программ. Лидерами "броузеростроения" по праву считаются компании Microsoft и Netscape, но ведь существуют еще и другие фирмы .

В результате использование всех возможностей Dynamic HTML стало yдeлoм программистов достаточно крупных организаций, где есть условия для разработки сложных программ и всестороннего их тестирования. Создателям личных Web-страниц подчас приходится искать компромисс между надежностью и новаторством, чтобы получить достаточно грамотный HTML-код.

Анатомия Web-страницы

Ниже показана заготовка типичного Web-документа. На этом примере мы рассмотрим структуру HTML-страниц.

Пример (шаблон) Web-страницы

<Т1Т1Е>Структура Web-страницы

Если рассмотреть исходные тексты различных Web-страниц, то можно легко увидеть схожесть их структур. Это объясняется тем, что документы создаются по определенным правилам.

В основу синтаксиса языка HTML лег стандарт ISO 8879:1986 "Information processing. Text and office systems. Standard Generalized Markup Language (SGML)". Правда, существует большое различие между стандартом официальным и стандартом фактическим. HTML постоянно развивается, дополняется новыми элементами, и изучать его надо не по официальным первоисточникам, а на практике, обращаясь к последним разработкам ведущих фирм и специалистов .

Чтобы понять структуру Web-страницы, необходимо рассмотреть вес элементы, входящие в приведенный выше листинг. При рассмотрении элементов языка будем приводить оба тега: начальный и конечный.

Например: . Этим можно подчеркнуть, что в большинстве случаев разработчик должен использовать два тега для каждого элемента. Число случаев, когда допустим только начальный тег (часть элементов не имеют конечного вообще), невелико, и они специально оговариваются . Для имен тегов можно использовать как прописные, так и строчные буквы латинского алфавита.

Некоторые пользователи записывают начальные теги прописными буквами, а конечные теги -- строчными. Это помогает разобраться в исходном тексте Web-страницы.

Синтаксис HTML.

Обозначение документа на языке HTML. Выше было упомянуто о том, что одним из принципов языка является многоуровневое вложение элементов. Данный элемент является самым внешним, так как между его начальным и конечным тегам должна находиться вся Web-страница.

В принципе, этот элемент можно рассматривать как формальность. Он имеет атрибуты version, lang и d i r , которыми в данном случае редко кто пользуется, и допускает вложение элементов HEAD, BODY, FRAMESET и других, определяющих общую структуру Web-страницы. Естественно что конечным тегом заканчиваются все подобные документы.

Область заголовка Web-страницы. Иными словами, ее первая часть. Так же, как предыдущий элемент, HEAD служит только для формирования общей структуры документа. Этот элемент может иметь атрибуты lang и d i r, должен включать элемент TITLE и допускает вложение элементов BASE, МЕТА, LINK, OBJECT, SCRIPT, STYLE.

Элемент для размещения заголовка Web-страницы. Строка текста, расположенная внутри этого элемента, отображается не в документе, а в заголовке окна броузера. Эта строка часто используется при организации поиска в WWW . Поэтому авторы, создающие Web-страницы для размещения в Сети, должны позаботиться о том, чтобы эта строка, не будучи слишком длинной, достаточно точно отражала назначение документа.

Описание стиля некоторых элементов Web-страницы. В файле Strukt.htm назначены шрифты для элементов Н2 и CODE.

Естественно, что для каждого элемента существует стилевое оформление по умолчанию, поэтому употребление элемента STYLE не обязательно, но желательно.

Интересно, как синтаксис HTML отражает историю развития вычислительной техники. Например, старый, теперь уже не работающий элемент BLINK напоминает нам о тех временах, когда люди использовали дисплеи, которые имели только текстовый режим. При таком положении вещей мигание текста (blink) было, наверное, единственным достижимым визуальным эффектом .

В противоположность этому, элемент STYLE, введенный сравнительно недавно, вызывает ассоциации с программами для Windows, так как в них впервые появилось стилевое оформление текста, которое теперь невероятно популярно, и без него уже немыслима работа в таких приложениях, как Word или Excel.

Этот элемент содержит служебную информацию, которая не отражается при просмотре Web-страницы. Внутри него нет текста в обычном понимании, поэтому нет и конечного тега. Каждый элемент МЕТА содержит два основных атрибута, первый из которых определяет тип данных, а второй -- содержание.

Кроме этого, элемент МЕТА может содержать URL. Шаблон соответствующего атрибута таков:

URL="http://адрес"

Этот элемент заключает в себе гипертекст, который определяет собственно Web страницу. Это та произвольная часть документа, которую разрабатывает авто страницы и которая отображается броузером. Соответственно, конечный тег этого элемента надо искать в конце HTML-файла. Внутри элемента BODY можно использовать все элементы, предназначенные для дизайна Web-страницы. Внутри начального тега элемента BODY можно расположить ряд атрибутов, обеспечивающих установки для всей страницы целиком. Рассмотрим их по порядку.

Один из самых полезных для дизайна -- атрибут, определяющий фон страницы. Его появление можно уподобить маленькой революции в WWW, так как одинаково серые Web-страницы вдруг расцвели яркими цветными узорами:

background="Путь к файлу фона"

Более простое оформление фона сводится к заданию его цвета:

bgcolor="#ff/?GGSS"

Цвет фона задается тремя двуразрядными шестнадцатеричными числами, которые определяют интенсивность красного, зеленого и синего цветов соответственно. Более подробно о задании цветов будет рассказано ниже.Оба приведенных выше атрибута не являются альтернативными и часто используются совместно: если по каким-либо причинам не может быть найден рисунок фона, используется цвет.

Поскольку фон страницы может изменяться, необходимо иметь возможность подбирать соответствующий цвет текста. Для этого имеется следующий атрибут

text="#/?/?GGB5"

Для задания цвета текста гиперссылок используется следующий атрибут:

Точно так же можно задать цвет для просмотренных гиперссылок:

vlink="#/?/?GGflS"

Можно также указать изменение цвета для последней выбранной пользователем гиперссылки:

Гипертекст, расположенный внутри элемента BODY, может иметь произвольную структуру. Ее определяют, в первую очередь, назначение Web-страницы и фантазия разработчика .

Элемент заголовка. Существует шесть уровней заголовков, которые обозначаются Н1...Н6. Заголовок уровня 1 самый крупный, а уровень 6 обеспечивает самый маленький заголовок. Для заголовков можно использовать атрибут, задающий выравнивание влево, по центру или вправо:

Горизонтальная линия (horizontal rule) -- очень часто используемый элемент. Во-первых, потому что с его помощью очень удобно делить страницу на части. Во-вторых, потому что выбор подобных элементов оформления у автора страницы очень небольшой. Действительно, в HTML практически отсутствуют похожие конструкции, только для горизонтальной линии почему-то было сделано исключение. Правда, несмотря на некоторую скупость языка в этой области, можно придумать немало стандартных графических образов, которые разнообразили бы вид страниц .

Элемент не имеет конечного тега, но допускает ряд атрибутов для выравнивания влево, по центру, вправо, по ширине:

Можно задавать толщину линии:

51ге=толщина в пикселах

Можно управлять длиной линии:

fiitifn-длина в пикселах

width=/^twa в процентам/ч

Можно выбрать цвет:

со1ог="цвет"

HTML-документ может быть очень большим, и в этом случае пользователю должна быть предоставлена возможность быстрого перемещения к нужному раздел документа . Для этого можно использовать механизм гиперссылок. Необходим также в нужных местах текста расставить соответствующие метки. Здесь мы рассмотрим только шаблон для создания меток:

<А name=" метка ">Произвольный текст

В этом случае данной строке документа присваивается имя, и, следовательно, другой части документа или даже на другом документе может быть создана гиперссылка, приводящая в эту точку. Например, для перехода внутри документа можно использовать следующую конструкцию:

<Р>Переход к <А href=" Пметка ">метке

Несколько подобных строк могут образовать своеобразное оглавление Web-страницы, которое можно разместить в начале и в конце документа.

Элемент для задания базового адреса (URL) для ссылок. Это позволяет опускать начальную часть адреса в ссылках документа. Для использования этого элемента необходимо использовать следующую конструкцию:

Фрагмент адреса путъ // не является обязательным.

При формировании полного адреса он будет отброшен.

Так, если в тексте документа встретится относительная ссылка

<А ef =" путь2/имя документа, htm" "> Видимый текст ссылки,

то она будет соответствовать URL

В том случае, когда надо задать базовый адрес для локального диска (например.D:), должна быть использована такая конструкция:

Тогда при указании относительной ссылки можно будет задавать не только имя файла, но и имена папок, в которых он находится. Иными словами, путь к файлам может быть разбит на две части: абсолютную и относительную. Это полезно в том случае, когда для файлов, указанных в документе, есть общий начальный фрагмент пути. В выражении абсолютной ссылки можно также опустить указание на схему доступа (file: //). В этом случае будет учитываться только левая часть абсолютной ссылки до первого левого символа "", то есть имя локального диска.

Правила синтаксиса

Теперь, когда мы знаем, как выглядит код Web-страницы, можно сделать некоторые обобщающие выводы относительно синтаксиса HTML. При использовании каждого элемента важно знать, какие элементы могут располагаться внутри него и внутри каких элементов может находиться он сам.

Так, взаимное расположение элементов HTML, HEAD, TITLE и BODY должно быть стандартным на любой странице, правда, в тех случаях, когда не используются фреймы. Если же страница представляет собой документ планировки фреймов, то вместо элемента BODY используется элемент FRAMESET .

Существуют группы элементов, которые используются совместно. К ним относятся элементы для создания таблиц, списков, фреймов.

В этом случае порядок вложения элементов определяется логикой создания того или иного объекта на странице: тут надо помнить несложные правила конструирования.

Таблицы и фреймы часто используются для того, чтобы разместить детали страницы (рисунки, текст и т. д.) в определенном порядке.

Например, располагая рисунок внутри ячейки таблицы, можно добиться определенного его положения.

В таких случаях вложенность элементов определяется разработчиком Web-страницы, и многое зависит от его фантазии и умения .

Большое количество элементов, которые используются для форматирования текста, допускают самые разнообразные варианты вложения. И сами они обязательно должны располагаться внутри определенных элементов.

Здесь надо руководствоваться здравым смыслом: каждый элемент выполняет заданную функцию и имеет определенную область действия.

В приведенном ниже примере есть два абзаца (первый в зеленой рамке) и таблица:

<Р style="border: Зрх solid дгееп">Текст абзаца 1

. . .

<Р> Текст абзаца 2

Таблица в данном случае -- независимый элемент. Ее можно, например, выравнивать независимо от остального текста.

Можно использовать другой код:

<Р style="border: Зрх solid дгееп">Текст абзаца 1

. . .

<Р> Текст абзаца 2

Исчез конечный тег первого абзаца. Теперь таблица является частью первого абзаца, и зеленая рамка будет охватывать таблицу и текст. И наоборот, элемент Р может находиться внутри таблицы: например, один элемент ячейки TD может содержать несколько абзацев Р.

Нарушение правил вложения -- одна из наиболее распространенных ошибок при создании Web-страниц. Чтобы избежать таких ошибок, надо пользоваться редакторами гипертекста, которые автоматически контролируют выполнение правил синтаксиса. Ниже приведена строка, содержащая типичную ошибку вложенных элементов:

<Н1>Заголовок 1 <Н2> Заголовок 2

Заголовок 3

Надо заметить, что броузеры построены таким образом, что они "стараются" реагировать на ошибки разметки гипертекста. Если страница может быть отображена, то она выводится на экран без каких-либо предупреждающих сообщений.

Программа интерпретирует ошибочно расставленные теги определенным образом и формирует изображение, следуя логике, заложенной в нее разработчиками. При этом вид страницы может и не соответствовать замыслу автора. И только в случае очень серьезных ошибок или явных противоречий броузер выводит сообщение с невозможности отобразить страницу.

Косвенным признаком ошибки разметок может служить появление на странице фрагментов кода HTML. Пользователи много работающие с Интернетом, наверняка сталкивались с такой ситуацией.

Правила синтаксиса распространяются и на использование стартового и конечного тегов, атрибутов и содержимого элемента. Не путайте понятия "элемент" v. "тег". Элемент -- это контейнер, содержащий атрибуты внутри стартового тега к полезную информацию между стартовым и конечным тегами. Тег -- это конструкция, заключенная в угловые скобки и используемая для обозначения области действия элемента .

Некоторые элементы не имеют конечного тега. Очевидно, что элементу BR, обозначающему конец строки, не нужен конечный тег. Некоторые элементы могут использоваться с конечным тегом или без него. Самым ярким примером служит элемент абзаца Р.

Он может иметь конечный тег, но если этот тег не задан, то признаком окончания действия элемента служит следующий элемент, который может логически определить конец текущего абзаца: другой элемент Р, элемент рисунка IMG, элемент списка UL, элемент таблицы TABLE и т.д.

Таким образом, полезная информация одного элемента должна находиться или между начальным и конечным тегами данного элемента, или между начальным тегом данного и начальным тегом следующего элемента.

Любой произвольный текст, введенный на страницу, воспринимается браузером как подлежащий выводу на экран и, следовательно, форматированию в соответствии с окружающими этот текст элементами. При этом не учитывается разбиение текста на строки, полученное в текстовом редакторе. Теоретически, всю Web-страницу можно уместить в одной длинной строке. Символы конца строки, введенные, например, в Блокноте, могут помочь чтению кода HTML, но не отображаются браузером.

Последний, при выводе страницы на экран, может оборвать строку в соответствии с расстановкой элементов Hn, P или BR, а в остальных случаях он форматирует абзацы произвольно, в зависимости от объема текста, размера шрифта и текущего размера окна.

Поэтому Web-страницы надо компоновать таким способом, чтобы их вид кардинально не изменялся для разных режимов разрешения монитора, размера экрана, размера окна броузера, а также для полноэкранного или оконного режимов.

Очень важным правилом, которое не имеет исключений, является размещение атрибутов элемента внутри начального тега.

Современные информационные Web технологии быстро изменяют наш мир и непосредственно влияют на развитие Web-технологий. Эта технологическая революция сильно повлияла не только на бизнес, но также на частную и профессиональную жизнь. Новейшие Web-технологии проникают во все сферы жизни общества, изменяют способы общения и принципы ведения Web-проектов современных компаний, определяя судьбу последних. Внутренняя сложность и предельная простота применения современных информационные Web технологии делает их доступными каждому, кто ежедневно сталкивается с применением их в своей профессиональной деятельности.

И в быту, и в бизнесе, в переписке и торговле люди и организации используют Web, создают собственные Web-узлы, где предлагают информацию, товары и услуги. Средства создания Web-ресурсов развиваются стремительно и без остановок, позволяют создавать сложные Web-документы, не требуя специальных знаний об их структуре и внешнем виде, освобождая время для продуктивной творческой деятельности. Главное преимущество Web-технологий в современных условиях заключается в их простоте и как следствие в повышении эффективности их применения.

Язык гипертекстовой разметки HTML

Популярность Internet во многом вызвана появлением World Wide Web (WWW), так как это первая сетевая технология, которая предоставила пользователю простой современный интерфейс для доступа к разнообразным сетевым ресурсам. Простота и удобство применения привели к росту числа пользователей WWW и привлекли внимание коммерческих структур. Далее процесс роста числа пользователей стал лавинообразным, и так продолжается до сих пор. На основе необходимости объединить все множество информационных ресурсов начала развиваться технология при помощи, которой определяется гипертекстовая навигационная система. Этой технологией стал язык HTML. Технология HTML на начальном этапе была чрезвычайно проста, и практически все пользователи сети одновременно получили возможность попробовать себя в качестве создателей и читателей информационных материалов, опубликованных во Всемирной паутине. Дело в том, что при разработке различных компонентов технологии предполагалось, что квалификация авторов информационных ресурсов и их оснащенность средствами вычислительной техники будут минимальными.

Язык HTML (HyperText Markup Language, язык разметки гипертекста) относится к числу так называемых языков разметки текста (markup languages). Под термином "разметка" понимается общая служебная информация, которая не выводится вместе с документом, но определяет; как должны выглядеть те или иные фрагменты документа. Например, вы можете потребовать, чтобы какое-либо слово выводилось жирным или курсивным шрифтом, вывести отдельный абзац особым шрифтом или оформлять заголовки увеличенным шрифтом.

В наши дни существует множество разных языков разметки. Например, в коммуникационных программах особая форма разметки определяет смысл каждого пакета из нулей и единиц, пересылаемого в Internet. Впрочем, любой язык разметки должен решать две важные задачи:

1) язык определяет синтаксис разметки;

2) язык определяет смысл разметки.

Наиболее распространенным из языков разметки Web-страниц является HTML. Это язык разметки был создан и рекламировался как одна из конкретизаций SGML. Впервые предложенный в 1974 году Чарльзом Голдфарбом и в дальнейшем после значительной доработки принятый в качестве официального стандарта ISO, SGML (Standard Generalized Markup Language, Стандартный обобщенный язык разметки) представляет собой метаязык - систему для описания других языков.

Появление стандарта SGML было обусловлено необходимостью совместного использования данных разными приложениями и операционными системами. Даже в далеких 60-х годах у пользователей компьютеров возникало немало проблем с совместимостью. Проанализировав недостатки многих нестандартных языков разметки, трое ученых из IBM -- Чарльз Гольдфарб (Charles Goldfarb), Эд Мо-шер (Ed Mosher) и Рэй Лори (Ray Lorie) -- сформулировали три общих принципа, обеспечивающих возможность совместной работы с документами в разных операционных системах.

1) Использование единых принципов форматирования во всех программах, выполняющих обработку документов. Вполне логичное требование -- всем нам хорошо известно, как трудно договориться между собой людям, говорящим на разных языках. Наличие единого набора синтаксических конструкций и общей семантики заметно упрощает взаимодействие между программами.

2) Специализация языков форматирования. Благодаря возможности построения специализированного языка на базе набора стандартных правил программист перестает зависеть от внешних реализаций и их представлений о потребностях конечного пользователя

3) Четкое определение формата документа. Правила, определяющие формат документа, задают количество и маркировку языковых конструкций, используемых в документе. Применение стандартного формата гарантирует, что пользователь будет точно знать структуру содержимого документа. Обратите внимание: речь идет не о формате отображения документа, а о его структурном формате. Набор правил, описывающих этот формат, называется "определением типа документа" (document type definition, DTD).

Эти три правила были заложены в основу предшественника SGML -- GML (Generalized Markup Language). Исследования и разработка GML продолжались около десяти лет, пока в результате соглашения, заключенного международной группой разработчиков, не появился стандарт SGML.

HTML (Hypertext Markup Language, Язык разметки гипертекста) -- это компьютерный язык, лежащий в основе World Wide Web. HTML основан на стандарте SGML гипертекстовый язык разметки документов для их представления в Web. Стандарты языка HTML, одного из ключевых стандартов Web, разрабатываются и поддерживаются консорциумом W3C. Основателем этого международного консорциума является Тим Бернес-Ли (Tim Berners-Lee). Консорциум помимо создания стандартов форматирования, является центром разработки Semantic Web (семантическая сеть). Средствами языка HTML обеспечивается форматная разметка документов, определяются гиперсвязи между документами и/или их фрагментами.

В качестве основы написания кода HTML был выбран обычный текстовый файл. Таким образом, гипертекстовая база данных в концепции WWW -- это набор текстовых файлов, размеченных на языке HTML, который определяет форму представления информации (разметка) и структуру связей между этими файлами и другими информационными ресурсами (гипертекстовые ссылки).

Разработчики HTML смогли решить две задачи:

· предоставить дизайнерам гипертекстовых баз данных простое средство создания документов;

· сделать это средство достаточно мощным, чтобы отразить имевшиеся на тот момент представления об интерфейсе пользователя гипертекстовых баз данных.

Первая задача была решена за счет выбора теговой модели описания документа. Язык HTML позволяет размечать электронный документ, который отображается на экране с полиграфическим уровнем оформления; результирующий документ может содержать самые разнообразные метки, иллюстрации, аудио- и видеофрагменты и так далее. В состав языка вошли развитые средства для создания различных уровней заголовков, шрифтовых выделений, различные списки, таблицы и многое другое.

Вторым важным моментом, повлиявшим на судьбу HTML, стало то, что в качестве основы был выбран обычный текстовый файл. Среда редактирования HTML является нейтральной полосой между простейшим текстовым файлом и приложением WYSIWYG (what you see is what you get - что вы видите, то и получаете). Выбор среды редактирования дает все преимущества текстового редактирования.

Гипертекстовые ссылки, устанавливающие связи между текстовыми документами, постепенно стали объединять самые различные информационные ресурсы, в том числе звук и видео. Система гиперссылок HTML позволяет построить систему взаимосвязанных документов по различным критериям. Язык HTML содержит команды (тэги), позволяющие управлять формой и размером шрифтов, размером и расположением иллюстраций, позволяет осуществлять переход от фрагмента текста или иллюстрации к другим html - документом - так называемую гипертекстовую ссылку. Документ в html - формате представляет собой текстовый файл, содержащий все необходимые сведения о выводимой на экран информации. Для управления сценариями просмотра страниц Website (гипертекстовой базы данных, выполненной в технологии World Wide Web) можно использовать языки программирования этих сценариев, например, JavaScript, Java и VBScript. Формы для введения пользователем данных, которые позднее подвергаются обработке и другую информацию можно обрабатывать с помощью специальных серверных программ (например, на языках PHP или Perl). Язык HTML позволяет помещать на страницы гипертекстовые ссылки и интерактивные кнопки, которые соединяют ваши Web-страницы с другими страницами того же Web-сайта, равно как и с другими Web-сайтами по всему миру.

HTML является языком разметки текста, а не языком программирования, который всего лишь один из инструментов (точнее, язык описания страниц), используемый при создании Web-страниц. В HTML ограничены возможности форматирования текста по сравнению с возможностями издательских программам, особенно при издании текста, насыщенного сложными элементами.

До сих пор нет настолько удобных редакторов HTML, чтобы можно было бы обойтись без текстового редактора и ручной расстановки тэгов. Это усложняет работу с языком, делает необходимым овладение ими совершенно несвойственных им функций.

Анализируя особенности языка HTML и оценивая уровень его проработки, можно прийти к выводу, что уже в ближайшие годы следует ожидать появления более совершенных его модификаций, новых языков и прикладных пакетов для работы с web-страницами.

Динамический и статический HTML-документы

Различают два вида html-документов - статические и динамические. Статические документы хранятся в файлах той файловой системы, которая используется web-сервером или браузером при просмотре локальных файлов. При размещении информации на web-сервере можно использовать динамические документы - такие, которые не существуют постоянно в виде файлов, а генерируются в момент запроса клиента. При чем для конечного пользователя не имеет значения динамический или статический способ представления документов.

Для генерирования динамического документа HTML требуется специально написанная программа по правилам, определяемым web-сервером. При планировании размещения информации на web-сервере, для правильного определения использования, какого либо вида документов, необходимо учитывать степень обновляемости данных, их объем и частоту обращения.

Динамический способ определяет хранение данных в формализованном виде, например в базе данных.

Если же данные хранятся в формализованном виде, то, используя шаблоны документов, в которых были произведены изменения, генерируются статические документы. Для генерирования статических документов можно использовать любые средства отчетов, имеющихся в той системе управления баз данных (СУБД), которой обработаны и формализованы данные.

Перспективы HTML

Новых версий языка HTML не будет, однако существует дальнейшее развитие HTML под названием XHTML (англ. Extensible Hypertext Markup Language -- расширяемый язык разметки гипертекста). Пока XHTML по своим возможностям сопоставим с HTML, однако предъявляет более строгие требования к синтаксису. Как и HTML, XHTML является подмножеством языка SGML, однако XHTML, в отличие от предшественника, соответствует спецификации XML. Вариант XHTML 1.0 был одобрен в качестве Рекомендации Консорциума Всемирной паутины (W3C) 26 января 2000 года. Необходимо, однако, учесть одну серьезную деталь - в этом формате создано большое количество информационных ресурсов, что они долго еще будут "пониматься" web-браузерами и использоваться в своем первозданном виде. Кроме того, все новые форматы будут разрабатываться (и уже разрабатываются - например XML) с поддержкой технологий HTML.

Стиль работы меняется, меняются и средства доступа к содержимому. Язык HTML уже изначально создавался как платформо - независимый язык. Новые технологии применяются практически везде и довольно скоро пространство World Wide Web перестанет быть достоянием лишь пользователей настольных персональных компьютерах, уже сейчас некоторые пользователи активно пользуются голосовыми браузерами для незрячих или браузерами, использующими азбуку Бройля, зачастую содержимое выводится не на монитор компьютера, а в телевизор, когда применяются приставки с выходом в сеть или на телетайп, или на монохромные дисплеи различных организаторов-пейджеров и прочие.

Internet Engineering Task Force ) опубликовал черновик предложения по стандарту HTML

Структура документа HTML

Документ HTML 4 состоит из трех частей:

  • строка, содержащая информацию о версии HTML ,
  • объявляющий раздел header/"шапка" (ограниченный элементом HEAD ),
  • тело, содержащее собственно сам документ.

Тело может содержаться в элементах BODY или FRAMESET . Пробельные символы (пробелы, символы новой строки , символы табуляции и комментарии) могут появляться до или после этого раздела.

Simple page

Hello world!

Документ начинается с элемента типа документа, или doctype . Он описывает, какой тип HTML будет использован - чтобы клиентское приложение пользователя могло определить, как интерпретировать документ, и решить, следует ли он тем правилам, которым собирался следовать по своему заявлению.

После этого можно видеть открывающий тег элемента html . Это оболочка вокруг всего документа. Закрывающий тег html является последним объектом в любом документе HTML .

Внутри элемента html имеется элемент head . Он содержит информацию о документе ( метаданные ). Внутри head находится элемент title , который определяет заголовок "Simple page" в панели меню .

После элемента head следует элемент body , который является оболочкой, содержащей реальное содержимое страницы - в данном случае только элемент заголовка первого уровня (h1 ), который содержит текст "Hello world!" .

Элементы часто содержат другие элементы. Тело документа всегда будет содержать множество вложенных друг в друга элементов.

Разделы страницы создают общую структуру документа, и могут содержать подразделы. Они также могут содержать заголовки , параграфы, списки и т.д. Параграфы могут содержать элементы, которые создают ссылки на другие элементы, цитаты, выделения и т.д.

Синтаксис элементов HTML

Базовый элемент в HTML состоит из двух тэгов вокруг блока текста. Существуют элементы, которые не являются оболочкой для текста, и почти в каждом случае элементы могут содержать подэлементы (как html содержит head и body в примере выше).

Элементы могут также иметь атрибуты , которые могут модифицировать поведение элемента и вводить дополнительное значение .

Основы HTML

В этом примере элемент div (раздел страницы, способ разбиения документов на логические блоки) имеет добавленный атрибут id , для которого задано значение masthead . Элемент div содержит элемент h1 (заголовок первого, или самого важного уровня), который в свою очередь содержит некоторый текст. Часть этого текста упакована в элемент abbr (который используется для определения расширения сокращений), который имеет атрибут title , значение которого задано как Hypertext Markup Language .

Многие атрибуты в HTML являются общими для всех элементов, но некоторые являются специфическими для данного элемента или элементов. Все они имеют форму:

ключевое_слово="значение"

Значение должно быть помещено в одиночные или двойные кавычки (в некоторых ситуациях кавычки могут отсутствовать, но это не слишком хорошо с точки зрения предсказуемости, понимания).

Атрибуты и их возможные значения определяются в основном спецификациями HTML (http://www.w3.org/TR/html401/index/attributes.html), поэтому - нельзя создавать свои собственные атрибуты. Единственными реальными исключениями являются атрибуты id и class , значения полностью которых предназначены для добавления в документы вашего собственного значения и семантики.

Элемент внутри другого элемента называют "потомком" этого элемента. В примере выше abbr является потомком h1 , который в свою очередь является потомком div . И наоборот, div является "предком" элемента h1 .

Элементы блочного уровня и строковые элементы

Имеется две основные категории элементов в HTML , которые соответствуют типам контента и структуре, которую представляют эти элементы - элементы блочного уровня и строковые элементы .

Блочный уровень означает более высокий уровень элемента, обычно информирующий о структуре документа. Элементы блочного уровня можно представлять как элементы, которые начинаются с новой строки, отрываясь от того, что было перед этим. Распространенными блочными элементами являются параграфы, пункты списка, заголовки и таблицы .

Строковые элементы содержатся внутри структурных элементов блочного уровня и охватывают только части текста документа, а не целые области. Строковый элемент не приводит к появлению в документе новой строки, т.к. они являются элементами, которые появляются в параграфе текста. Распространенными строковыми элементами являются гипертекстовые ссылки, выделенные слова или фразы и краткие цитаты .

Заголовок

Заголовок HTML -документа является необязательным элементом разметки. Первоначально существование заголовка определялось необходимостью именования окна браузер . Это достигалось за счет элемента разметки TITLE :

Это заголовок ... ...

Еще одной функцией заголовка HTML -документа является управление HTTP -обменом через элемент разметки META . При современной практике размещения Веб-узлов компаний на серверах провайдеров администраторы этих узлов могут не иметь возможности управлять программой-сервером. В этом случае для управления обменом остается только одна возможность - через заголовок HTML -документа.

Заголовок HTML -документа также предназначен для описания поискового образа документа, необходимого для индексирования документа роботами поисковых систем. Элемент META позволяет хранить списки ключевых слов и описания документа, которые будут использоваться для составления индекса поисковой системы и появляться в качестве описания документа в случае выдачи ссылки на него при поиске по ключевым словам.

Основные теги заголовка - это элементы HTML -разметки, которые наиболее часто встречаются в заголовке HTML -документа, т.е. внутри элемента разметки HEAD :

  • TITLE (заглавие документа);
  • BASE (база URL );
  • ISINDEX (поисковый шаблон);
  • META (метаинформация);
  • LINK (общие ссылки);
  • STYLE (описатели стилей);
  • SCRIPT (сценарии).

Чаще всего применяются элементы TITLE, SCRIPT, STYLE . Использование элемента META говорит об осведомленности автора о правилах индексирования документов в поисковых системах и возможности управления HTTP -обменом данными. BASE и ISINDEX в последнее время практически не применяются. LINK указывают только при использовании внешних относительно данного документа описателей таблиц стилей.

Элемент разметки HEAD содержит заголовок HTML -документа. Данный элемент разметки не является обязательным. При наличии тега начала элемента разметки желательно использовать и тег конца элемента разметки . По умолчанию элемент HEAD закрывается, если встречается либо тег начала контейнера BODY , либо тег начала контейнера FRAMESET .

Контейнер заголовка служит для размещения информации, относящейся ко всему документу в целом.

Элемент разметки TITLE служит для именования документа в World Wide Web . При выборе текста для содержания контейнера TITLE следует учитывать, что отображается он системным шрифтом , так как является заголовком окна браузера.

Синтаксис контейнера TITLE в общем виде выглядит следующим образом:

название документа

Заголовок не является обязательным контейнером документа. Его можно опустить. Роботы многих поисковых систем используют содержание элемента TITLE для создания поискового образа документа. Слова из TITLE попадают в индекс поисковой системы. Из этих соображений элемент TITLE всегда рекомендуется использовать на страницах Веб-узла.

Элемент разметки BASE служит для определения базового URL для гипертекстовых ссылок документа, заданных в неполной (частичной) форме. Кроме того, BASE позволяет определить целевое окно загрузки документа по умолчанию при выборе гипертекстовой ссылки текущего документа. Наиболее часто BASE встречается на страницах узлов, которые имеют "зеркала". Часть документов основного сервера по разным причинам на "зеркальный" сервер не переносится. В этом случае документ с принудительно заданным базовым URL всегда будет ссылаться на основной сервер .

Тег начала контейнера содержит один обязательный атрибут HREF , и может содержать один необязательный атрибут TARGET . Синтаксис контейнера BASE в общем виде выглядит следующим образом:

Элемент разметки ISINDEX используется для указания поискового шаблона и унаследован от ранних версий HTML . В HTML 4.0 этот контейнер не определен.

Элемент разметки META

META содержит управляющую информацию, которую браузер использует для правильного отображения и обработки содержания тела документа , например с помощью атрибута Content-type можно задать перекодировку документа на стороне клиента.

С помощью META также можно задать и другие операторы . Например, запретить кэширование документа. Для запрета кэширования достаточно вставить в заголовок META - тег вида:

В новой версии протокола HTTP (HTTP 1.1) управление кэшированием осуществляется через оператор Cache-Control . Для получения такого же результата, как в случае с Pragma , в заголовке HTML -документа достаточно указать:

Можно запретить хранение документа после пересылки.

I . Основные сведения об HTML .

За последние годы разработки для Интернета эволюционировали от статических страниц до динамических информационных систем. Некоторое время назад создание современных Web-страниц не требовало практически ничего, кроме совершенного владения языком разметки гипертекста (Hypertext Markup Language, HTML).

HTML представляет собой простой язык обработки текстов; на этом языке при помощи набора тегов (tags ) создается документ, который можно просматривать специальной программой просмотра Web (browser ).

HTML - не язык программирования в том смысле, как C++ или Visual Basic; он больше напоминает средства форматирования документов с использованием управляющих последовательностей. Кодирование на HTML часто сравнивают с созданием документа в формате Microsoft Word путем набивки кодов форматирования прямо в Notepad. Очевидно, что функциональность этого крайне мала.

Под гипертекстовым документом понимают документ, содержащий ссылки на другой документ. Реализовано все это через протокол передачи гипертекста HTTP (Hyper Text Transfer Protocol).

Информация в документах Web может быть найдена по ключевым словам. Это означает, что каждый обозреватель Web содержит определенные ссылки, через которые образуются гиперсвязи, позволяющие миллионам пользователей Internet вести поиск информации по всему миру.

Гипертекстовые документы создаются на базе языка HTML (Hyper Text Markup Language). Этот язык весьма прост, управляющие коды его, которые, собственно, и компилируются обозревателем для отображения на экране, состоят из текста ASCII. Ссылки, списки, заголовки, картинки и формы называются элементами языка HTML .

В настоящее время существует масса редакторов Web-страниц, которые не требуют от вас знаний основ HTML. Но для того чтобы уметь профессионально подготавливать гипертекстовые документы, вы должны знать их внутреннее строение, то есть код документа HTML.

HTML позволяет вам формировать различную гипертекстовую информацию на основе структурированных документов.

Обозреватель определяет сформированные ссылки и, через протокол передачи гипертекста HTTP, открывает доступ к вашему документу другим пользователям Internet. Разумеется, для успешной реализации всего этого необходим софт, полностью совместимый с WWW и поддерживающий HTML.

II. Описание HTML

HTML-документ - это обычный текстовой файл . Используя любой Web-обозреватель, вы можете просмотреть результат вашей работы, просто загрузив в него созданный на основе синтаксиса HTML текстовой файл.

Гипертекстовый язык предоставляет только информацию для чтения . Это означает, что редактировать Web-страницы может лишь тот, кто их создал, а не простой пользователь Сети.

Самый главный элемент гипертекстового языка - это ссылки . В мировой паутине вы просто нажимаете на ссылку и мгновенно оказываетесь в другой точке земного шара на выбранной вами страничке.

Тэги.

Тэг - оформленная единица HTML-кода .

Тег HTML состоит из следующих друг за другом в определенном порядке элементов:

  • левой угловой скобки < (такого же, как "меньше чем" символа)
  • необязательного слэша /, который означает, что тег является конечным тегом, закрывающим некоторую структуру . Таким образом в этом контексте Вы можете читать символ /, как конец...
  • имени тега, например TITLE или PRE
  • необязательных, если даже тег может иметь их, атрибутов . Тег может быть без атрибутов или сопровождаться одним или несколькими атрибутами, например: ALIGN=CENTER
  • правой угловой скобки > (такой же, как символа "больше чем").

Большинство тегов имеют открывающий элемент <> и закрывающий . Между ними и находятся коды , которые распознает Web-обозреватель

В таких случаях два тега и часть документа, отделенная ими, образуют блок, называемый HTML элементом . Некоторые теги, например


, являются элементами HTML сами по себе, и для них соответствующий конечный тег неверен.

Для каждого тега определяется множество возможных атрибутов . Большинство тегов допускает один или несколько атрибутов, однако атрибутов может и совсем не быть. Спецификация атрибута состоит из расположенных в следующем порядке:

  • имени атрибута, например WIDTH
  • знак равенства (=)
  • значения атрибута, которое задается строкой символов, например, "80".

Всегда полезно заключить значение атрибута в кавычки , используя либо одинарные ("80"), либо двойные кавычки ("80"). Строка в кавычках не должна содержать такие же кавычки внутри себя . Так, если дата заключена в двойные кавычки, используйте одинарные кавычки для последующего заключения в кавычки, и наоборот. Вы можете также опустить кавычки для значений атрибутов, которые состоят только из следующих символов:

  • символов английского алфавита (A - Z, a - z)
  • цифр (0 - 9)
  • промежутков времени
  • дефисов (-)