RSS

Incremental rendering of a table

04 Jun

Working on an editable tables interface wanted to check how actually incremental rendering is working for different browsers. Here are the results of my small research.

According to HTML4 specification:

In order for a user agent to format a table in one pass, authors must tell the user agent:

  • The number of columns in the table.
  • The width of these columns.

And CSS2.1 tells the following about fixed table layout:

In this manner, the user agent can begin to lay out the table once the entire first row has been received.

Based on the above I summed the results into the two tables – tests in quirks mode and in standards compliance mode.

Quirks mode
Tests IE8 IE7 IE6 Firefox Opera Safari
Table without COLs and width specified no no no yes yes yes*
Table with first row TDs width yes* yes* yes* yes yes yes*
Table with COLs but without width specified yes* yes* yes* yes yes yes*
Table with COLs width specified yes* yes* yes* yes yes yes*
table-layout:fixed property yes* yes* yes* yes yes yes*
Standards compliance mode
Tests IE8 IE7 IE6 Firefox Opera Safari
Table without COLs and width specified yes no no yes yes yes*
Table with first row TDs width yes yes* yes* yes yes yes*
Table with COLs but without width specified yes yes* yes* yes yes yes*
Table with COLs width specified yes yes* yes* yes yes yes*
table-layout:fixed property yes yes* yes* yes yes yes*

* – IE joins 10 chunks and then render them.

* – Safari always joins 15 chunks before rendering them.

All of the above applies only to the table rendering. Checking rendering of normal HTML showed that every brower exapt Safari worked in the expected way and rendered chunk by chunk. Safari however still combined 15 chunks into one.

So as we can see crossbrowser incremental rendering of a table can be riched by just specifying the number of columns. New IE8 like Firefox and Opera doesn’t combine chunks even if the columns number and widths are not specified. Though Safari always does.

Advertisements
 
Leave a comment

Posted by on June 4, 2008 in misc

 

Tags: ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: