Patrzę na stronę MDC dla reguły CSS @ font-face , ale nic nie rozumiem. Mam osobne pliki dla pogrubienia , kursywy i pogrubienia + kursywy . Jak osadzić wszystkie trzy pliki w jednej @font-face
regule? Na przykład, jeśli mam:
@font-face {
font-family: "DejaVu Sans";
src: url("./fonts/DejaVuSans.ttf") format("ttf");
}
strong {
font-family: "DejaVu Sans";
font-weight: bold;
}
Przeglądarka nie będzie wiedziała, która czcionka ma być pogrubiona (ponieważ ten plik to DejaVuSansBold.ttf), więc domyślnie wybierze coś, czego prawdopodobnie nie chcę. Jak mogę powiedzieć przeglądarce, że mam różne warianty dla określonej czcionki?
Odpowiedzi:
Wydaje się, że rozwiązaniem jest dodanie wielu
@font-face
reguł, na przykład:Nawiasem mówiąc, wygląda na to, że Google Chrome nie wie o tym
format("ttf")
argumencie, więc możesz to pominąć.(Ta odpowiedź była poprawna dla CSS 2 specyfikacji. CSS3 pozwala tylko na jeden font-style zamiast listy oddzielonych przecinkami).
źródło
font-style: italic, oblique;
aby po prostufont-style: italic;
wszystko naprawić.Począwszy od CSS3, specyfikacja uległa zmianie, dopuszczając tylko jeden
font-style
. Lista oddzielona przecinkami (według CSS2) będzie traktowana tak, jakby byłanormal
i zastąpi każdy wcześniejszy (domyślny) wpis. Spowoduje to, że zdefiniowane w ten sposób czcionki będą stale wyświetlane kursywą.W większości przypadków kursywą będzie prawdopodobnie wystarczająca, a ukośne reguły nie będą konieczne, jeśli zadbasz o to, aby określić, którego z nich będziesz używać i trzymać się tego.
źródło
I have separate files for bold, italic and bold + italic
- więc są trzy różne pliki. Ta odpowiedź poprawia zaakceptowaną, ponieważfont-style: italic, oblique;
nie jest już ważna, ale również ta odpowiedź używała tego samego pliku dla kursywy i ukośnego. Warto jednak zaznaczyć, że plik jest udostępniany w dwóch przypadkach.Aby wariacja czcionek działała poprawnie, musiałem odwrócić kolejność @ font-face w CSS.
źródło
obecnie, 17.12.2017. Nie znalazłem żadnego opisu na temat konieczności zamówienia właściwości-czcionki w specyfikacji . I testuję w chrome zawsze działa niezależnie od kolejności.
źródło
Jeśli używasz czcionek Google, sugeruję następujące.
Jeśli chcesz, aby czcionki działały z lokalnego hosta lub serwera, musisz pobrać pliki.
Zamiast pobierać pakiety ttf z linków do pobierania, użyj linku na żywo, który podają, na przykład:
Wklej adres URL w przeglądarce, a powinieneś otrzymać deklarację czcionki podobną do pierwszej odpowiedzi.
Otwórz podane adresy URL, pobierz pliki i zmień ich nazwę.
Przyklej zaktualizowane deklaracje czcionek za pomocą względnych ścieżek do plików woff w swoim CSS i gotowe.
źródło
źródło
Nie zapominaj, że jest to odważny wariant
font-weight
; dla wariantu kursywy jest tofont-style
źródło
@font-face
, więc staram się głosować za odpowiedzią (ale nie mogę, nie mam wystarczającej reputacji)