Проверка HTML-кода гарантирует, что все посетители, каким бы браузером они ни пользовались, увидят ваши страницы именно такими, какими видите их вы.
Ошибки, определяемые программами или сетевыми сервисами проверки правильности HTML-кода, обычно относятся к двум категориям: неправильное применение тэгов и использование нестандартных расширений. HTML-стандарты задают некий минимальный уровень требований, соблюдение которых дает сходные результаты при обработке тэгов языка HTML различными программами просмотра HTML-документов. На практике требования браузеров несколько отличаются от этого уровня в ту или иную сторону, однако в любом случае исправить ошибки первого рода легко, и это не займет много времени.
Со вторыми дело обстоит не так просто. На вашей странице могут оказаться тэги, поддерживаемые только одним из браузеров и неработающие в других. Стоит взвесить, что дает их применение – оправдает ли оно потерю посетителей, использующих несовместимые программы просмотра. При профессиональном проектировании сайта обычно отслеживают, какими браузерами пользуются посетители, чтобы придти к разумному компромиссу при выборе тех или иных решений. Если у 98 % ваших посетителей браузеры могут обрабатывать тэг, который действительно позволяет сделать страницу более красивой и удобной, – можно его сохранить.
Проверку синтаксиса HTML-документов невозможно выполнить с помощью обычных браузеров, так как они предназначены только для просмотра HTML-страниц. Если в документе имеются синтаксические ошибки, браузер пытается, игнорируя их, каким-либо образом показать страницу на экране. Однако решается такая задача каждый раз по-новому – в зависимости от типа браузера и даже от его версии. Если ошибок на странице слишком много, она может быть не отображена в окне браузера или отображена лишь частично. Программные и сетевые средства проверки HTML-документов позволяют предупредить такое поведение браузеров, выявляя допущенные при разработке страниц ошибки. Отметим, что сделать это довольно просто. Выявив ошибки до размещения HTML-документов в Internet, вы заметите, что страницы будут загружаться быстрее, а проблем станет значительно меньше.
Задание типа документа
В соответствии со стандартом каждый HTML-документ предполагает наличие объявления типа документа. В семействе языков разметки HTML является всего лишь одним из многих, хотя и самым популярным. Он имеет уже многолетнюю историю и был за это время нормирован различными версиями. Заданием типа документа указывается используемый язык разметки и его версия. Программы, читающие эти указания (например, обозреватели Internet и программы проверки синтаксиса HTML-кода), придерживаются таких указаний. В частности, декларация типа документа дает возможность программам проверки определить, какую версию HTML следует использовать для контроля.
Каждое указание типа документа связано с так называемыми определениями типа документа (DTD, Document type declaration). И для HTML существуют такие DTD. В них оговорено, какие элементы (тэги) может содержать документ типа HTML, какие элементы могут располагаться внутри других элементов, какие атрибуты принадлежат тому или иному элементу, является ли задание того или иного атрибута обязательным и т. д.
Рекомендуется начинать любой HTML-документ со строки, содержащей определение типа документа – тэг DOCTYPE. Для этого обычно используются нижеперечисленные конструкции.
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01//EN» "http://www.w3.org/TR/html4/strict.dtd">
Такое объявление служит указанием, что используется тип документа HTML 4.01 Strict (Строгий). Строгое следование стандартам повышает ранг документа в рейтингах поисковых машин. Если стандарт полностью соблюден – пользуйтесь этим определением.
Задавайте тип документа первой строкой HTML-файла перед открывающим тэгом <HTML>. Обратите внимание, что за угловой скобкой следует восклицательный знак. Запись DOCTYPE HTML PUBLIC означает, что вы ссылаетесь на всем доступный HTML-DTD. Заключенные в кавычки данные расшифровываются следующим образом:
• W3C – издатель DTD: в данном случае, WB-консорциум;
• DTD HTML 4.01 – указание типа: в файле применен документ типа HTML в версии 4.01 и варианте Strict (по умолчанию);
• EN – сокращение, указывающее на язык (в данном случае – английский) написания элементов (тэгов) и их атрибутов, но не содержания файла. Применяйте всегда EN, так как имена элементов и атрибутов HTML основаны на английском языке.
Последним параметром в объявлении является адрес в Internet DTD-файла, который дает возможность программам загрузить его и прочитать определенные в нем правила. Заметим, что, в отличие от программ проверки синтаксиса, большинство браузеров при представлении HTML-документов этого не делают. Такой подход основан на желании разработчиков Internet-обозревателей отображать даже те страницы, которые написаны с большими отклонениями от правил правописания HTML.
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Transitional//EN» "http://www.w3.org/TR/html4/loose.dtd">
Используется тип документа HTML 4.01 Transitional (Переходный). Имеется в виду HTML «переходного периода», то есть разрешается применять устаревшие элементы из HTML 3.2.
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.01 Frameset//EN» "http://www.w3.org/TR/html4/frameset.dtd">
Тип документа HTML 4.01 Frameset – это HTML 4.01 Transitional с добавлением фреймовых элементов.
<!DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 3.2 Final//EN»>
Эта форма задания типа документа применима, если вы хотите сослаться на версию HTML 3.2.
<!DOCTYPE html PUBLIC «-//IETF//DTD HTML 2.0//EN»>
То же – на версию HTML 2.0.
Всего лишь десять лет назад в дизайне ощущалась острая нехватка компьютерных шрифтов (как по количеству, так и по качеству). Однако в настоящее время эта ситуация резко изменилась – появилась масса разнообразнейшего шрифтового материала любых стилей. Internet-технологии накладывают специфические ограничения на использование шрифтов в оформлении web-документов. B частности, межплатформенный характер Сети не позволяет однозначно определять шрифт для вывода текста документа на экран монитора клиента. Применение тэга <F0NT FACE=…> не является панацеей от этой проблемы. На клиентской машине, возможно, не окажется нужного шрифта, а замена его другим, выбранным системой по умолчанию, может привести к появлению нечитаемого документа. Поэтому считается правилом хорошего тона не употреблять указанный тэг при проектировании HTML-документов.
Это заставляет изыскивать другие пути для оформления текста страниц. B частности, выделение необходимых его частей цветом, применением строчных символов, их курсивного и полужирного начертания, а также манипуляции с кеглем шрифта, выводимого на экран. Немаловажным для удобства восприятия информации оказывается цветовое соотношение текста и фона. Если предполагается передача клиенту достаточно большого объема информации, то с точки зрения удобства для чтения желательно, чтобы текст был выполнен темным цветом на светлом фоне и был достаточно контрастным. Применение ярких подложек под текст (задний фон) является сильным выразительным средством, но, необходимо помнить, что читать текст по яркому, а тем более неоднородному, фону трудно, а иногда просто невозможно, так как символы теряются в пестроте подложки.
Конкретный шрифт, который будет применен для отображения текста, позволяет задавать также каскадные таблицы стилей (CSS). Но и в этом случае шрифты берутся из набора, установленного на компьютере пользователя. Поэтому следует учитывать ряд ограничений. Первое, и основное, заключается в том, чтобы использовать только стандартные шрифты, поставляемые с операционной системой MS Windows и гарантированно находящиеся на машине клиента. А этих шрифтов всего три: Arial, Times New Roman и Courier.
Второе – корректное описание шрифта в таблице стилей и перечисление также и других заменяющих шрифтов. В конце списка должно быть обязательное указание общего семейства шрифта (с засечками – без засечек, моноширинный – пропорциональный и т. д.). При помощи такого описания мы увеличиваем потенциальную аудиторию нашего сайта. Пример корректного описания шрифтов в таблице стилей приведен ниже:
<style type="text/css">
<!-
.serif { font-family: "Times New Roman", «Geneva», «serif»; }
.sanserif { font-family: «Arial», «Helvetica», «sans-serif»; }
.mono { font-family: «Courier», «monospace»; }
–>
</style>
Почему нежелательно использовать другие шрифты? В этом случае недостающий шрифт будет подменен ближайшим подходящим по умолчанию. Для уменьшения вероятности такой замены и используется в CSS список заменяющих шрифтов. Но еще хуже, если нужный шрифт будет установлен на компьютере, но окажется нерусифицированной версией. Тогда текст будет отображен некими спецсимволами – всевозможными знаками с умляутами, апострофами, тильдами и т. п.
Одним из показателей удобочитаемости является ширина строки документа. С появлением мониторов, поддерживающих большое разрешение экрана, стало возможным уместить в одной строке до нескольких сотен символов, однако едва ли следует увеличивать это число более 50–70, так как при большем количестве скорость чтения замедляется, а утомляемость значительно возрастает.