2012-03-10 7 views
36

Wiem, że na stronie znajduje się wiele dobrych pytań na temat tych dwóch bibliotek skryptów.Zrozumienie korzyści związanych z modernizacją w stosunku do html5shiv

Chciałem zapytać o coś, czego nie mogę znaleźć w żadnym z nich.

Co oznacza, że ​​ zapewnia, że ​​html5shiv nie wychodzi z pudełka, to znaczy po prostu włączając skrypt.

Wiem, że html5shiv "po prostu" naprawia elementy HTML5 dla IE < 9, czy tam jest wsparcie?

Czy usługa Modernizr rozwiązuje problemy CSS3 na nawigatorach IE? Czy to robi ie9.js? (i mam na myśli to konkretne pytanie po wyjęciu z pudełka, bez dodatkowego kodu js do obsługi narożników)

Jakie są zalety Modernizr nad html5shiv, biorąc pod uwagę korzystanie z biblioteki oprócz samego włączenia skryptu?

+2

Brak odpowiedzi, ale rozumiem, że modernizator jest często używany do sprawdzania, czy przeglądarka obsługuje nowe funkcje (CSS3/HTML5). A potem kod może poradzić sobie z tymi, którzy tego nie robią. Ma "polyfills", które są w zasadzie podkładkami lub bardziej złożonymi wersjami. Nie jestem całkowicie pewien, co oferuje Modernizr w porównaniu do html5shiv (pod względem podkładek), ale ogólnie Modernizr jest często używany do sprawdzania, a nie do łatania. Może się mylę, ale to moja myśl. – Marshall

+0

http://blog.userinterfacemedia.com/modernizr-vs-html5shiv/ –

Odpowiedz

51

Robią różne rzeczy.

Usługa Modernizr wykrywa dostępność funkcji na stronie, umożliwiając tworzenie własnych wielokolorów w starszych przeglądarkach, jeśli wymagana jest taka funkcjonalność. Możesz dodać obsługę <canvas> za pomocą polyfillów tagów canvas, aby funkcja canvas, w tym interfejs JavaScript, w przeglądarkach, które nie obsługują tagu <canvas>.

Html5shiv dodaje nowe znaczniki html5, które nie są dostępne (<section>, <header>, itp.) Do starszych przeglądarek. Tworzy również domyślne style (na przykład display: block dla <section>).

To wszystko. Nie zapewnia żadnej innej funkcjonalności.

+0

Widzę i czy Modernizor robi wszystko, aby poprawić obsługę CSS3 w IE? – bevacqua

+5

Nie. Sam nie robi nic innego, jak tylko powiedzieć, czy jest obsługiwany, a jeśli nie jest obsługiwany, możesz dostarczyć polyfill, aby dodać tę funkcjonalność do przeglądarki. Zobacz https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills, aby znaleźć wyczerpującą listę polyfills do użycia w nim. – tkone

+0

Są one faktycznie bezpłatne dla siebie :) – tkone

37

Modernizator 1.5+ w rzeczywistości zawiera HTML5Shiv, więc jeśli go używasz, shiv jest zbędny. Źródło: http://modernizr.com/docs/#html5inie

"W wersji dla Modernizatora 1.5 ten skrypt jest identyczny z tym, który jest używany w popularnej bibliotece html5shim/html5shiv."

+2

Od linku," Od Modernizatora 1.5 ten skrypt jest identyczny z tym, który jest używany w popularnej bibliotece html5shim/html5shiv. " – JGallardo

Powiązane problemy