В этой главе мы начнем создавать HTML-документы, собирая вместе все известные нам элементы XHTML в базовый шаблон. После того как будет готов этот шаблон, можно будет заняться вводом текста. После этого вы научитесь сохранять готовые документы, тестировать их, просматривая в окне браузера, и проверять на соответствие стандартам.
Из этой главы вы узнаете:
как создать шаблон HTML;
как правильно структурировать веб-документ;
как вводить текст;
как сохранять, тестировать и проверять страницы.
HTML-шаблон
Как уже было сказано в главе 3, все, что вам нужно для того, чтобы начать создавать HTML-документы, — это обычный текстовый редактор. Страницы, написанные на HTML, несмотря на их расширение (htm или html), представляют собой обычные текстовые файлы. Любая программа, в которой можно редактировать ASCII-файлы, вполне может служить редактором для создания веб-страниц. Можно для этого использовать даже текстовые процессоры, такие как Word Perfect или Microsoft Word при условии правильного сохранения файлов.
Итак, если у вас есть текстовый редактор, значит, вы можете приступать к созданию базового шаблона HTML-документа. Для чего он нужен? Дело в том, что у вас будет некий скелет, который впоследствии можно использовать для создания страниц с помощью тегов разметки, речь о которых пойдет далее. Этот скелет уже будет включать в себя элементы документа, точнее, элементы разметки, говорящие о том, что вы создаете веб-страницу, а не что-то иное.
Элементы документа
Первое, что мы узнаем об XHTML, - это элементы, описывающие документ. Это теги, которые вы встретите на любой HTML-странице. Они определяют различные части документа.
ПРИМЕЧАНИЕ
Не смущайтесь тем, что я попеременно использую то «HTML», то «XHTML». Когда я говорю о конкретных элементах, я имею в виду элементы XHTML, потому что это специфический стандарт, которого мы будем придерживаться в книге. Когда же я говорю о концептуальных вещах, я говорю «HTML». Страницы будут называться HTML-документами, а программы для их редактирования - HTML-редакторами.
Как в журнальной статье, в HTML-документе есть две части: заголовок и тело страницы. В заголовке вы, собственно, размещаете название и некоторую специаль ную информацию о странице.
Чтобы создать заголовок, наберите в любом текстовом редакторе следующее:
<head> </head>
В этой секции вы сообщаете браузеру специфическую для данной страницы информацию, а также заголовок, который должен появиться в заголовке окна браузера.
Итак, заголовок есть, теперь нужно создать тело страницы. В теле страницы вы производите наибольшую часть работы: вводите текст, заголовки и подзаголовки разделов, вставляете гиперссылки, изображения и т. п. Чтобы обозначить начало и конец тела страницы, введите после тегов заголовка:
<body> </body>
Между двумя этими тегами нужно расположить весь текст и графику, вообще все, что составляет содержимое страницы.
Теперь секции <head> и <body> нужно заключить внутрь какого-нибудь элемента, увидев который весь мир сразу поймет, что имеет дело с HTML-документом. Им является элемент <html>. Над самым первым тегом, <head>, введите:
<html>
После закрывающего тега </body> введите:
</html>
Несмотря на то что ваш документ сохранен в обычном текстовом формате, браузер поймет, что это именно HTML-документ.
Но постойте... Ведь нам нужен не какой-нибудь там старый стандарт HTML! Мы договорились придерживаться стандарта XHTML. Поэтому флаг <html> должен выглядеть несколько сложнее. А именно:
<html xmlns="http://www.w3.org/1999/xhtml> <http://www.w3.org/1999/xhtml">
Атрибутом тега <html> является параметр xmlns, задающий пространство имен XML. Он требуется для создания документов, совместимых с требованиями ХНТМL в частности стандарта XHTML 1.0.
Итак, вот какие элементы уже есть в нашем шаблоне:
<html xmlns="http://www.w3.org/1999/xhtml> <http://www.w3.org/1999/xhtml"> <head> </head> <body> </body> </html>
Как видите, у вас есть почти готовый веб-документ, по крайней мере, с точки зрения браузера.
DTD
В начало любого веб-документа, особенно если мы стремимся к соблюдению требований стандарта XHTML, следует включать нечто, называемое DTD, то есть определение типа документа (document type definition). По секрету скажу, что и без DTD большинство браузеров прекрасно отобразят вашу страничку. Тем не менее это определение будет иметь со временем все большее значение. Что же это за загадочная секция? DTD представляет собой элемент, вставляемый в начало страницы, из которого можно узнать, какие языки и стандарты в ней используются. Поскольку XML начинает занимать все более крепкие позиции в Сети, а также благодаря тому, что для доступа к веб-службам используется все более широкий спектр приложений и устройств, DTD постепенно становится необходимой принадлежностью любого сайта.
Итак, просто запомните, что DTD нужно вставлять в начало любой создаваемой вами страницы. К счастью, это вовсе не сложно, нужно только выбрать подходящий.
Если вы работаете со страницей, которая уже существует или была создана стандартным редактором HTML, работающим по принципу WYSIWYG, то, вероятно, ее нужно начать с такого определения:
<!DOCTYPE html
PUBLIC "\ //W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
Это DTD переходной версии стандарта XHTML. В нем браузеру сообщается, что вы используете спецификацию XHTML 1.0 Transitional. Вслед за атрибутом PUBLIС идет имя DTD, в котором указан используемый язык (в примере - EN, английский). Имейте в виду, что, даже если вы используете другой язык на своей странице, языком XHTML все равно остается EN.
Следующей строкой DOCTYPE является URL того файла DTD, который поддерживается W3C. Это указывать необязательно, но хуже не будет.
Как вы увидите позднее, DTD спецификации XHTML Transitional позволяет использовать элементы, которые напрямую влияют на внешний вид (шрифты, цвета и др.) текста страницы. Как уже отмечалось в главе 1, вообще-то, HTML не предназначен для таких целей, поэтому строгая версия XHTML не поддерживает эту функцию.
DTD спецификации XHTML Transitional позволяет добиться обратной совместимости браузеров. То есть нестандартные элементы, например, созданные третьими лицами - разработчиками собственных программ просмотра веб-страниц, будут отображаться без ошибок. Но можно заставить браузер работать в «строгом» режиме. Для этого потребуется DTD спецификации XHTML Strict:
<!DOCTYPE html
PUBLIC "\//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
Применяйте это определение, если вы точно уверены в том, что не будете использовать никаких специфических кодов, а для изменения внешнего вида страницы станете прибегать к таблицам стилей. В большинстве примеров этой книги используется DTD для XHTML Strict.
ПРИМЕЧАНИЕ
В каком случае нужно использовать один, а в каком — другой вариант? Как вы вскоре увидите, DTD для XHTML Strict применяется тогда, когда для изменения визуального дизайна страницы используют таблицы стилей, а элементы XHTML служат только для организации информации. Соответственно, DTD для XHTML Transitional применяется тогда, когда вы изменяете внешний вид страницы с помощью элементов HTML. Эта спецификация является более лояльной к использованию старых элементов, почему я советую именно ее включать в DTD уже существующих HTML-документов.
Еще хочу обратить ваше внимание на то, что разделение на строки элемента DOCTYPE (который, кстати, является единственным в XHTML пишущимся прописными буквами), как в приведенном примере, не является обязательным. То есть все атрибуты можно разместить при желании на одной строке:
<!DOCTYPE html PUBLIC "\//W3C//DTDXHTML 1.0 Strict//EN" "DTD/xhtml1-strict..dtd">
Элемент comment
Прежде чем завершить процесс создания шаблона HTML-страницы, обсудим еще один элемент. Элемент comment немного отличается от других элементов. Он держит текст, но не имеет открывающего и закрывающего тегов. Вместо этого текст комментария заключается в единственный тег, который начинается с <! - - и заканчивается -->. Все, что содержится в нем, игнорируется браузером.
Прятать текст бывает необходимо для добавления комментариев к тексту HTML, написанных в форме напоминания. Они помогают при редактировании исходного кода быстрее понять, в какой части документа вы находитесь и что нужно с ней делать.
В принципе, комментарии никому, кроме вас, не видны и не нужны. Их использу ют в качестве средства борьбы со склерозом, когда через несколько месяцев после окончания работы над сайтом вам снова приходится возвращаться к HTML-код для его обновления и пытаться вспомнить, что в нем к чему. Поскольку пользователи никак не ограничены в доступе к исходному файлу на HTML и, в принципе, довольно легко могут просмотреть его, то иногда в комментариях пишут об авторских правах или просто об авторе.
СОВЕТ
Казалось бы, ненужные элементы можно временно закомментировать, если есть вероятность, что в будущем они понадобятся, но хочу вас здесь предостеречь и посоветовать неработающие ссылки удалять. Некоторые браузеры могут захотеть продемонстрировать их публике, невзирая на то что это - элемент comment.
Создание шаблона HTML
Пришло время собрать вместе все ваши знания и попытаться создать шаблон. Coхранив его в виде текстового файла, вы получите возможность очень легко и просто создавать новые файлы на языке HTML. Загрузите шаблон в редакторе, затеи сохраните его под именем созданной веб-страницы.
Начните с ввода следующего кода в новом файле:
2. <! DOCTYPE html PUBLIC "\//W3C//DTD XHTML 1.0 Sthct//EN"
3. "DTD/xhtml1-sthctdtd">
4. <html xml ns=" http: / /www w3org/1999/ xhtml" >
5. <head>
6. <title> Введите здесь Ваш любимый заголовок </title>
7. <!-- Дизайн тети Люси-->
8. <!-- Последнее обновление 10/12->
9. </head>
10. <body>
11. </body>
</html>
Теперь сохраните набранный код в текстовом файле с названием template. html (или template.htm, если у вас установлена старая версия ОС).
Теперь при необходимости создать HTML-документ загрузите template.html в текстовый редактор и сохраните его с новым именем. После этого можно приступить к его редактированию.
Заголовок документа
Как следует из названия, речь в этом параграфе пойдет о секции head HTML-документа. Она предшествует основному разделу страницы и определяется элементом <head>, который является контейнерным. Текст, заключенный между тегами <head> и </head>, сообщает браузеру общую информацию о файле, но не выводится в виде части документа. Внутри <head> могут располагаться различные элементы, среди которых ecть следующие:
<title> - название документа;
<base> - исходный URL документа;
<meta> - дополнительная информация о странице
Из них обязательным является только <title>. Остальные часто отсутствуют на веб-страницах Тем не менее важно знать, что они собой представляют, поскольку с их использованием можно строить более сложные сайты.
Название документа
Элемент <title> дан человеку для того, чтобы он мог как-нибудь назвать свое творение. Большинство графических браузеров выводят это название в строке заголовка своего окна. К тому же оно часто используется, когда страница сохраняется в «Избранном» или на нее браузером ставится виртуальная закладка. Название не совпадает с именем файла (например, index.html), оно является кратким описанием страницы. Например, «Официальный сайт Василия Пупкина».
Элемент <title> должен располагаться после <head>:
<head>
<title>Карта сайта Василия Пупкина</title> </head>
Название документа должно быть информативным и коротким Длинное название может выглядеть странно в строке заголовка окна браузера и может не поместиться в строку списка закладок или таблицы «Избранное». Помните, что им также частенько пользуются поисковые системы Интернета.Я бы посоветовал при держиваться следующих правил при выборе названия для своей странички.
Избегайте общих слов. Старайтесь максимально точно сообщить, чему посвящена ваша страница. Помните, что любое название может быть использовано в качестве записи в поисковых системах, например Google или AllthcWeb.com.
По возможности избегайте затасканных слоганов. Ваша цель - максимально раскрыть в двух-трех словах суть страницы. Просто написать имя фирмы не всегда помогает, особенно если использовать одно и то же название на множестве страниц сайта. Вместо этого попробуйте кратко описать, чем занимается ваша фирма и отразить это в названии. Например: «Программное обеспечение фирмы Pupkin»; или «Персоналии: Совет директоров: Василий и Василиса Пупкины».
Старайтесь использовать в названии не более 60 символов. Спецификация XHTML не вводит ограничений на длину текста в элементе <title>. И все же, прежде чем давать своей страничке имя, которому не видно ни конца ни края вспомните о том, что строка заголовка окна ограничена.
Выберите File Save File, чтобы сохранить все изменения, сделанные в редакторе. Перейдите на окно браузера и выберите File Open File, чтобы открыть сохраненный элемент.
Документ должен появиться в браузере. Проверьте его на наличие ошибок, опечаток и т. п.
Перейдите обратно в окно текстового редактора и внесите все необходимые коррективы. После окончания работы не забудьте сохранить файл, как описывалось ранее.
Если страница уже открыта в браузере, то для того, чтобы увидеть проделанные изменения, нужно щелкнуть на кнопке Обновить.
Проверка страницы
Наконец, сохраненную и протестированную страницу необходимо проверить на ее соответствие стандартам. Это не обязательно, но желательно. В принципе, существуют приложения, автоматически определяющие, насколько точно соблюдаются рекомендации W3C на совместимость с HTML (во многих случаях с XHTML). Если страница выдерживает проверку, значит, она полностью совместима со стандартом и не содержит, по крайней мере, синтаксических ошибок, влияющих на ее внешний вид. Если же проверка не проходит, значит, нужно искать где-то опечатку либо какой-то из элементов не полностью удовлетворяет стандартам. Большинство программ автоматической проверки генерируют такой отчет об ошибках, что вы сможете без труда их отыскать.
ПРИМЕЧАНИЕ
Веб-страница может и не проходить эту проверку и при этом корректно работать с браузерами. Многие страницы обходятся без этого. Но существуют стандарты, которые с каждым днем приобретают все большее значение для жизни Сети. И если проверка пройдена, значит, максимально большое количество браузеров сможет их отобразить корректно.
Итак, как производить проверку? Существуют несколько возможностей. Проще всего воспользоваться программой HTML Tidy, написанной Дейвом Раггеттом, работником W3C. Существует множество ее вариантов, включая реализацию, запускаемую из командной строки Windows. Есть версии, написанные под Windows, Mac и Unix. Загляните на http://www.w3.org/People/Raggett/tidy, там можно найти целую коллекцию программ проверки. Многие популярные редакторы HTML имеют поддержку различных надстроек HTML Tidy, например, в NoteTab для Windows и BBEdit для Macintosh.
Можно использовать и другие приложения для проверки веб-страниц. Их можно найти в Интернете: CSE HTML Validator Lite (http://www.htmlvalidator. com/lite/) для Windows (у этой программы есть одно немаловажное преимущество: она бесплатная) Real Validator (http://www.arealvalidator.com/) - еще одно приложение под Windows.
Наконец, можно использовать ПО, проверяющее веб-страницы прямо по Сети. В этом случае вам потребуется отправить свою страницу на веб-сервер и знать адрес URL страницы, которую вы хотите проверить. После этого нужно зайти на сайт, на котором установлено ратифицирующее ПО, и вводите URL. Таких сайтов много, но я советую зайти на сайт W3C, это наиболее авторитетное место. Его адрес: http://validator.w3.org/.
ПРИМЕЧАНИЕ
W3C предлагает также ратификатор для таблиц стилей (CSS). Зайдите на http://jigsaw.w3.org/ css-validator.
Резюме
В этой главе вы узнали, как создать шаблон HTML, включая основы DTD и элементы главной страницы. Затем научились расширять этот шаблон за счет включения заголовка страницы и ввода текста в абзацы в теле документа. Наконец, вы узнали, как сохранять, тестировать и проверять свои страницы.
В главе 5 вы узнаете, какие элементы используются для организации и форматати рования текста страниц, включая заголовки и списки.
Глава 5. Форматирование текста
Организация страницы
Заголовки
Горизонтальные линии
Стилизация текста
Элементы физических стилей
Элементы логических стилей
Элементы стилей абзацев
Элемент <рге>
Использование <рге> для создания таблиц
Элемент <blockquote>
Элемент <address>
Обозначение исправлений: <ins> и <del>
Списки
Упорядоченные и неупорядоченные списки
Списки определений
Резюме
На данный момент вы уже познакомились с базовым шаблоном HTML, научились вводить текст в абзацы, сохранять и проверять свою работу. В этой главе вы узнаете о стилях и организации текста, вводимого в тело веб-страниц.
В этой главе вы узнаете:
как добавлять заголовки и горизонтальные линии для организации более четкой структуры страницы;
как придавать черты определенного стиля своему тексту;
как использовать различные контейнерные элементы для форматирования абзацев;
как создавать маркированные и нумерованные списки.
Организация страницы
После размещения на странице базовых абзацев, как мы уже говорили, для улучшения восприятия текста следует придать им более организованный вид. Это можно сделать с помощью двух различных элементов, речь о которых пойдет в этом параграфе. Я имею в виду заголовки разных уровней и горизонтальные линии. Заголовки вообще чрезвычайно полезны и важны для создания хорошей страницы, особенно если в ней много текста. Горизонтальные линии помогают визуально разделять текст.
Заголовки
Заголовки являются контейнерами и, в отличие от многих других элементов XHTML, дублируются, как и <р>. Заголовки ранжируются с 1-го по 6-й уровень и позволяют отражать структуру документа. Вот пример:
<h1>3аголовки первого уровня - это самые главные заголовки в мире</h1>
<h2>Заголовки второго уровня поменьше, но тоже ничего. Используются для главных подзаголовков</h2> <h3>3aголовки третьего уровня еще меньше и используются для второстепенных подзаголовков</hЗ>
<р>Это обычный текст</р>
<h4>3аголовки четвертого уровня - это почти то же самое, что и обычный текст, но все же он немного выделяется</h4>
<h5>Заголовки пятого уровня: тоже выделяются, но по размеру меньше обычного текста</h5>
<h6>3аголовки шестого уровня: низший уровень заголовков</h6>
Рис. 5.1. Уровни заголовков, которые вы можете использовать
На рисунке 5.1 изображен результат аналогичной англоязычной странички.
В идеале, пропускать уровни нельзя. То есть <h3> не может следовать после <hl>, если между ними нет <h2>. На практике иногда применяют заголовки разных уровней просто для того, чтобы задавать размеры шрифтов. Это неправильно, потому что разные браузеры по-разному будут отображать эти размеры. Гораздо лучше для изменения размера шрифта использовать таблицы стилей (глава 10). Нельзя в одной и той же строке использовать и заголовок, и обычный текст, даже если вы закрываете тег заголовка. Элемент заголовка работает так же, как <р>, то есть он вставляет новую строку после своего «выключающего» тега. Например,
<h1>Boт это заголовок</h1> А это - обычный текст
будет выглядеть в браузере примерно так же, как
<h1>Вот еще заголовок</h1> <p>А вот еще текст абзаца</р>
В обоих случаях браузер поместит текст заголовка в одной строке, а обычный текст- в другой. Обратите при этом внимание на то, что первый пример не является «хорошо оформленным кодом». Вторая его часть должна быть заключена в теги <р>.
Горизонтальные линии
Хотите использовать различные разделители? Элемент <hr /> — это то, что вам нужно. Он помещает между абзацами горизонтальную линию, которую можно растянуть на всю ширину окна браузера. Если читатель изменяет размер окна, то размер линии соответственно масштабируется. <hr /> является пустым элементом, поэтому закрывающий тег не требуется. («Нг» расшифровывается как «horizontal rule», то есть просто «горизонтальная линия»).
Этот элемент вставляет разрыв абзаца до и после линии. <hr /> можно поместить в любом место на странице.
<hr /> <h2>Иван Топорыжкин</h2 <р>Иван Топорыжкин пошел на охоту. С ним пудель пошел, перепрыгнув
забор.</р>
У элемента <hr /> могут быть определенные атрибуты, изменяющие вид и размер линии, однако их можно применять, только если DTD относится к XHTML Transitional. Они не удовлетворяют требованиям XHTML Strict. Если вы хотите придерживаться строгих стандартов, используйте команды таблиц стилей вместо этих атрибутов. Мы обсудим это в главе 10. Они дают возможность управлять шириной, длиной и расположением горизонтальной линии в окне браузера. В таблице 5.1 показаны возможные атрибуты и назначение <hr />.
Таблица 5.1. Атрибуты <hr />
Атрибут
Описание
size
Устанавливает толщину горизонтальной линии
width
Устанавливает ширину
align
Задает расположение: выравнивание по левому краю, середине или правому краю в окне браузера
noshade
Изменяет внешний вид линии, а именно - убирает тень
Примечание
Термин "пиксел" означает "элемент изображения" на экране, а в сетевых терминах можно сказать, что это одна точка. По умолчанию ширина элемента <hr/> равна 1 пикселу.
Любые из этих атрибуов могут быть введены путем их добавления перед закрывающей угловой скобкой. Например:
Может показаться, что логические элементы избыточны. На самом деле это не так, более того, именно им и оказывают предпочтение. Почему? Потому что не все браузеры могут отображать физические стили, например выделение жирным шрифтом. Если, например, браузер, встроенный в сотовый телефон, не умеет этого, то он просто проигнорирует ваше <b>.Если же вы используете логические элементы, то телефон постарается выделить это место в тексте как-нибудь по-своему. Например, <strong> в обычных графических браузерах делает текст полужирным. Текстовые браузеры, не имеющие возможности изменить толщину букв, прибегают к выделению с помощью подчеркивания или изменения яркости. Но элементы типа <b> теми же самыми программами будут, скорее всего, проигнорированы.
Не следует забывать, на какую аудиторию вы ориентируетесь Если вы точно уверены, что все пользователи, посетившие ваш сайт, имеют графические браузеры, может быть, логические стили вам и не понадобятся.
Элементы физических стилей
Если вы уже имеете опыт работы с текстовыми процессорами, вы, наверное, обратили внимание на то, что текст может быть выделен полужирным начертанием, курсивом или подчеркиванием. Эти элементы являются абсолютными, а значит, любой графический веб-браузер обязан отображать их одинаково. Некоторые браузеры не могут отображать элементы логических стилей так, как вы задумывали, но отображение физических стилей происходят так, как нужно. Полужирный текст никогда не перестанет быть полужирным. Курсив навсегда останется курсивом, то же самое касается подчеркивания. Браузеры, не предназначенные для выделения текста с помощью этих физических стилей, будут их игнорировать.
В таблице 5.2 собраны некоторые описания физических стилей.
Таблица 5.2. Физические стили
Элемент
Назначение
<b>, </b>
Жирный
<i>, </i>
Курсив
<tt>, </tt>
Моноширинный
<big>, </big>
Подчеркнутый
<big>, </big>
Увеличенный размер
<small>, </small>
Уменьшенный размер
<sub>, </sub»
Нижний индекс
<sup>, </sup>
Верхний индекс
Элемент физического стиля вставляется в веб-документ просто. Идея состоит в том, что вы выбираете часть текста, которую хотите тем или иным образом выделить, и заключаете ее в теги соответствующего стиля. В браузере вы можете убедиться, что выделение применено именно к заключенному в теги отрывку.
Введите текст.
Поместите курсор в начало выделяемого текста.
Введите открывающий тег того элемента стиля, который вы хотите применить. Переместите курсор в конец отрывка.
Введите закрывающий тег.
Рассмотрим пример, в котором используется физический стиль.
<р><tt>Новости сайта:</tt> Мы изменили расписание выпусков <j>последних новостей</j> Теперь они будут выходить по <b>средам</b> (по просьбам наших читателей), таким образом в <u>четверг и пятницу</u> вы будете иметь возможность воспользоваться полученной информацией <sup>*</sup></p> <p><sup>*</sup>Mы не гарантируем, что до конца недели расписание вступит в силу!</р>
На рисунке 5.2 показано, как выглядят в браузере примененные здесь стили.
Рис. 5.2. Обычно браузеры не отличаются разнообразием способов отображения физических стилей
ПРИМЕЧАНИЕ
Важно размещать теги маркировки в непосредственной близости от выделяемого текста. Это гарантирует, что пробелы будут нужной ширины. Например, сравните: Четверг и <b>пятница</b> и Четверг и <b>пятница</b>. Некоторые (не все) браузеры могут отреагировать на второй пример таким образом: «Четверг и пятница».
Элементы логических стилей
В главе 4 мы говорили, что элемент, задающий абзац, не только вставляет пропуск между двумя отрывками текста, он на самом деле определяет отрывок, заключен ный в <р> и </р> как элемент под названием «абзац». Это действительно важный момент, на который стоит обратить внимание, потому что это означает, что <р> за дает логический элемент HTML! Он не задает ничего конкретного, не определяет размер шрифта или отступы. Точное определение всех параметров абзаца отдает ся на откуп браузеру.
Логические стили в HTML используют ту же идею. Логическим является стиль, конкретные параметры которого задаются браузером. Хотя, скорее всего, разные браузеры будут привычным образом воспринимать элемент абзаца, можно встретить варианты, когда весь текст написан зеленым цветом, а отступ сделан не слева, асправа (если так решил сделать производитель браузера или пользователь). Примерно то же самое можно сказать не только об абзаце, но и о логических стилях. Браузер делает текст жирнее, выделяет его курсивом, раскрашивает в зеленый цвет или произносит громче (голосовые браузеры) в зависимости от возможностей конкретной программы.
Любой элемент логического стиля имеет открывающий и закрывающий тег, формирующий контейнер для выделяемого текста. В таблице 5.3 описаны логические стили.
Таблица 5.3. Логические стили
Элемент
Назначение
<em>, </em>
Выделение
<strong>, </strong>
Усиленное выделение
<cite>, </cite>
Цитата или ссылка на внешний источник
<dfn>,</dfn>
Исходный код программы
<samp>,</samp>
Пример работы программы, часто отображается так же, как предыдущий
<kbd>,</kbd>
Текст, вводимый с клавиатуры
<var>,</var>
Переменная или значение
<q>,</q>
Цитируемый текст
<abbr>,</abbr>
Аббревиатура
ocronym >, </acronym >
Акроним
Что касается графических браузеров, то обычно <епт> соответствует курсиву, а <strong> — жирному шрифту. Но это не всегда так. Иногда <еm> может означать подчеркивание, a <strong> — выделение яркостью. В голосовых браузерах текст, помеченный <еm>, произносится громче, чем обычный, a <strong> - еще громче. Основная идея заключается просто в том, что <еm> делает текст выделенным, а <strong> - усиленно выделенным.
Другие стили, представленные в табл. 5.3, обычно используются для некоторых специфических целей, чаще всего связанных с набором технической или научной литературы. Опять же, браузеры, предназначенные для подобных целей, очень грамотно обрабатывают соответствующие теги. Что касается обычных браузеров, то они скорее всего выделят текст курсивом, выведут его моноширинным шрифтом или вообще оставят без изменений.
СОВЕТ
Internet Explorer под Macintosh позволяет использовать персональные таблицы стилей, с помощью которых можно настроить вид страниц. Выберите в диалоговом окне Preferences пункт Web Content и активизируйте команду Use My Stylesheet (для этого потребуется указать размещение документа, содержащего таблицу стилей, как описано в главе 10). Netscape и IE под Windows позволяют выбрать настройки цветов и шрифтов. Opera (http:/ /www.opera.com), существующая в ряде вариантов под различные операционные системы, позволяет настраивать вид элементов.
В листинге 5.1 приводится пример, аналогичный тому, что был представлен на рис 5.2, но в нем используются элементы логических стилей, а не физических. Результат можно увидеть на рис 5.3.
Рис. 5.3. Обычным браузером логические стили воспринимаются так же, как физические
Листинг 5.1. Логические стили
<р><еm>Все пользователи</еm> должны помнить о том, что нужно корректно завершать каждый сеанс работы на терминале <strong>nepeд тем как уходить</strong>. Чтобы <dfn>завершить ceaнс</dfn> необходимо набрать в командной строке <kbd>logout</kbd> или <kbd>exit</kbd>. Когда вы увидите на экране результат выполнения этой команды <samp>Thank you. Goodbye.</samp>, можете смело выключать компьютер. Теперь это безопасно. Для этого воспользуйтесь кнопкой на лицевой панели.</р>
Элемент <q> используется в том случае, когда нужно вставить в текст знаки цитирования, которые в разных языках различаются.
Большинство браузеров при этом просто выводят на экран знаки цитировали. В будущем, возможно, браузеры смогут выводить, например, какие-нибудь фигур ные кавычки. В некоторых случаях этот элемент можно использовать для измене ния стиля самого отрывка, - это касается прежде всего голосовых браузеров, которые, встретив этот тег, могут изменить интонацию. Например:
<p><q lаng="ru">Я не понимаю, что ты имеешь в видy</q> - сказал Джек</р>
Атрибут lang не является обязательным и содержит двухбуквенное обозначение национального языка, например "fr" (французский), "es" (испанский).
Последние два логических элемента, <abbr> и <acronym>, немного отличаются от других. Обычно они используются для ввода дополнительной информации о сокращениях. Браузер может каким-то образом интерпретировать ее, а может и проигнорировать, но в любом случае хуже от этого не будет. У обоих элементов могут быть атрибуты lang и title. Последний содержит расшифровку данного сокращения или акронима. Вот несколько примеров:
<acronym lang="fr" title="Association Canadienne pour la Recherche en Economie de la Sante">ACRES</acronym>
В идеале, если браузер распознает акронимы и аббревиатуры, он по требованию может расшифровывать их. Например, Internet Explorer выводит расшифровки в маленьком окошке, которое появляется при наведении курсора на соответствующий элемент, как показано на рис 5.4.
Рис. 5.4. В Internet Explorer для Windows текст, содержащийся в атрибуте title, выводится при наведении мыши на слово, заключенное в контейнере <abbr> или <acronym>
СОВЕТ
Таким же образом можно создавать всплывающие окошки не только для аббревиатур или акронимов, но и для любых других элементов, к которым вы хотите добавить какие-либо пояснения, появляющиеся при наведении курсора мыши.
Элементы стилей абзацев
В главе 4 обсуждался элемент <р>, который используется практически все время при вводе текста на веб-страницах. Тем не менее это не единственный элемент, определяющий абзац. Существуют и другие контейнеры, содержащие и определяющие стили фрагментов текста.
Элемент <рге>
Элемент под названием «преформатированный текст» представлен тегами <рге> и </рге>. Его отличие от элемента «абзац» состоит в том, что он распознает все вводимые пробелы и переводы строк. То есть вы получаете в окне браузера при мерно то же и с тем же оформлением, что отображается в окне текстового редактора. При этом не требуются дополнительные усилия для добавления пробелов, не нужны <br /> для перевода строки. Следующий пример проиллюстрирован на рис 5.5.
<рrе>
Я обнял эти плечи и взглянул
На то что оказалось за спиною
И увидал, что выдвинутый"стул Сливался с освещенною стеною </рrе>
Рис. 5.5. Теги <рrе> и </рrе> заставляют браузер обращать внимание на пробелы и переводы строк в исходном коде
Преформатированный текст идеально подходит для оформления листингов npo грамм, потому что обычно в этом случае вы стремитесь передать не только синтаксис, но и правильное форматирование. Элемент <рге> позволяет также довольно просто создавать таблицы, используя пробелы в качестве разделителей. Тем не менее, поскольку эти таблицы печатаются моноширинным шрифтом, скорее всего вы согласитесь потратить время, но оформить таблицу специальными средствами HTML; они обсуждаются в главе 8.
ПРИМЕЧАНИЕ
На самом деле можно изменить шрифт текста внутри контейнера <рrе> с помощью таблиц стилей. Это сделает его более привлекательным, особенно в применении к таким специфическим текстам, как стихи (см. предыдущий пример). Это не поможет создавать более толковые таблицы с помощью <рrе>, потому что в этом случае вообще требуется моноширинный шрифт; это поможет выстроить колонки более или менее ровно.
Использование <рrе> для создания таблиц
Одной из возможностей <рге> является создание примитивных таблиц. Чтобы создать таблицу, важно прежде всего разобраться с расположением текста в ней. Иначе говоря, вы просто вводите текст внутри контейнера <рге>, представляя себе таблицу. Выравнивайте колонки с помощью пробелов, и результат будет действительно напоминать таблицу.
Например:
<рге>
Год Событие 1965 Я родился
1976 Написан первый рассказ
</рге>
При этом имейте в виду, что при использовании элементов XHTML вам придется компенсировать пробелами место, занимаемое их тегами. Например:
<рге>
Год Событие 1965 Я родился <b>1976</b> <ij>Написан первый рассказ</ij> </рге>
Поскольку теги из третьей строки не будут видны при просмотре в браузере, форматирование таблицы будет корректным, хотя в исходном коде это не заметно.
СОВЕТ
При создании таблиц с помощью <рге> я, на самом деле, советую избегать применения каких-либо стилей, как физических, так и логических. Очень мала вероятность того, что колонки будут расположены ровно, если в одной из строк текст оформлен жирным шрифтом, а в других не применяется никакого оформления. Разные браузеры по-разному воспринимают стили, и подобрать универсальное выделение практически невозможно, поэтому лучше вообще обойтись без него.
Как создать простейшую таблицу?
1. Откройте файл шаблона и введите нечто подобное расположенному между тегами <body> Возможно, придется повозиться немного с интервалами между колонками, чтобы в браузере таблица приняла ровный вид.
<h1>Средний часовой доход в регионах</h1>
<рге> Регион Ручной труд Умственный труд Бизнес Реклама Северо-Запад $40 $50 $75 $100 Северо-Восток $35 $45 $70 $95 Юго-Запад $30 $40 $65 $90 Юго-Восток $25 $35 $55 $75 </рге>
2. Сохраните HTML-документ, затем примените команду Open File в браузере, чтобы просмотреть то, что вы создали
.
ПРИМЕЧАНИЕ
Даже в составе контейнера <рге> символы табуляции браузером не распознаются. Если Bы пользуетесь текстовым редактором или процессором, старайтесь не использовать клавишу Tab для выравнивания колонок. Для этого существует клавиша Пробел. Некоторые HTML редакторы учитывают этот момент и заменяют табуляцию серией пробелов.
Элемент <blockquote>
Исторически сложилось так, что контейнерный элемент <blockquote> использует ся благодаря своим физическим, а не логическим атрибутам. Вообще-то, он предназначен для идентификации отступов абзацев, чтобы абзацы визуально выделялись из текста. Хотя это и легитимное применение даже с точки зрения XHTML, оно не должно быть основной причиной для использования <blockquote>. В следующем примере показано, как этот элемент справляется с задачей визуального выделения абзаца.
<h1>Новости сайта!</h1> <blockquote>Haш сайт существует для тех,кто заботится о своем <string>желудке</string>. Здесь вы найдете рецепты блюд, которые можно приготовить <i>дома</i>, также информацию о том, где можно вкусно и недорого поесть в вашем городе.
См. раздел <tt>Где перекусить</tt>. Не забудьте посетить наш <еm>Форум</еm>, там вы сможете обменяться мнениями с местными гурманами. Обязательно подпишитесь на <strong>paccылкy</strong>. Воспользовавшись этой возможностью, вы сможете получать электронные письма с самыми свежими новостями, ресторанами и интересными рецептами. </blockquote>
На рисунке 5.6 показано, как этот текст выглядит в браузере.
Рис. 5.6. Элемент <blockquote> в действии
И все же, хотя это не является нарушением стандартов, я бы не стал использовал <blockquote> для организации отступов и доверил бы это таблицам стилей. Согласно W3C элемент <blockquote> должен использоваться для ввода цитируемого текста. Например:
<р>Из историй Геттисбурга:</р> <blockquote>Четыре века и семь лет тому назад наши праотцы привели сюда народ и создали ноеус нацию, выращенную в свободе и решившую посвятить свое существование пропаганде равенства всех людей на Земле </blockquote>
Здесь показано более грамотное применение элемента <blockquote>. Результирующая страница показана на рис 5.7. Еще раз повторюсь: нет ничего страшного в том, чтобы использовать этот элемент для определения отступов абзаца, однако в этом случае следует иметь в виду, что все браузеры интерпретируют понятие абзаца по-разному.
Рис. 5.7. Элемент <blockquote> используется по прямому назначению
Следует запомнить, что <blockquote> в браузере отображается обычным шрифтом абзаца, оформляется тем же стилем. Он не воспринимает лишние пробелы и переводы строк, в этом он похож на <р>.
У этого элемента может быть аргумент cite, позволяющий включать в цитату URL, с которого она взята. Например:
<blockquote cite="http://eserverorg/history/gettysburg-addresstxt"> Четыре века и семь лет тону назад наши праотцы привели сюда народ и создали новую нацию, выращенную в свободе и решившую посвятить свое существование пропаганде равенства всех людей на Земле. </blockquote>
Элемент <address>
Контейнерный элемент <address> используется для создания текста, напоминающего по организации абзац, в котором содержится информация об авторе страницы. В большинстве браузеров текст, содержащийся в этом элементе, отображается курсивом. Однако, как и в случае других логических стилей, браузеры вольны отображать этот элемент так, как им заблагорассудится.
Вот пример использования элемента <address>:
<address>Cтpaница создана и поддерживается почтальоном Печкиным</аddrеss>
Традиционно этот элемент размещается в конце веб-документа и сообщает следующую информацию:
когда страница была обновлена в последний раз;
с кем можно обсудить вопросы, связанные с этой страницей (обычно e-mail вебмастера);
URL данной страницы;
телефонные номера или физические адреса компании или организации
Большинство этих данных не являются жизненно важными для вашей страницы, но являются прекрасным дополнением информации, представленной на странице. Пример более полного использования элемента <address>:
<address>Этa страница была последний раз обновлена 6/12 в 9:08 pm.<br /> В случае проблем пишите веб-мастеру по адресу: pechkin@mailprostokvashino.ru.<br />
Адрес:
12345 Ростовская обл., село Простоквашино<br /> ул. Почтовая, д. 1.</address>
Обратите внимание: по-прежнему для обозначения перевода строки используете тег <bг />. На рисунке 5.8 показано, как браузер отображает приведенный выше код.
Рис. 5.8. Обычно текст, заключенный в контейнер <address>, отображается курсивом. Обозначение исправлений: <ins> и <del>
Обозначение исправлений: <ins> и <del>
<ins> и <del> — это элементы, представляющие особый интерес для создателей официальных проектов, посвященных бизнесу или образованию. Вообще-то, они должны использоваться исключительно в процессе работы над страницей.
Используйте элемент <del>, чтобы обозначить фрагмент текста, который, скорее всего, будет удален, a <ins> - чтобы обозначить фрагмент, вставляемый на место удаляемого. Они могут использоваться и независимо, если вы просто хотите вставить или удалить текст. Это полезно, когда над страницей работают несколько человек и вы хотите отслеживать изменения. Подобная функция имеется в текстовом процессоре Microsoft Word, - если вы ей когда-нибудь пользовались, вы легко обнаружите сходство.
У обоих элементов могут быть необязательные атрибуты cite, datetime или title. Они используются для того, чтобы пояснить свои действия. При этом с помощью datetime можно указать время, когда соответствующий элемент был вставлен. Тут тоже есть свои тонкости. Вот пример:
2001-12-05109:00:00-05:00
Это означает: 9:00 am EST, 12/05/2001. Что касается -05:00, то это часовой пояс. Атрибут cite позволяет задавать ссылку на URL, на котором содержится объяснение данного добавления или удаления. А атрибут title позволяет делать то же самое с помощью тегов. Рассмотрим пример:
<р>Это важная информация для <ins datetime= "2001-12-05T09:00:00-05:00" titlе="Изменить по результатам голосования">Совета директоров,</ins><dеl> президента и его помощников.</del> Именно им необходимо иметь на руках более 50% акций предприятия.</р>
Пример проиллюстрирован на рис. 5.9.
ПРИМЕЧАНИЕ
<ins> и <del> можно применить и к целому абзацу или другому блоку текста.
Рис. 5.9. Элементы <ins> и <del> помогают в процессе работы над документом
Списки
Элементы списков, как и абзацы и преформатированный текст, являются контейнерами XHTML, которые могут включать в себя другие элементы разметки текста. В списке всегда должно быть два элемента, один из которых задает тип списка, а другой отвечает за один конкретный пункт. Этими пунктами могут быть слова, предложения, абзацы и другие элементы XHTML, например изображения. В большинстве списков используется следующий формат:
Каждый элемент <li> - это пункт списка, который всегда пишется с новой строки. С чего начинается эта строка, зависит от того, упорядочен список или нет, маркированный он или нумерованный.
Упорядоченные и неупорядоченные списки
Проще всего понять, что это такое, если говорить в терминах «нумерованный список» и «маркированный список» (соответственно). Нумерованный/упорядочен ный список задается элементом <оl>, а маркированный/неупорядоченный — элементом <ul>. Но пункты любого из них обозначаются с помощью <li>. При этом если список упорядоченный (<оl>), то в начало каждой строки вставляется ее порядковый номер в списке; если он неупорядоченный (<ul>), то вставляется знача маркировки. Вот как выглядит упорядоченный список:
<ol> <li> Первый пункт.</li> <li> Второй пункт.</li> <li> Третий пункт.</li> </оl>
А вот пример неупорядоченного списка:
<ul> <li> Первый пункт.</li> <li> Второй пункт.</li> <li> Третий пункт.</li> </ul>
В браузере это выглядит так, как показано на рис. 5.10.
Кроме маркировки XHTML можно включать в списки другие списки, и они будут вложены один в другой. Например:
<ol> <li> Первый пункт.</li> <li> Второй пункт.</li> <li><ul> <li> Пункт 3.1 </li> <li> Пункт 3.2 </li> </ul></li> <li> Четвертый пункт</li> </ol>
Рис. 5.10. Нумерованные и маркированные списки
Ничего сложного здесь нет. Нужно просто завершать вложенный список раньше, чем основной. На самом деле, необходимо вначале закрыть пункт основного списка, в котором содержится вложенный список, а затем продолжать основной.
Атрибуты упорядоченного списка
У вас есть возможность изменять поведение и вид списков с помощью определенных атрибутов. Тем не менее надо отметить, что эти атрибуты никак не согласуют ся стребованиями новых стандартов XHTML. Поэтому если вы хотите их использовать, то DTD должен быть для Transitional XHTML. И все же лучше использовать таблицы стилей (глава 10).
Большинство графических браузеров поддерживают дополнительные атрибуты упорядоченных списков, включая start, value и type. Собственно, атрибут type есть и у маркированных списков. С его помощью можно изменить вид значка маркировки. В таблице 5.4 приведен список атрибутов нумерованных списков.
Таблица 5.4. Атрибуты элементов нумерованных списков
Тег
Тип нумерации
<ol type="A">
Заглавные буквы
<ol type="a">
Строчные буквы
<ol type="I">
Римские цифры (большие)
<ol type="i">
Римские цифры (маленькие)
<ol type="1">
Арабские цифры
С помощью атрибута start можно изменять начальное значение нумерованного списка. Например, чтобы вести счет с 10, напишите: <ol start="10">.
Атрибут value используется для изменения значения конкретного элемента списка Например, можно изменить нумерацию прямо внутри списка:
Этот пример тоже подходит только для переходного варианта стандарта ХНТМL. Если вы хотите применять DTD для XHTML Strict, не забудьте, что для изменения внешнего вида любых элементов следует применять таблицы стилей. Тем не менее существуют атрибуты маркированного списка, изменяющие его вид (вид маркеров):
заполненный кружок — <ul type="disc">
квадратик — <ul type="square">
пустой кружок — <ul type="circle">
Имейте в виду, что далеко не все браузеры воспринимают эти различия и не все делают это корректно. Вместо всех этих маркеров вам могут оставить один какой нибудь квадратик.
Списки определений
Последним типом списков является список определений. Он включает в себя два уровня элементов: термины и их определения. Синтаксически такой список coсто ит из следующих элементов: главного контейнера списка <dl> (definition list), тер мина <dt> (definition term) и определения <dd> (definition) <dt>, по идее, должен помещаться на одной строке, хотя в случае необходимости браузер переносите на следующую строку <dd> - это целый текстовый абзац. Большинство графиче ских браузеров размещают определение под термином с небольшим отступом.
Например:
<dl> <dt><b>indent</b> <i>n</i></dt> <dd>3азубрина, зубец, выемка, вырез</dd> <dt><b>indentation</b> <i>n</i></dt> <dd>Вырезывание в виде зубцов</dd> <dt><b>indenture</b> <i>n</i></dt> <dd>Coглашение,контракт в двух экземплярах; договор между учеником и хозяином</dd> </dl>
Думаю, вы обратили внимание на то, что обычная стилевая разметка XHTML при менима внутри списков определений. Боле
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет
studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав!Последнее добавление