Modernizr – mehr “Browserkompatibilität” mit JavaScript

Modernizr ist eine kleine JavaScript-Bibliothek mit der man eine feinere Kontrolle darüber bekommt was für CSS-Styles je nach Browser benutzt (oder auch nicht benutzt) werden können.

Angenommen man möchte in seinem Design Transparenz benutzen und den Nutzern die einen Browser nutzen der das nicht anbietet trotzdem ein vernünftiges Design präsentieren. Dann wäre es natürlich schön würde CSS eine Art if/then/else Konstruktion kennen.

Mit Modernizr kann man das nachbilden. Man würde einfach 2 CSS-Klassen definieren:

.opacity div p { Was auch immer }
.no-opacity div p { siehe oben }

Erkennt Modernizr nun, dass der Browser keine Transparenz unterstützt, wird statt der für opacity geltenden Styles die von no-opacity genutzt.

Dies beherrscht Modernizr für mehrere Dutzend CSS-Eigenschaften, so dass man immer sehr einfach “wenn der Browser Feature X kann, dann mach das ansonsten das” Styles erzeugen kann.

Ausserdem stellt das JavaScript anderen JavaScripts eine Klasse zur Verfügung mit der man in eigenen Scripts abfragen kann ob ein Browser eine bestimmte Fähigkeit hat. Modernizr.canvas wäre z.B. die Eigenschaft die man nutzen könnte um festzustellen ob ein Browser das Canvas-Objekt unterstützt, etc.

Lizenz:MIT-Lizenz
Kurz-URLs:http://tinyurl.com/3y35adh
http://bit.ly/abE8he

Keine verwandten Themen gefunden.

Christian

Baujahr 1976, Software-Entwickler und Web-Designer aus Leidenschaft, Erfahrung in gefühlten 9342049 Programmiersprachen (PHP, Perl, C#, VB.Net, VB6, Delphi um nur einige zu nennen), in der Vergangenheit an diversen Open Source Projekten beteiligt (allen voran das gute alte YaBB und YaBB SE)