Интернет технологии -> CSS -> Шрифты и Internet Explorer
Шрифты и Internet Explorer
Спецификация CSS позволяет задать список шрифтов в свойстве font-family.
Для чего это сделано? Дело в том, что, до недавнего времени, было невозможно
точно узнать, установлен ли данный шрифт у пользователя или нет. Поэтому и предоставлялся
список шрифтов, в надежде, что хотя бы один из них установлен у пользователя.
Еще одной проблемой было соответствие набора символов (charset) шрифта настройкам
пользователю. Так одна из установочных программ перезаписывала русский шрифт
«Verdana», в котором присутствовали русские буквы, на английский
шрифт, в котором этих букв не было. В результате, при попытке просмотра сайта,
сверстанного шрифтом «Verdana», пользователь видел цепочки квадратиков.
В Internet Explorer'е версии 6.0 предусмотрен механизм, позволяющий, как получить
полный список всех шрифтов, так и узнать набор символов (charset)
конкретного шрифта. Для этого используются свойства и методы объекта Dialog
Helper. Данный объект представляет собой объект ActiveX,
устанавливаемый совместно с Internet Explorer. Для доступа к данному объекту
необходимо объявить его в html-документе при помощи тега object.
Например, так:
После того как экземпляр объекта Dialog Helper размещен в html-документе, можно
обращаться к его методам и свойствам. С точки зрения получения информации по
шрифтам, нас будут интересовать метод getCharset и коллекция
fonts. Метод getCharset возвращает
код набора символов (charset), предоставляемого данным шрифтом. Например, после
выполнения следующего кода, в переменной font_code
будет записан код набора символов шрифта «Verdana»:
По непонятным причинам, для операционных систем на семейства NT и
семейства 9X, метод getCharset возвращает разные коды.
Это необходимо учитывать при написании приложений, использующих данный метод.
Коллекция fonts содержит имена всех шрифтов, поддерживаемых
операционной системой. В частности данная коллекция может использоваться для
проверки на наличие того или иного шрифта. Например, после выполнение следующего
кода, переменная is_verdana содержит true, если шрифт
«Verdana» установлен и false в противном
случае:
<script language="jscript">
function is_font(font_name)
{
var i;
for(i = 1; i <= dlg.fonts.count; i++)
if (dlg.fonts(i) == font_name)
return true;
return false;
}
is_verdana = is_font("Verdana");
</script>
Список шрифтов.
Так как у Вас установлен Internet Explorer версии
6.0 или более поздней, то ниже Вы видите таблицу шрифтов, поддерживаемых вашим
браузером. Список шрифтов получен по методике, изложенной в данной статье.
Так как у вас не установлен Internet Explorer версии 6.0 или более поздней,
то скрипт не может получить и отобразить таблицу шрифтов, поддерживаемых вашим
браузером.