I've searched for known bugs / issues and haven't run across this.
I have a div within a table cell that is floated left and has a margin-right of 15px to offset the text that flows around it. Depending on the page, the div might contain a single image, image & text, or multiple images, etc. Both the HTML and CSS validate and it works admirably - even in Netscape 4.7
The fly in the ointment is Opera 7. As the page loads there is a noticable "jump", I presume as the margin is applied. (similar movement occurs in IE if no width is assigned the div) The page has a colored sidebar on the right and after loading a white space approximately the height of the div is visible there and disappears when the page is scrolled.
I've tried padding instead of margin and specifying width to no avail. This isn't fatal and I probably account for most of the site's Opera traffic, but it's one of those things I keep going back to! Is it possible that it's related to the speed or order of Opera's rendering?
I've noticed Opera renders pages as soon as it gets the data, for speed. So a table can be shown at the wrong size until the rest of the page has loaded, then it snaps into position. Is this a case where the display is not updated properly?
Yes, elements can change sizes upon rendering if the is no explicit size set for the element. Like if you have a 200 x 200 image floated left of text. If there is no size stated for the image, the text will take up all the space until the image loads and then shift to it's final position.
So, I think the answer is to set sizes on whatever is shifting around. I could be wrong though ;0