Firefox crashes rendering large html table (20,000+ rows)
try defining the table with a fixed width
<table style='table-layout:fixed'>
This will allow the browser to render the table without it trying to recompute the width on each new row addition.
[UPDATE]
I am not sure what your data looks like but I can do
<table style='table-layout:fixed'><tr><td style="width:150px;"></td><td style="width:150px;"></td><td style="width:150px;"></td><td style="width:150px;"></td><td style="width:150px;"></td></tr><% for (int ix = 0; ix < 30000; ix++) { Response.Write("<tr>"); Response.Write("<td><img src='stickman1.bmp'></td>"); Response.Write("<td>" + RandomString() + "</td>"); Response.Write("<td><img src='stickman2.bmp'></td>"); Response.Write("<td>" + RandomString() + "</td>"); Response.Write("<td><img src='stickman3.bmp'></td>"); Response.Write("<td><a href='#' onclick='blah();'>stick man!</a></td>"); Response.Write("</tr>"); } %> </table>
within Firefox 3.0.11. Although it takes awhile firefox will display it. It consumed 239MB of ram. RandomString() just returns a string of between 0 - 22 characters.
You might want to use pagination to sort that out :) I imagine my poor old laptop would die if Firefox tried to render 20k rows of tables. And it is a core2 with 4gb ram :P
Is it possibly something to do with your data? I just whipped up a simple ASP.NET page that creates a 50k row table and firefox renders it just fine.
protected void Page_Load(object sender, EventArgs e){ StringBuilder sb = new StringBuilder(); sb.Append("<table><tbody>"); for (int i = 0; i < 50000; i++) { sb.Append("<tr><td>My Name</td><td>my@email.com</td></tr>"); } sb.Append("</tbody></table>"); Response.Write(sb.ToString());}