2010-02-13 4 views
5

Im Folgenden finden Sie die Probe HTML-Code iWie kann ich meine Website im Internet Explorer so schnell laden wie in Firefox?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
    <head> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
    </head> 

    <body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" > 

''''' Many tables and data's and images'''''' 
    </body> 
    </html> 

Wenn ich über Code in Firefox verwenden, um zu laden, es funktioniert schnell in meiner Webseite mit ... das bedeutet, welche Last auf der Webseite wird es angezeigt werden soll.

aber im Internet Explorer wird der gesamte Code dann ...

bereits nach Laden der Seite gearbeitet

Wie ich meinen Code wie Firefox gleiche machen kann?

der Hoffnung, Ihre Antwort,

alex

+0

@Alex, können Sie einen Link zu der Seite bereitstellen, damit wir zwischen IE und Firefox vergleichen können? –

+0

Seht die komplett geladene Seite in IE und Firefox anders aus oder ist nur die Ladezeit oder teilweise geladene Seite anders? – tux21b

+0

Seitenladezeit unterschiedlich. firefox disply Kontakt wht es laden, aber erkunden Last nach allen Anwendungen – Alex

Antwort

1

Sie nicht die Ladezeit und Ordnung leicht beeinflussen können. Es gibt viele verschiedene Layout-Engines, die von verschiedenen Browsern verwendet werden und alle arbeiten ein bisschen anders. Und nur das Ergebnis wird durch Webstandards festgelegt.

Sie können jedoch Teile der Websites asynchron mit AJAX laden. Dies würde bedeuten, dass Sie keine große Tabelle hinzugefügt haben, deren Laden in Ihrer Haupt-HTML-Datei sehr lange dauert. Stattdessen verwenden Sie etwas Javascript, um die Tabelle asynchron in Ihre Website zu laden, nachdem die Seite geladen wurde.

Aber solange die Tabelle nicht so groß ist, dass das Laden/Rendern mehrere Sekunden dauert, würde ich mich nicht um das Problem kümmern.

0

Vermeiden

'' ''‘Viele Tabellen und Daten von und Bildern '' ''

für Website-Design '', verwenden Tabellen nur für tabellarische Daten, auch zu verwenden versuchen, CSS anstelle von Inline-Styling, wie ich mit Ihrem Körper-Tag sehen Sie das tun, von CSS

body{ 
margin:0; 
} 

Vielleicht einige Artikel wie diese lesen können Ihre Fähigkeiten verbessern:

https://stackoverflow.com/questions/72394/what-should-a-developer-know-before-building-a-public-web-site

oder

http://developer.yahoo.com/performance/rules.html

1

Vielleicht haben Sie, Markup-Fehler, die IE-Rückfall-Algorithmus erfordert durch das gesamte Dokument zu bekommen vor dem Training, was falsch ist.

Sicherlich haben Sie ein ungutes Mix aus XHTML-Syntax (/> und xmlns) mit dem alten Schule HTML (wirklich alte Schule bekommen: die Körper Marge Attribute nicht, da Netscape 3 und sind recht ungültig sogar in benötigt worden "Übergangs" HTML4). Und die System-ID im Doctype verweist auf eine unnötig lange datierte Version der DTD. Vielleicht gibt es mehr Probleme.

Stellen Sie zuerst sicher, dass Ihr Code the validator übergibt, um sicherzustellen, dass Markup-Fehler nicht die Schuld sind.

Setzen Sie dann für Tabellen lieber den Stil table-layout: fixed auf sie, mit expliziten Spaltenbreiten in der ersten Zeile der Zellen oder auf <col> Elemente.Dies ermöglicht dem Browser, die Tabelle korrekt zu formatieren, ohne sich um den Inhalt der Tabelle zu kümmern, der sich auf die Breiten auswirkt, damit Sie schneller und stabiler rendern können.

(Obwohl, wenn Sie immer noch für Tabellen-Layout sollten Sie wahrscheinlich beginnen bei CSS-Layout suchen.)

+0

+1 macht Tabelle Spaghetti W3C gültig beschleunigt es schon * massiv * in meiner Erfahrung. –

0

Es gibt keinen Königsweg, dies zu tun, aber als Faustregel können Sie jede Rendering-Engine helfen indem es so explizit wie möglich ist.

Zum Beispiel: Wenn Ihre Tabellen Spalten mit automatischer Größenanpassung haben, lädt Internet Explorer alle Zellen, um das tatsächliche Tabellenlayout zu ermitteln, bevor alles angezeigt wird.

Sie können dieses Problem umgehen, indem Sie explizit alle Spaltenbreiten festlegen.

Das gleiche gilt für Bilder. Wenn Sie können, fügen Sie allen img-Elementen Informationen zur Breite und Höhe hinzu, damit die Rendering-Engine das Bild nicht lädt, um die Abmessungen des Elements img zu bestimmen.

Obwohl Sie eine schnellere Seitenladung in Internet Explorer wünschen, versuchen Sie, die allgemeinen Engpässe Ihrer Seite mithilfe der YSlow Firefox addon zu ermitteln. Es ist durchaus möglich, dass ein (unentdecktes) Problem den Internet Explorer wesentlich stärker beeinflusst als Firefox.

0

Sie können CNAMEs (DNS-Aliase) verwenden, um Ihre Bilder auf mehrere Hostnamen aufzuteilen.
yahoo

Verwandte Themen