Пятница, 26.04.2024, 20:55
Зайди на минутку
Главная Регистрация Вход
Приветствую Вас, Залетный · RSS

 test
Copyright MyCorp © 2010
Профиль
Привет: Залетный

Сообщения:

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или войдите!
Меню сайта
Поиск
Форумные дела
Зрелые женщины
Флудить так флудить ..
Где кто отдыхает или отдыхал
Маленький городок
Предложения и пожелания
спамеры ))
Прицепились
Съедобное - Не съедобное
Цепочка
Google Chrome
стоит отметить


Форма входа
 Каталог статей
Главная » Статьи » Программирование » Internet (WEB-программирование)


DOCTYPE и раздел документа HEAD

Объявление DOCTYPE

Согласно Спецификации HTML 4.01, директива DOCTYPE предназначена для объявления типа документа - так называемого DTD (Document Type Definition, определение типа документа). DTD представляет собой формальную конструкцию, в корой выражена вся специфика HTML как одного из приложений языка SGML. Определение типа документа представляет собой перечень различных конструкций SGML, которые определяют, например, какие элементы в каком порядке могут встречаться внутри каждого из элементов; полный список допустимых элементов с указанием на обязательность для каждого из них начального и конечного тегов; полный список атрибутов для каждого элемента и значениями по умолчанию и другие правила синтаксиса.

Объявление DOCTYPE выглядит следующим образом:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

Наиболее важной частью DOCTYPE являются две строки, взятые в кавычки. Первая строка "-//W3C//DTD HTML 4.01//EN" утверждает, что данный документ является документом DTD, использует английский язык текста для описания объекта, описывает HTML версии 4.01 и опубликован организацией W3C. Вторая строка "http://www.w3.org/TR/html4/strict.dtd" указывает на размещение самого документа DTD, используемого для этого DOCTYPE.

Режимы представления

Все современные браузеры ориентируются на DOCTYPE (или его отсутствие) в начале страницы, выбирая режим отображения для HTML-документов. В Internet Explorer версии 8 режим определяется также и другими факторами, например, HTTP-заголовком, периодически получаемыми от Microsoft данными, пользовательскими настройками и др. Но по умолчанию даже в Internet Explorer 8 режим зависит от DOCTYPE.

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

При режиме обратной совместимости (Quirks Mode) в браузерах нарушаются рекомендации W3C для обеспечения нормального отображения страниц. Если в коде HTML-документа используется неполный или устаревший вид DOCTYPE или DOCTYPE вообще отсутствует, то браузер перейдет в данный режим и будет исходить из предположения, что код страницы написан с ошибками, не соответствует принятым стандартам или документ написан для "старых" браузеров. В этом режиме браузер пытается разобрать страницу по правилам обратной совместимости и выводит ее на экран так, как вывел бы ее браузер более ранней версии. Для разных браузеров существуют различные варианты совместимости с предыдущими версиями. Так, Internet Explorer версий 6, 7 и 8 в режиме обратной совместимости фактически воспроизводят установки, типичные для Internet Explorer 5. У других браузеров режим обратной совместимости представляет собой набор отклонений от почти стандартного режима. К сожалению, режим обратной совместимости лидирует с большим отрывом. Статистика использования типов DTD от 10 апреля 2008 г., опубликованная на сайте Qindex.info (www.qindex.info/Q_get.php?g_clss=forum&g_prcss=thrd&g_tmplt=&g_brd=5&g_thrd=128) показывает, что более 50% сайтов работают в режиме обратной совместимости.

В стандартном режиме (Standards Mode) браузеры пытаются обращаться с правильно составленными документами в полном соответствии со спецификацией CSS, настолько, насколько конкретный браузер поддерживает стандарты. Поскольку уровень поддержки стандартов разными браузерами различен, то даже стандартный режим пока не может гарантировать полностью одинакового отображения и поведения страниц.

Некоторые браузеры, такие как Firefox, Safari, Opera (начиная с 7.5) и Internet Explorer 8 поддерживают и третий режим - почти стандартный (Almost Standards Mode), который не достаточно строго следует рекомендациям W3C. Internet Explorer 6 и 7 для Windows, Opera ниже версии 7.5 и некоторые другие браузеры не нуждаются в таком режиме, поскольку даже в своих стандартных режимах не соблюдают все спецификации CSS.

Internet Explorer 8 также поддерживает режим, в основном воспроизводящий стандартный режим Internet Explorer 7. У других браузеров подобных режимов нет.

Выбор DOCTYPE

Спецификация допускает использование трех различных версий DTD, которые отличаются друг от друга поддержкой различных элементов и атрибутов. Опубликованный W3C список DTD, рекомендованных для использования в веб-документах, представлен на официальном сайте Консорциума (http://www.w3.org/QA/2002/04/valid-dtd-list.html).

Любое из перечисленных ниже объявлений DOCTYPE гарантированно включает браузеры в стандартный режим.

Объявление строгого DTD:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

Строгое DTD (строгий синтаксис) не допускает использования в документе различных не рекомендуемых элементов и атрибутов, большинство из которых предназначаются не для логической разметки, а для визуального форматирования. Данный DOCTYPE гарантирует, что при работе с данным HTML документом браузер будет использовать свой стандартный режим. Наиболее заметный эффект состоит в том, что будут получены более согласованные результаты при оформлении документа с помощью CSS.

Объявление переходного DTD:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

Переходное DTD (переходный синтаксис) включает в себя все элементы и атрибуты строгого DTD в совокупности с не рекомендуемыми элементами и атрибутами.

Объявление DTD "Набор фреймов":

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">

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

Раздел документа HEAD

Раздел документа HEAD определяет его заголовок и не является обязательным элементом, однако правильно составленный заголовок может быть очень полезен. Элементы, находящиеся в разделе HEAD , определяют большую часть инструкций для браузера, а также дополнительную информацию о HTML-документе. Содержимое элемента HEAD не отображается напрямую на веб-странице, за исключением элемента TITLE, устанавливающего заголовок веб-страницы. Раздел HEAD может содержать в себе следующие элементы: TITLE, META, BASE, LINK, STYLE, SCRIPT и OBJECT. В лекции мы дадим лишь основные подходы к работе с перечисленными элементами. Более подробно ознакомиться с ними можно в Спецификации HTML.

Элемент TITLE

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<TITLE>Пример использования элемента TITLE</TITLE>
</HEAD>
<BODY>
<P>Обратите внимание на панель заголовков!</P>
</BODY>
</HTML>

Результат выполнения данного кода представлен на рисунке 5.1. Текст из элемента TITLE выведен в панели заголовка выше средств навигации браузера.

Пример использования элемента TITLE
Рис. 5.1.  Пример использования элемента TITLE

Элемент META

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

Количество доступных свойств приближается к нескольким десяткам, но все они делятся на две группы: NAME и HTTP-EQUIV. Элементы группы NAME содержат текстовую информацию о документе, его авторе и некоторые рекомендации для поисковых машин (например, Robots, Description, Keywords, Author, Copyright и др.). Элементы группы HTTP-EQUIV влияют на формирование HTML-заголовка и определяют режим его обработки (Content-Language, Content-Type, Refresh и др.).

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

Каждый элемент META содержит в себе пару атрибутов: для указания названия свойства используются атрибуты name или http-equiv (в зависимости от используемого свойства), а значение этого свойства устанавливается атрибутом content. Например, следующий метаописатель задает имя автора документа:

<META name="Author" content="Bazil Snowman"> 

Дополнительно он может содержать атрибут lang, указывающий язык, на котором написано значение свойства:

<META name="Author" lang="en" content="Bazil Snowman"> 

Наибольший интерес из группы свойств NAME представляют свойства Description и Keywords. Эти свойства, наряду с элементом TITLE, широко используются для оптимизации и продвижения сайтов.

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

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

<META name="Description" content="Интернет-магазин Всякая всячина – самые низкие цены!">
<META name="Keywords" content="Интернет-магазин, игрушки, книги, литература, журнал,
музыка, диски, видео, DVD, двд, кино, софт, программы, игры,
ПО, игрушки, books, video, music, software, toys">

Среди свойств группы HTTP-EQUIV наиболее важными являются свойства Content-Type, Content-Style-Type и Content-Script-Type.

Свойство Content-Type отвечает за указание типа документа и кодировки символов. Данный метаописатель устанавливает в качестве кодировки HTML-страницы Кириллицу (Windows):

<META http-equiv="Content-Type" content="text/html;
charset=windows-1251">

Свойство Content-Style-Type служит для указания языка таблицы стилей. Если язык таблиц стилей не задан, по умолчанию используется язык text/css. Приведенная ниже запись явно задает в качестве языка таблицы стилей CSS:

<META http-equiv="Content-Style-Type" content="text/css"> 

Свойство Content-Script-Type определяет язык программирования сценариев. Возможны несколько значений данного параметра, однако по умолчанию используется JavaScript. Язык программирования сценариев JavaScript можно задать с помощью следующего метаописателя:

<META http-equiv="Content-Script-Type"
content="text/javascript">

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

Элемент BASE

Элемент BASE используется для явного задания полного URL-адреса документа. Это бывает полезно ввиду того, что общепринятым стилем задания гипертекстовых ссылок является их относительная адресация. То есть при задании ссылки на документ указывается не полный его URL-адрес, а его месторасположение относительно текущего адреса. Элемент BASE как раз и задает адрес, относительно которого и будут браться относительные ссылки.

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

Основным атрибутом элемента является href, который задает полный URL-адрес документа. Пример иллюстрирует применение элемента BASE и относительных ссылок:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HEAD>
<TITLE>Пример использования элемента BASE</TITLE>
<BASE href= "http://www.somewhere.ru">
</HEAD>
<BODY>
...текст документа...
<a href= "/images/someimage.jpg">Относительная ссылка на изображение</a>
...текст документа...
</BODY>
</HTML>

В этом примере переход по относительной ссылке задается относительно URL-адреса http://www.somewhere.ru. Таким образом, заданная в этом документе ссылка в абсолютном варианте независимо от месторасположения документа будет записана как http://www.somewhere.ru/images/someimage.jpg. Если базовый адрес не задан, то все относительные ссылки интерпретируются относительно каталога, в котором находится данный HTML-документ.

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

Элемент LINK

Элемент LINK задает вид взаимоотношений между содержащим его документом и другим ресурсом Сети и устанавливает между ними логическую связь. Один элемент LINK устанавливает связь только с одним внешним документом. Однако в HTML-документе может присутствовать несколько таких элементов.

Основными атрибутами элемента LINK являются href, указывающий URL-адрес документа, с которым задается взаимоотношение, и rel или rev, задающие прямую и обратную ссылку и определяющие тип ссылки, который показывает, чем документ, указанный в ссылке, является по отношению к текущему документу. Типы ссылок определены в Спецификации HTML.

Например, запись

<LINK rel="Copyright" href="copyright.html"> 

означает, что документ copyright.html является документом, содержащим сведения об авторском праве для текущего документа (прямая ссылка), а запись

<LINK rev="Chapter" href="main.html"> 

означает, что текущий документ является главой документа main.html (обратная ссылка).

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"

"http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<TITLE>Документ на русском языке</TITLE>
<LINK title ="Этот же документ на английском языке"
type="text/html" rel="alternate"
href="http://www.somewhere.ru/english.html"
hreflang="en">
...
</HEAD>
<BODY>
...текст документа на русском языке...
</BODY>
</HTML>

Также важным применением элемента LINK является подключение к документу внешней таблицы стилей. В этом случае элемент LINK имеет вид:

<LINK rel="StyleSheet" href="style.css" type="text/css"> 

Элемент STYLE

Элемент STYLE позволяет включать в документ внутренние таблицы стилей. Заголовок документа может содержать любое количество этих элементов. Обязательный атрибут type указывает на тип таблицы стилей, т.е. на язык, на котором описываются стили. Для каскадных таблиц стилей этот атрибут всегда должен иметь значение text/css.

Ниже представлен пример включения каскадных таблиц стилей в HTML-документ:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<TITLE>Пример использования элемента STYLE</TYTLE>
<STYLE type="text/css">
body{
background:#000;
color:#ccc;
font-family: helvetica, arial, sans-serif;
}
</STYLE>
</HEAD>
<BODY>
<P>Информация к размышлению...</P>
</BODY>
</HTML>

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

В описанном выше примере можно переопределить используемые цвета и размер шрифта, чтобы страница лучше выглядела при печати. Для этого можно добавить другой блок STYLE с атрибутом media со значением print, как показано ниже:

<STYLE type="text/css" media="print">
body{
background:#fff;
color:#000;
font-family: helvetica, arial, sans-serif;
font-size:300%;
}
</STYLE>

Результат предыдущего примера представлен на рисунке 5.2, где применяется стиль с параметром media="screen". На рисунке 5.3 представлен результат предварительного просмотра той же страницы, однако при этом уже действует стиль для печати, заданный параметром media="print" .

Страница со стилем для просмотра на мониторе

Рис. 5.2.  Страница со стилем для просмотра на мониторе

Страница со стилем для вывода на печать

Рис. 5.3.  Страница со стилем для вывода на печать

Элемент SCRIPT

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

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<TITLE>Пример использования элемента SCRIPT</TITLE>
<SCRIPT>
function crossing(){
return confirm("Вы готовы перейти на другой сервер?")
}
</SCRIPT>
</HEAD>
<BODY>
<A href="http://www.somewhere.com" onclick="return crossing()"> Ссылка на другой сервер </A>
</BODY>
</HTML>

Если открыть этот пример в браузере и щелкнуть на ссылке, то код попросит подтвердить действие пользователя, как представлено на рисунке 5.4.

Пример использования элемента SCRIPT

Рис. 5.4.  Пример использования элемента SCRIPT


Категория: Internet (WEB-программирование) | Добавил: naminutku (08.07.2010)
| Автор: Л.В. Кузнецова
Просмотров: 554 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Naminutku.ucoz.ru ©2024 - 2010
Погода
Категории раздела
CMD Windows [1]
Статейки по работе с CMD
HTML [14]
Здесь собраны статьи связанные с языком гипертекстовой разметки,а по простому - HTML
Internet (WEB-программирование) [10]
Обои на десктоп
Мини-чат
Наш опрос
Оцените мой сайт
Всего ответов: 28
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Сторонние счетчики
Seo анализ сайта
Сделать бесплатный сайт с uCoz