2015-07-04 18 views
5

Mam zestaw osadzonych czcionek, które działają dobrze w Firefoksie, Chrome, Safari - ale, zaskoczyć, zaskoczyć, nie w IE (v11, ale wypróbowany w 10 i to też nie działa).Czcionka osadzona w IE11 nie będzie działać - wypróbowano wszystkie typowe podejścia.

Mogę dostać niektóre do załadowania w IE, ale nie innych. Próbkę css:

/* working */ 
@font-face { 
    font-family: 'FoundersGroteskWeb-Semibold'; 
    src: url(./fonts/FoundersGroteskWeb-Semibold.eot); 
    src: url(./fonts/FoundersGroteskWeb-Semibold.eot?#iefix) format('embedded-opentype'), 
     url(./fonts/FoundersGroteskWeb-Semibold.woff) format('woff'); 
    font-style: normal; 
    font-weight: normal; 
      } 

/* not working */  
@font-face { 
    font-family: 'FoundersGroteskX-CondensedWeb-Bold'; 
    src: url(./fonts/FoundersGroteskX-CondensedWeb-Bold.eot); 
    src: url(./fonts/FoundersGroteskX-CondensedWeb-Bold.eot?#iefix) format('embedded-opentype'), 
     url(./fonts/FoundersGroteskX-CondensedWeb-Bold.woff) format('woff'); 
    font-style: normal; 
    font-weight: normal; 
} 

serwowane są Czcionki, nazwane poprawnie, itp Jedyną różnicą jaką zauważyłem jest to, że wszystkie inne przeglądarki były ładowania pliku WOFF, natomiast IE używał (pierwszy, non #iefix) plik eot. Próbowałem więc usunąć wszystkie odniesienia do plików eot, zmuszając IE11 do używania woff. Ponownie załadował pierwszy, ale nie użył drugiego (wszystkie inne przeglądarki ładowały się bez problemu).

Kiedy sprawdzam kartę sieci w IE, widzę odpowiedź 200 na pierwszą czcionkę, ale nic nie ma dla drugiej czcionki, wyglądającej tak, jakby dusiła się na parsowaniu css. Jednakże, biorąc pod uwagę, że te dwie deklaracje są identyczne oprócz nazwy czcionki, nie rozumiem, dlaczego tak się stało.

Ktoś ma jakieś pomysły, co jeszcze mogę spróbować, bo zabrakło mi słomek, żeby się przyłączyć?

Odpowiedz

8

IE 9 (i myślę, że również 10 i 11) ma limit 31 znaków na deklarację nazwy czcionki. Spróbuj zmienić nazwę czcionki na "FoundersGroteskX-CndWeb-Bld"; która ma 30 znaków, aby być bezpiecznym (ponieważ to ograniczenie 31 znaków zawiera cytaty i średniki:

+0

że to zrobił - bardzo dziękuję, ja jechałem z mojego umysłu! – jaucourt

+0

Niech żyje IE i jego dziwactwa. Będziesz zaskoczony tym, że tego ograniczenia nie było w IE7/IE8: D –

+0

Interfejs API systemu Windows zawsze miał długość nazwy czcionki maksymalnie 30 znaków. Zobacz na przykład https://msdn.microsoft.com/en-us/library/2ek64h34.aspx. Tym, co wydaje mi się dziwne, wydaje się, że dłuższe imiona działają w IE7 i 8! Zaczekaj, co jeśli był to błąd w IE7 i 8 i obejmował przepełnienie bufora, a błąd został ostatecznie naprawiony w IE9. –

0

zgodnie z twoją wcześniejszą sugestią Próbowałem również minimalizować nazwy czcionek, ale to nadal nie działa w najnowszym IE:

</style> 
<style type="text/css"> 

@font-face { 
    font-family:"Avenir"; 
    src: url("./Fonts/Avenir.eot"); 
    src: url("./Fonts/Avenir.eot?#iefix") format("embedded-opentype"), 
     url("./Fonts/Avenir.woff") format("woff"); 
} 

</style> 

Czy uważasz, że IE nie przyjmuje czcionek WOFF

+0

Nie sądzę, że format woff jest problemem. Czy ładowanie czcionek w innych przeglądarkach? Z której wersji IE korzystasz? Czy ładuje się inne czcionki woff w IE? – jaucourt

+0

TAK wszystkie ładują się dobrze we wszystkich przeglądarkach oprócz IE! bardzo dziwny... – Gabriel

0

Sprawdź pobieranie czcionki bezpieczeństwo, należy włączyć, aby załadować ikonę czcionki

Przejdź do:?.

IE> Opcje internetowe> Intranet> Poziom niestandardowy> Downloads> Font Pobierz