Сегодня небольшая заметка. В русском языке, как вы знаете существуют предлоги, и по правилам русского языка, при написании они должны переносится на новую строку вместе с последующим словом. Это правило применимо и к веб. Особенно актуально оно для ссылок меню, которые часто оказывается некорректно оформлено веб-мастерами. Т.е. ошибки типографики в тексте страницы допустимы, но меню заметно всегда. Приведу пример:
Строки перенесены неверно:
- Приборы для ПЦР в
реальном времени- Оборудование для
ПЦР-лабораторий- Наборы реагентов и
тест-системы для
ПЦР в реальном времени- Зонды для ПЦР в
реальном времени- Реагенты для
секвенирования и
фрагментного анализа
Строки с предлогами перенесены верно:
- Приборы для ПЦР
в реальном времени- Оборудование
для ПЦР-лабораторий- Наборы реагентов
и тест-системы
для ПЦР в реальном времени- Зонды для ПЦР
в реальном времени- Реагенты
для секвенирования
и фрагментного анализа
Добиться такого эффекта легко, если заменить пробел после предлога на неразрывный -
Это можно сделать если настроить следующую автозамену в php-скриптах вывода этого меню, например так:
$caption = str_replace(' в ',' в ',$caption); $caption = str_replace(' и ',' и ',$caption); $caption = str_replace(' для ',' для ',$caption);
На самом деле предлогов немного больше, поэтому чтобы заменить их все, я написала для вас следующую маленькую функцию:
function typo($str){ $predlogs=array('в', 'без','до','из','к','на','по','о','от','перед','при','через', 'с','у','и','нет','за','над','для', 'об', 'под', 'про'); foreach($predlogs as $p){ $str = str_replace(' '.$p.' ',' '.$p.' ',$str); } return $str; }
Приятной типографики вам =)
UPD: Спасибо Aikr в комментариях, за предложенный вариант с регулярными выражениями. Та же функция на них:
function typo($str){ $pattern = '/\s+(в|без|до|из|к|на|по|о|от|перед|при|через|с|у|и|нет|за|над|для|об|под|про)\s+/'; return preg_replace($pattern, ' \1 ', $str); }
Комментарии:
Алексей
01.07.2010 08:03:41
Алексей
01.07.2010 08:08:20
Елена Лунная
01.07.2010 14:00:49
demerest@ (Андрей Козлов)
03.08.2010 16:33:16
aikr
09.09.2010 19:32:56
aikr
09.09.2010 19:36:13
Елена Лунная
11.09.2010 15:23:17
Grawl
13.06.2013 07:58:43
павел
28.10.2013 06:16:42