Книга: Веб-дизайн

ПРАВИЛА НАБОРА ТЕКСТОВ

ПРАВИЛА НАБОРА ТЕКСТОВ

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

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

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

 до, а не после, открывающей скобки, открывающей кавычки и многоточия в начале предложения;

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

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

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

• между двумя инициалами и между инициалами и фамилией: Д. Б. Кирсанов;

• между сокращенными обращениями и фамилией: г-н Кирсанов, а также после географических сокращений типа г. Москва или o-в Крым;

• между знаками номера (№) и параграфа (§) и относящимися к ним числами;

• внутри сокращений «и т. д.», «и т. п.», «т. е.», «ж. д.» и им подобных (хотя английские «e. g.» и «i. e.» пробелами обычно не разделяются);

• между внутритекстовыми пунктами, такими как «а)», «б)» или «I.», «2.», и следующим за ними текстом;

• между числами и относящимися к ним единицами измерения: 200 кг; это же относится и к указаниям дат: XVIII в., 1998 г.;

• перед длинным тире в середине предложения (таким образом, этот знак препинания отделяется пробелами с двух сторон — неразрываемым слева и обычным справа);

• между классами многозначных чисел, начиная с пятизначных: 1 302 569;

• перед номерами версий программных продуктов и частями их названий, состоящими из цифр или сокращений: Windows 3.1, Windows 95, Windows  NT;

• после однобуквенных предлогов и союзов, особенно в начале предложения или в заголовке.

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

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

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

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

Спецсимволы. Отсутствующие непосредственно на клавиатуре символы — постоянный источник неприятностей для веб–дизайнеров. В стандартной для HTML кодировке Latin?1 (стр. 17) просто нет некоторых позарез нужных для набора даже английского текста символов, а до универсальной поддержки Unicode во всех документах, броузерах, шрифтах и операционных системах пока еще очень далеко. И уж конечно, ничуть не лучше дела обстоят в мире кириллицы с ее многочисленными несовместимыми друг с другом кодировками.

Первым приходящий в голову способ вызвать нужный в тексте, но отсутствующий на клавиатуре символ — посмотреть его номер в каком–нибудь шрифте и сослаться на него из HTML с помощью числовой подстановки (например, написав &#1б 9; для вызова символа копирайта, стр.29). Однако этот метод очень ненадежен — он полагается, во–первых, на то, что у всех шрифтов на всех платформах этот символ расположен в одной и той же позиции (что далеко не всегда соответствует действительности), а во–вторых, на то, что броузер будет интерпретировать код именно как номер символа в текущем шрифте (что, вообще говоря, противоречит стандарту). Поэтому гораздо предпочтительней пользоваться мнемоническими подстановками (например, &сору; для того же символа копирайта). Однако несовершенство броузеров и сложившаяся (так и хочется сказать «порочная») практика русификации HTML-документов накладывает серьезные ограничения и на этот способ.

Длинное тире (англ. ет dash) как знак препинания не имеет ничего общего с дефисом (hyphen) — в идеале оно должно выглядеть именно так, как в этом предложении. Из кодировок кириллицы (стр. 16) длинное тире есть только у Unicode, CP1251 и кодировки Макинтоша, поэтому им нельзя пользоваться в текстах, автоматически перекодируемых из/в КОИ 8 или СР 866. Хотя в Windows почти все шрифты (как с кириллицей, так и без) имеют длинное тире по адресу 151 (шестнадцатеричное 97), пользоваться им на законных основаниях нельзя и в английских текстах — в официально предписанной для HTML кодировке Latin?1 (как и в Unicode) это знакоместо объявлено «неиспользуемым» (стр. 17). Увы, пока что единственный стопроцентно надежный способ воспроизвести длинное тире в HTML-тексте — набрать два или три дефиса подряд: — или —.

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

? То же самое можно сказать и о коротком тире (англ. еп dash). В русской типографской традиции этого символа не было, но в английском наборе им принято пользоваться для численных интервалов, например: 1998–2000 (короткое тире не только чуть короче длинного, но и приподнято над строкой до середины высоты цифровых символов). В Windows большинство шрифтов имеют этот символ по адресу 150 (шестнадцатеричное 96); в HTML, однако, его приходится опять–таки имитировать одиночным или двойным дефисом.

Надо сказать, что в HTML 4 уже предусмотрены символьные коды — и – для длинного и короткого тире соответственно. Однако ссылаются они на кодовые позиции этих символов в Unicode — и увы, ни MSIE, ни NC в четвертых версиях еще и не думают эти коды поддерживать (хотя MSIE понимает их числовые Unicode–подстановки — и –).

Кавычки — тема, заслуживающая отдельной книги. Всего существует четыре типа кавычек: «французские» (иначе называемые «елочки»), «немецкие» («лапки»), «английские обычные, или двойные," и 'английские одинарные.' В русском языке традиционно применяются французские «елочки», а для «кавычек «внутри» кавычек» — немецкие «лапки». В английском языке пользуются «английскими двойными» для кавычек первого уровня и 'английскими одинарными' для «кавычек 'внутри' кавычек.» Соответственно, английские кавычки в русском тексте, так же как и обозначение дюйма " вместо полагающихся кавычек в английском тексте, — следствие либо каких–то технических ограничений при наборе, либо (увы, чаще) необразованности того, кто этот текст оформлял.

К сожалению, в HTML вам вряд ли удастся щегольнуть знанием всех кавычечных тонкостей. В Latin?1 предусмотрены только французские «елочки», для вызова которых стандартный HTML имеет мнемонические подстановки « и ». Однако на практике этими кодами нельзя пользоваться именно там, где они больше всего нужны, — в русском языке: из всех кодировок кириллицы «лапки» есть только в Unicode, CP1251 и в кодировке Макинтоша. И хотя в теории броузер обязан относить мнемонические подстановки к набору символов языка HTML (т. е. Latin?1), а не к текущей кодировке документа, на практике мысль украсить русский текст «елочками» можно оставить до тех пор, пока все броузеры не научатся правильно разбираться с кодировками и мнемоническими подстановками.

Еще печальнее ситуация с немецкими и английскими кавычками. Их нет даже в Latin?1, и надеяться остается лишь на Unicode, — точнее, на ссылающиеся на символы Unicode подстановки „ („), “ ("), ” ("), ‘ (') и ’ ('). Эти символьные коды введены в HTML 4, но еще не поддерживаются графическими броузерами.

Кстати, имейте в виду, что в английском языке точки и запятые принято вносить внутрь кавычек, даже если по смыслу они должны стоять снаружи: «так," а не «так».

? Сравнительно неплохо обстоят дела с символами авторского права (©) и параграфа (§) — они есть и в Latin?1, и в большинстве шрифтов (как с кириллицей, так и без). Для их вызова из HTML можно пользоваться символьными кодами &сору; и &sect; соответственно. Напротив, символ торговой марки (™), также присутствующий в большинстве шрифтов, в Latin?1 отсутствует, так что вместо &trade; предпочтительнее писать <SUP><SMALL>tm</SMALL></SUP>.

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

Оглавление книги


Генерация: 1.129. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз