With an image in the top left corner, this page displays the same in IE6/7 and FF:

http://www.simobile.com/hansen/hansen.html

but when Flash of identical dimensions replaces the image, it works in IE6/7 but I get a gap around Flash in FF:

http://www.simobile.com/hansen/hansen-bad-flash.html

I've tested on Windows XP/Vista, and I'm using Flash CS3 to generate AS2 content for Flash Player 9.

I've searched over an hour across the web for a solution, and done all sorts of fiddling with CSS properties and removing whitespace but no joy.

Does anybody have any advice?


Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>My Hansen</title>
<style type="text/css"> 
<!-- 



object { 
	display:inline; 
	margin: 0px;
	padding: 0px;
} 

#header img
{
	display:inline;
}



body  {
	font: 100% Verdana, Arial, Helvetica, sans-serif;
	background: #666666;
	margin: 0px; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */
	padding: 0px;
	text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
	color: #000000;
	background-image: url(bg_img.jpg);
}
.twoColFixLtHdr #container {
	width: 720px;
	margin: 20px auto; /* the auto margins (in conjunction with a width) center the page */
	border: 1px;
	text-align: left; /* this overrides the text-align: center on the body element. */
	border-style: solid;
	background-color: #FFCC00;
} 
.twoColFixLtHdr #header {
	background: #DDDDDD;
	padding: 0px 0px 0px 0px;  /* this padding matches the left alignment of the elements in the divs that appear beneath it. If an image is used in the #header instead of text, you may want to remove the padding. */
} 
.twoColFixLtHdr #header h1 {
	margin: 0; /* zeroing the margin of the last element in the #header div will avoid margin collapse - an unexplainable space between divs. If the div has a border around it, this is not necessary as that also avoids the margin collapse */
	padding: 10px 0; /* using padding instead of margin will allow you to keep the element away from the edges of the div */
}
.twoColFixLtHdr #sidebar1 {
	float: left; /* since this element is floated, a width must be given */
	width: 200px; /* the background color will be displayed for the length of the content in the column, but no further */
	padding: 0px;
	margin: 0px;
	background-color: #FFFFCC;
}
.twoColFixLtHdr #mainContent {
	margin: 0px 0px 0px 200px; /* the left margin on this div element creates the column down the left side of the page - no matter how much content the sidebar1 div contains, the column space will remain. You can remove this margin if you want the #mainContent div's text to fill the #sidebar1 space when the content in #sidebar1 ends. */
	padding: 0px 30px 0px 30px; /* remember that padding is the space inside the div box and margin is the space outside the div box */
	background-color: #acc4e8;
} 
.twoColFixLtHdr #footer { 
	padding: 0px 0px 0px 0px; /* this padding matches the left alignment of the elements in the divs that appear above it. */
	background:#DDDDDD; 
} 
.twoColFixLtHdr #footer p {
	margin: 0px; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */
	padding: 0px; /* padding on this element will create space, just as the the margin would have, without the margin collapse issue */
}
.fltrt { /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
	float: right;
	margin-left: 8px;
}
.fltlft { /* this class can be used to float an element left in your page */
	float: left;
	margin-right: 8px;
}
.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}
--> 
</style><!--[if IE 5]>
<style type="text/css"> 
/* place css box model fixes for IE 5* in this conditional comment */
.twoColFixLtHdr #sidebar1 { width: 230px; }
</style>
<![endif]--><!--[if IE]>
<style type="text/css"> 
/* place css fixes for all versions of IE in this conditional comment */
.twoColFixLtHdr #sidebar1 { padding-top: 0px; }
.twoColFixLtHdr #mainContent { zoom: 0; }
/* the above proprietary zoom property gives IE the hasLayout it needs to avoid several bugs */
</style>
<![endif]-->
<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
</head>

<body class="twoColFixLtHdr">

<div id="container"><div id="header">
  <script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','200','height','120','title','flashstuff','src','header','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movie','header' ); //end AC code
</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="200" height="120" title="flashstuff">
    <param name="movie" value="header.swf">
    <param name="quality" value="high">
    <embed src="header.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="200" height="120"></embed>
  </object>
  </noscript><img src="slogan_anim.gif" alt="slogan" width="320" height="120" hspace="0" vspace="0"><img src="top_right.jpg" alt="topright" width="200" height="120" hspace="0" vspace="0"><!-- h1>Header</h1 --><!-- end #header --></div>
<div id="sidebar1">sidebar-start<h3>Sidebar1 Content</h3><p>The background color on this div will only show for the length of the content. If you'd like a dividing line instead, place a border on the left side of the #mainContent div if it will always contain more content. </p>sidebar-end<!-- end #sidebar1 --></div><div id="mainContent">maincontent-start<h1> Main Content </h1><p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam,  justo convallis luctus rutrum, erat nulla fermentum diam, at nonummy quam  ante ac quam. Maecenas urna purus, fermentum id, molestie in, commodo  porttitor, felis. Nam blandit quam ut lacus. Quisque ornare risus quis  ligula. Phasellus tristique purus a augue condimentum adipiscing. Aenean  sagittis. Etiam leo pede, rhoncus venenatis, tristique in, vulputate at,  odio. Donec et ipsum et sapien vehicula nonummy. Suspendisse potenti. Fusce  varius urna id quam. Sed neque mi, varius eget, tincidunt nec, suscipit id,  libero.</p>maincontent-end<!-- end #mainContent --></div><!-- This clearing element should immediately follow the #mainContent div in order to force the #container div to contain all child floats --><br class="clearfloat" />
  <div id="footer"><img src="bottom_left.jpg" alt="bottomleft" width="200" height="120"><img src="bottom_wide.jpg" alt="bottomwide" width="520" height="120"><!-- end #footer --></div>
<!-- end #container --></div>
</body>
</html>