2012-10-05 18 views
6

Na html5shiv Google Code page użytkowania przykład zawiera IE warunkowy:Czy występują niepożądane skutki uboczne przy ładowaniu html5shiv w każdej przeglądarce?

<!--[if lt IE 9]> 
    <script src="dist/html5shiv.js"></script> 
<![endif]--> 

Jednak na html5shiv github page, opis wyjaśnia:

Skrypt ten jest de facto sposób, aby umożliwić korzystanie z HTML5 cięcia przy elementy starszy Internet Explorer, a także domyślny styl HTML5: w przeglądarce Internet Explorer 6 - 9, Safari 4.x (i iPhone 3.x), i Firefox 3.x.

Oczywistą sprzeczność. Tak więc, aby zaspokoić moją ciekawość, dla każdego, kto studiował kod, czy są jakieś niepożądane strony wpływające na ładowanie html5shiv w każdej przeglądarce (bez warunku IE)?

EDYCJA: Moim celem, oczywiście, jest użycie shiv bez warunku IE.

Odpowiedz

4

myślę, że komentarz warunkowy na stronie googlecode za (aktualizacja prawdopodobnie więcej niż rok temu) i dlatego IE8 poniżej potrzebują javascript trick aby umożliwić css stylizacji elementów HTML5.

FF4, Safari 4, Opera 11 i poniżej nie stosują domyślnie display:block elementów "nieznanych", ale do zmiany tego zachowania wystarczy tylko CSS reset.

Co html5shiv robi na tych przeglądarek jest tylko, aby dodać <style> na początku <head>, podobnego do tego:

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section { 
    display: block; 
} 

Źródło: http://meyerweb.com/eric/tools/css/reset/

tak, to nie powinien podać jakikolwiek efekt uboczny, ponieważ reguły te można zastąpić kolejnymi deklaracjami.

Dopóki dodajesz tę regułę do głównego pliku CSS, można warunkowo dołączyć html5shiv tylko do IE, zapiszesz zapytanie http.

Jeśli chcesz, aby Twoja strona html5 była kompatybilna z FF2 (jeśli tak, to jesteś maniakiem), check this tutorial.

OP odkryto, że html5shiv zapewnia już awarię dla FF2!

+0

Dzięki. Dla wszystkich zainteresowanych, html5shiv rozwiązuje również problem FF2, o ile klient ma włączoną obsługę JavaScript w swojej UA. – Jeff

+0

Dzięki @Jeff, nie wiedziałem o tym! Powinni napisać to na swoim GitHub :) – Giona

+0

Jeśli to wszystko, co robi html5shiv, dlaczego nie wystarczy dodać bloku do głównego pliku CSS i zrobić z nim? Jeśli Twoja przeglądarka jest przeglądana przez starą przeglądarkę, pomaga, a jeśli używa nowoczesnej przeglądarki, nie zaszkodzi. Dobrze? –

Powiązane problemy