Simple answer:
Firefox reads HTML as if it was valid or real HTML
IE reads pages as if they were made with completely bogus HTML
Which means, you gotta use "correct" HTML when making your pages.
For example, <table height="100"> is NOT a valid HTML attribute, you would just do:
<style>
table.class1 {height: 100px;}
</style>
......
<table class="class1"></table>
and, sometimes, when you do use correct HTML, IE doesn't read it correctly, but Firefox does, plus, Firefox doesn't always handle %'s in the width and height attributes correctly, so you just gotta keep trying different ways untill you get a page that runs good in both browsers.
(please exuse my poor grammer and punctuation skills, I'm a 16 year old in Tennessee)