2012-04-11 7 views
2

Ich habe an einem PHP-Projekt für die Universität gearbeitet, und da ich bei PHP blöd bin, habe ich das Design sehr einfach verlassen, damit ich mich auf die Programmierung konzentrieren kann . Jetzt funktioniert die Programmierung Ich arbeite an dem Design. Die Website sieht in Chrome und anderen Webkit-Browsern gut aus, in IE9 sieht sie jedoch schrecklich aus. Die Hauptprobleme sind ...Hacks, um den IE wie jeden anderen Browser aussehen zu lassen

1 - Hintergrundbild erweitert die div auf die volle Bildgröße, während in Webkit nur die div-Größe füllt.

2 - Inhalt ist nicht zentriert, stattdessen wird er nach links verschoben.

Kennt jemand Skripte/Hacks, die ich verwenden kann, um IE wie jeden anderen Browser auszuführen? Das einzige, was ich gerade benutze, ist Modernizr.

Sie können sich die Seite hier ansehen, wenn es hilft - http://newmedia.leeds.ac.uk/ug10/cs10cwh/pod/index.php.

+0

Holen Sie einfach den Browser-Namen, und machen Sie eine 'die (;; ;;) -Anweisung, wenn der Browser IE ist. : P – hjpotter92

Antwort

4

Modernizr kann helfen, vor allem, wenn Sie neuere Dinge wie html5 und css3 verwenden. Eine andere Sache, die helfen kann, ist Boilerplate-Code, ich persönlich mag die html5reset.

Eine besondere Sache davon ist, Ihnen viel zu helfen: wenn ich Ihre Seite in IE ansehe, sagt es, dass es in Quirks-Modus geht, IE7, 8, und 9 verhalten ... gut ... schrullig:) Legen Sie den folgenden Meta-Tag in Ihrem Kopfteil zu verbessern Dinge für IE:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 

Sie können sehen, was „Browser-Modus“ und „Document Mode“ IE läuft in durch die Entwickler-Symbolleiste (F12 Erziehung), Sie können es vorübergehend für Ihre Browsersitzung optimieren, um zu sehen, was passiert, wenn der Dokumentmodus "IE9-Standards" lautet.


Ein kurzes Update. Sie können auch versuchen, w3 validator zu verwenden. Einer der Fehler es mich für Ihre Website gibt:

Line 1, Column 15: Comments seen before doctype. Internet Explorer will 
go into the quirks mode. 

Es gibt auch ein paar Fehler auf nicht geschlossene Tags, die aus Rendering werfen.

+1

Ich bemerkte, dass Ihr schließendes '' Tag an der falschen Stelle ist, was diese nicht geschlossenen Tag-Fehler verursacht. Diese zu reparieren wird viel helfen. –

+0

Danke für den tollen Rat Jeroen. Wenn ich zuerst alles überprüfe und sehe, wie es aussieht, gebe ich dem Meta-Tag eine Chance. – GuerillaRadio

+2

Wie Sie bereits erwähnt haben, hat der Kommentar vor dem Doctyp den IE in den Quirks-Modus versetzt. Dies zu ändern, hat mein Design wieder an seinen normalen Platz gebracht :) Jetzt nur um die schrecklichen IE-Link-Grenzen loszuwerden. – GuerillaRadio

2

Was wir tun, ist eine separate CSS für die IE-Versionen verwenden und in der Wurzel wir den Browser und umfassen bestimmen, dass CSS-

So Ihre normale CSS für alle Browser schließen und für die IE-Versionen des spezifischen umfassen .css-Datei, die die erforderliche Seite des Haupt-Stylesheets überschreibt.

Edit: Und wie Jeroen sagte, zwingen Sie den IE zu rendern in seinem Real-Modus, nicht einige kompatibel oder Macken Sache.

Verwandte Themen