Because iWeb is writing a lot of redundant crap into the code, and you also said the code was edited afterwards so there might be a source of errors, too. But I won’t discuss the coding practices of iWeb with you. Valid code is the first step to fixing display issues across browsers. Make it valid first and then we can talk about further issues if applicable.
Donít click this link!