Разметка текста - выделение шрифта, цитирование, код и т.п.

Логическая разметка в сравнении с физической

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

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

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

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

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

This has some <B>bold and <I></B>italic text</I> 

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

Пример nest.html

This is <I>italic text which contains <U>underlined text</U>
within in </I>whereas <U>this is normal underlined text</U> 

Броузеры с ограниченным набором шрифтов могут иметь трудности в представлении разметки текста

Элементы фразы (логическая разметка текста)

Дл выделениятекста существует два фразовых элемента EM STRONG, где STRONG используется для более сильного выделения

Избегайте выделения слишком больших частей текста, так как подчеркивая все, Вы не подчеркиваете ничего! (Вошедший в поговорку студент, который подчеркивает все в своей книге, не понимает самой идеи подчеркивания.)

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

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

Элемен VARпоказывает, что часть текста (обычно слово)являетс переменной, т.е. текстом, который может быть заменен различными выражениями

Следующие фразовые элементы задают различные вид ссылокил цитирования:

CITEцитирование (название книги, или статьи, или - эквивалент)
CODEкод программы или - эквивалент (например, HTML)
SAMPслужебные сообщения компьютера (вывод из программы, скрипты, команды и т.п.)
KBDтекст, который должен печататься на клавиатуре пользователя;обычно используется для инструкций.

Смотрите такж замечания и примеры по вопросам отображения разметки.

Шрифтовые элементы (font elements)- физическая разметка текста

Шрифтовые элементы это

TT"телетайпный"текст, т.е. текст одного размера
Iкурсив
Bвыделение
Uподчеркивание
STRIKEзачеркнутый текст
BIGбольшой шрифт
SMALLмалый шрифт
SUBподстрочный текст
SUPнадстрочный текст.

Заметим:SUB и SUP могут быть отнесены к разметке фразового уровня, как упоминалось выше;SMALL может быть использован для де-подчеркивания

Элемент FONT BASEFONTпредлагают много возможностей для задания размеров шрифта по сравнению с BIG и SMALL. Однако избегайте чрезмерного использования физической разметки

Отображение разметки

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

Например, некоторые броузеры (возьмем Internet Explorer)отображаю TT( CODE)как шрифт, значительно меньший, чем обычный текст, и эта диспропорция сохраняется, когда изменяются размеры шрифта. Более того, Internet Explorer воспроизводи VARкак моноширинный (monospaced)шрифт, в то время как большинство графических броузеров использует курсив (italic). С другой стороны, в Netscape, размеры шрифта можно специально устанавливать, а по умолчанию дл TT VARиспользуются одни и те же шрифты, однако "одни и те же"означает технический размер в точках - на практике моноширинные шрифты выглядят больше, чем нормальный пропорциональный шрифт

Таким образом избегайте связываться с размерами шрифта;используйте фразовую разметку и другие структурные элементы и позвольте пользователям, если им не нравятся размеры шрифта в Вашем тексте, определять шрифты в их собственных броузерах как им нравится

В следующей таблице сделана попытка дать представление о диапазоне возможностей броузеров. Она представляет отображение элементов разметки в Netscape Navigator, Microsoft Internet Explorer и Lynx. Заметим, что существуют вариации даже в пределах каждой из этих программ - в зависимости от версии, платформы, конфигурации системы или собственной пользовательской конфигурации, - такой разброс соответствует действительности. Таким образом данные таблицы могут быть, но не обязательно имеют место в действительности

элементNetscapeInternet ExplorerLynx
EMкурсивкурсивподчеркнутый
DFNобычный тексткурсивобычный (одноразмерный)
CODEодноразмерныймалый одноразмерныйобычный (одноразмерный)
SAMPодноразмерныймалый одноразмерныйобычный (одноразмерный)
KBDодноразмерныймалый одноразмерныйобычный (одноразмерный)
VARкурсивмалый одноразмерныйобычный (одноразмерный)
CITEкурсивкурсивподчеркнутый
TTодноразмерныймалый одноразмерныйобычный (одноразмерный)
Iкурсивкурсивподчеркнутый
Bусиленныйусиленныйподчеркнутый
Uобычный текстподчеркнутыйподчеркнутый
STRIKEзачеркиваниезачеркивани текст между[DEL: :DEL]
BIGбольший, чем обычныйбольший, чем обычныйобычный текст
SMALLменьший, чем обычныйнемного меньший, чем обычныйобычный текст
SUBопущенный, немного меньшийопущенныйобычный текст
SUPподнятый, немного большийподнятыйобычный текст

Данные таблицы относятся к невложенным элементам Вложенность текстовых элементовможет повысить наглядность отображения

Представление взаимодействия с компьютером

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

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

Следующий пример иллюстрирует подход в контексте введения в язык программировани Perl

Пример interact.html

<P>The following Perl script prints out its input so that each line begins with a running line number:</P>
<PRE><CODE>#!/usr/bin/perl $line= 1;
while (&lt;&gt;){
 print $line++, "", $_;}</CODE></PRE>
<P>The scalar variable <CODE>$line</CODE>is of course the line counter.<P>
<P>The loop construct is of the form<BR>
<CODE>while (&lt;&gt;){</CODE><BR>
<VAR>process one line of input</VAR> <CODE>}</CODE><BR>
</P>
<P>Assuming that you have written this script (the simpler version of it)into a file named <KBD>lines</KBD>, you could test it using a command of the form<BR><KBD>./lines</KBD>
<VAR>datafile</VAR><BR>
In particular, using the script as input to itself, you would do as follows (the details of
system output vary from one system to another):
</P>
<PRE>
<SAMP>lk-hp-23 perl 251 % </SAMP><KBD>./lines lines</KBD>
<SAMP>1 #!/usr/bin/perl 2 $line= 1;
3 while (<>){ 4 print $line++, "", $_;}lk-hp-23 perl 252 % </SAMP>
</PRE>

Замечания к примеру