CSS3, Шрифтове
Сред всички вълнуващи нови функции на CSS3 е трудно да се избере най-доброто. Но ако трябваше да изберете само една възможност, която отваря вратата за лавина от нови перспективи и която може да се използва точно сега, уеб шрифтовете може да са тази възможност.
В миналото уеб дизайнерите трябваше да работят с ограничен набор от шрифтове, подходящи за уеб страници. Подходящи шрифтове са шрифтове, за които е известно, че работят в различни браузъри и в различни операционни системи. Но както всеки повече или по-малко способен уеб дизайнер знае, шрифтовете играят огромна роля в създаването на цялостното впечатление за документ. В зависимост от използвания шрифт, едно и също съдържание може да се възприема като строго професионално, странно, старомодно или ултрамодерно.
Разработчиците на браузъри бавно прилагат персонализирани уеб шрифтове по обективни причини. На първо място, това са проблеми с оптимизацията. разделителната способност на екраните е много по-лоша от разделителната способност на отпечатаните документи. Ако уеб шрифтът не е правилно настроен за показване на екрана на монитора, малките букви ще се слеят в един размазан ред. Освен това повечето шрифтове са платени.
Големи компании като Microsoft не са склонни (разбираемо) да добавят функционалност, която да насърчи уеб разработчиците да изтеглят шрифтове, инсталирани на техните компютри, на уебсайт без подходящо разрешение.
В CSS3 поддръжката на сложни шрифтове се предоставя чрез възможността @ font-face, което се прилага, както следва:
Необходимият шрифт (или по-вероятно множество версии на шрифта за поддържане на различни браузъри) се зарежда на сайта.
Всеки шрифт се регистрира в таблицата със стилове с помощта на командата @ font-face.
Регистрираният шрифт се използва в правилата за стил, като се посочва името му, точно както обикновените уеб шрифтове.
Когато браузърът открие таблица със стилове, която използва специален уеб шрифт, той изтегля този шрифт от сървъра в кеша си, за да съхранява временно страници и изображения. След това браузърът използва този шрифт само за тази страница или сайт. Ако същият шрифт е посочен на друга страница, той трябва да бъде регистриран на тази страница и качен на нейния сървър, откъдето може да бъде зареден от браузъра в кеша му.
В следващите раздели ще разгледаме тези стъпки по-подробно.
Формати на уеб шрифтове
Въпреки че всички съвременни браузъри поддържат @ font-face, не всички от тях поддържат еднакви типове шрифтови файлове. Например Internet Explorer, който от много години предоставя @ font-face употреба, поддържа само вградени OpenType (EOT) файлове. Този формат предлага редица предимства, като например използва компресия, за да намали размера на файла на шрифта, а също така използва стриктно лицензиране на уебсайтове, за да предотврати кражбата на шрифта от един сайт и използването му на друг.
Но форматът EOT никога не е бил много популярен и не се използва от никой друг браузър. Вместо това браузърите работят с по-познатите стандарти за шрифтове, използвани в компютърните приложения - TTF (TrueType) и OTF (OpenType PostScript). Освен това има и два други вида показване на шрифтове - SVG и WOFF. Таблицата по-долу предоставя кратко описание на всички тези формати на шрифтове:
Изводът е следният: Ако искате да използвате @ font-face и да поддържате широка гама от браузъри, трябва да предоставите своя шрифт в няколко различни формата. Най-малко шрифтът трябва да бъде предоставен във формат TTF или OTF (без разлика), EOT и SVG. Добре е (но не е необходимо) да предоставите и шрифт във перспективния формат WOFF, той може да стане по-популярен и по-добре поддържан в бъдеще. (Едно от предимствата на този формат е използването на компресирани файлове, което намалява времето за изтегляне.)
Дори ако спазвате всички правила по-горе и предоставите всички необходими формати на шрифтове, очаквайте някои прегръдки. По-специално, следните проблеми понякога възникват при уеб шрифтовете: