2012-05-05 32 views
5

Używam font ikony IconMoon @ font-face dla projektu, nad którym pracuję.Chrome nie renderuje @ czcionka-twarz ttf/woff gładka

Czcionka jest ładnie i płynnie renderowana, gdy zawiera tylko czcionkę .svg i/lub .eot lub podczas przeglądania w innych przeglądarkach, takich jak IE9. Ale podczas przeglądania witryny za pomocą przeglądarki Chrome, w tym formatu .ttf i/lub .woff, ikony stają się bardzo niestabilne i nie powodują wcale wygładzania. Czy istnieje sposób na poinformowanie Chrome, aby wczytała plik .eot lub .svg zamiast .ttf lub .woff?

Odpowiedz

1

może ta właściwość css rozwiązuje problemu:

yourSelector { 
    font-smooth: always; 
    -webkit-font-smoothing: antialiased; 
} 
+0

przy okazji, jedyną przeglądarką obsługującą format "eot" jest IE. chrome obsługuje także format "svg" i możesz dołączyć link do pliku "svg" w regule stylu @ font-face, ale jeśli podasz także link "ttf" lub "otf", większość przeglądarek woli z nich korzystać. – neepo

1

znalazłem to działa na tej kwestii. Nie wydaje mi się, żeby rozwiązanie gładkie w fonterze rzeczywiście działało.

@font-face { 
    font-family: 'Montserrat'; 
    font-style: normal; 
    font-weight: 400; 
    src: url('fonts/montserrat-regular-webfont.eot'); /* IE9 Compat Modes */ 
    src: url('fonts/montserrat-regular-webfont.eot?iefix') format('eot'), 
     url('fonts/montserrat-regular-webfont.ttf') format('truetype'), 
     url('fonts/montserrat-regular-webfont.svg#montserratregular') format('svg'), 
     url('fonts/montserrat-regular-webfont.woff') format('woff'); 
} 

Firefox odbierze ostatni na liście (WOFF), pracuje czy nie, IE użyje EOT i Chrome odbierze pierwszy z nich, który działa (SVG). WOFF działa też w chromie, ale powoduje aliasami glify, więc oddanie SVG przed WOFF rozwiązuje ten problem. *

To rozwiązanie działa, ale powoduje dodatkowy wniosek w Safari, można zostawić SVG poniżej WOFF jak ty oryginalnie i dodać:

@media screen and (-webkit-min-device-pixel-ratio:0) { 
    @font-face { 
    font-family: 'OpenSansLightItalic'; 
    src: url('fonts/montserrat-regular-webfont.svg#montserratregular') format('svg'); 
    } 
} 

przeczytać o tym tutaj: http://hollisterdesign.wordpress.com/2014/04/29/note-to-self-always-use-this-fix/

+0

Czcionki SVG albo nie działają, albo są przestarzałe w Chrome (w zależności od systemu operacyjnego). http://blog.chromium.org/2014/08/chrome-38-beta-new-primitives-for-next.html – curtisblackwell

-1

Spróbuj ten mały obrót dla czcionki, mam nadzieję, że to pomoże.

Przykład:

p{ 
    transform: rotate(-0.0000000001deg); 
} 
+0

lol. to działa. Niestety, najmniejszy stopień, który działał, wynosił 0,1 stopnia. co sprawiło, że strona wyglądała nieporęcznie. – user702397

0

Put url czcionki SVG przed wszystkimi innymi, Chrome załaduje SVG, a dostaniesz piękny renderowanie, szczególnie dla lekkich czcionki.

+0

Czcionki SVG albo nie działają, albo są przestarzałe w Chrome (w zależności od systemu operacyjnego). http://blog.chromium.org/2014/08/chrome-38-beta-new-primitives-for-next.html – curtisblackwell