Was ist der richtige Weg, @font-face
damit der Browser die Schriftart nicht herunterlädt, wenn der Benutzer sie bereits hat?
Ich verwende @ font-face, um DejaVu zu definieren, das bereits auf meinem System (Linux) installiert ist. Firefox lädt die Schriftart nicht herunter, aber Chromium lädt sie jedes Mal herunter!
Mein CSS-Code, basierend auf Font Squirrel und dieser Frage, sieht folgendermaßen aus:
@font-face {
font-family: 'DejaVu Serif';
src: url('DejaVuSerif-webfont.eot');
src: local('DejaVu Serif'), url('DejaVuSerif-webfont.woff') format('woff'), url('DejaVuSerif-webfont.ttf') format('truetype'), url('DejaVuSerif-webfont.svg#webfontCFu7RF0I') format('svg');
font-weight: normal;
font-style: normal;
}
/* ... @font-face definitions for italic and bold omitted ... */
@font-face {
font-family: 'DejaVu Serif';
src: url('DejaVuSerif-BoldItalic-webfont.eot');
src: local('DejaVu Serif Bold Italic'), url('DejaVuSerif-BoldItalic-webfont.woff') format('woff'), url('DejaVuSerif-BoldItalic-webfont.ttf') format('truetype'), url('DejaVuSerif-BoldItalic-webfont.svg#webfontQAewh7pf') format('svg');
font-weight: bold;
font-style: italic;
}
Antworten:
Wenn Sie zuerst nach lokalen Dateien suchen möchten, gehen Sie wie folgt vor:
@font-face { font-family: 'Green Sans Web'; src: local('Green Web'), local('GreenWeb-Regular'), url('GreenWeb.ttf'); }
Es gibt eine ausführlichere Beschreibung dessen, was hier zu tun ist .
quelle
src
s haben (wie im Beispiel von OP)? Ziehen wirlocal
den ersten oder zweiten an?Ich habe eigentlich nichts damit gemacht
font-face
, also nimm das mit einer Prise Salz, aber ich glaube nicht, dass der Browser definitiv feststellen kann, ob eine bestimmte Webschrift auf dem Computer eines Benutzers installiert ist oder nicht.Der Benutzer könnte beispielsweise eine andere Schriftart mit demselben Namen auf seinem Computer installiert haben. Die einzige Möglichkeit, dies definitiv festzustellen, besteht darin, die Schriftdateien zu vergleichen, um festzustellen, ob sie identisch sind. Und der Browser könnte das nicht tun, ohne zuerst Ihre Webschrift herunterzuladen.
Lädt Firefox die Schriftart herunter, wenn Sie sie tatsächlich in einer
font
Deklaration verwenden? (zBh1 { font: 'DejaVu Serif';
)?quelle
font
/font-family
arbeiten. Ich weiß einfach nicht, wie das@font-face
funktioniert!