Renderingzeit von Tabellen
David
- html
0 Vinzenz Mai0 David0 Vinzenz Mai0 David
Hallo zusammen,
ich habe mal eine Frage bezüglich der Optimierung der Renderingzeit von Tabellen.
In meiner Anwendung kann es vorkommen, dass ich sehr große Tabellen anzeigen muss. Diese können mitunter 10 Spalten und mehrere Tausend Zeilen haben. Es dauert jedoch mit unter ein paar Minuten bis die Tabelle angezeigt wird. Dabei scheint die meiste Zeit beim Rendern verloren zu gehen; der Server antwortet bereits nach wenigen Sekunden mit dem kompletten Dokument.
Ich vermute dass es einfach daran liegt, dass die Rendering-Engine nicht weiß wie breit/hoch sie die Tabelle machen soll und daher nicht mit der Anzeige beginnt. Kann das sein?
Als Lösung würde mir einfallen die große Tabelle in mehrere kleinere mit jeweils nur einigen Hundert Zeilen zu zerteilen und zu versuchen, die Spalten- und Tabellenbreite sowie Höhe fest vorzugeben. Oder habt ihr andere Tipps, wie man derartig große Tabellen performanter darstellen kann?
Schon mal vielen Dank für jeden Hinweis und Grüße,
David
Hallo,
In meiner Anwendung kann es vorkommen, dass ich sehr große Tabellen anzeigen muss. Diese können mitunter 10 Spalten und mehrere Tausend Zeilen haben. Es dauert jedoch mit unter ein paar Minuten bis die Tabelle angezeigt wird. Dabei scheint die meiste Zeit beim Rendern verloren zu gehen; der Server antwortet bereits nach wenigen Sekunden mit dem kompletten Dokument.
Sag dem Browser, wie das Layout der Tabelle aussieht:
table-layout: fixed;
Alle Spalten benötigen feste Breitenangaben. Nutze gegebenenfalls das col-Element.
Freundliche Grüße
Vinzenz
Hallo Vinzenz,
Sag dem Browser, wie das Layout der Tabelle aussieht:
Alle Spalten benötigen feste Breitenangaben. Nutze gegebenenfalls das col-Element.
Beides habe ich eingebaut und es hat geholfen. Danach ging der Aufbau fließend, dh der Browser hat ziemlich direkt angefangen die Tabelle auszugeben und nach und nach die restlichen Zeilen ausgegeben.
Doch ein Reload verkraftet der Firefox nicht wirklich.. Er röchelt mit 1,9GB virtuellem und 500MB physikalischem Speicher extremst langsam vor sich hin :/ Das ist aber wohl eine Stelle an der man nicht mehr wirklich was drehen kann da es einfach zu viele Daten sind..
Danke & Grüße,
David
Hallo David,
Sag dem Browser, wie das Layout der Tabelle aussieht:
Alle Spalten benötigen feste Breitenangaben. Nutze gegebenenfalls das col-Element.
Beides habe ich eingebaut und es hat geholfen. Danach ging der Aufbau fließend, dh der Browser hat ziemlich direkt angefangen die Tabelle auszugeben und nach und nach die restlichen Zeilen ausgegeben.
das ist schon mal gut.
Doch ein Reload verkraftet der Firefox nicht wirklich.. Er röchelt mit 1,9GB virtuellem und 500MB physikalischem Speicher extremst langsam vor sich hin :/ Das ist aber wohl eine Stelle an der man nicht mehr wirklich was drehen kann da es einfach zu viele Daten sind..
Eine Idee: Verwendest Du gekachelte Hintergrundbilder? Wenn ja, weg damit.
Freundliche Grüße
Vinzenz
Hallo Vinzenz,
Eine Idee: Verwendest Du gekachelte Hintergrundbilder? Wenn ja, weg damit.
Nein, die Seite hat nur eine Hintergrundfarbe und im Menü befinden sich ein paar Bilder (per CSS gesetzt). Die Tabelle selbst stelt nur Text dar, der zeilenweise per CSS-Klassen formatiert ist; Bilder kommen darin weder als Inhalt noch als HG vor.
Grüße,
David
Hallo David,
Eine Idee: Verwendest Du gekachelte Hintergrundbilder? Wenn ja, weg damit.
Nein, die Seite hat nur eine Hintergrundfarbe
dann bleibt Dir kaum was anderes übrig, als die Reload-Schaltfläche nicht zu betätigen :-)
Freundliche Grüße
Vinzenz