Gotta luv NS 4.x. There's a pretty simple work-around.
First, you need two style sheets that are imported from .css files. One you import thru the old <link> tag:
<link rel="stylesheet" type="text/css" href="legacy.css" />
That you would place in the HEAD of the HTML document. Then erase all the styles you created inside the <style> tags, but keep the style tags. Just add this line of code, a complete example is below:
<style type="text/css" media="screen">
Of course you can change the .css filenames to anything you want.
This is where you place the styles for formatting the DIVs how you want them.
Simply omit all of the position properties in default.css. The only thing that NS4 really supports correctly is text, font, some list, and some background properties in CSS. Here's how the trick works.
Newer web browsers (IE 5.0 - 6.0 PC, IE 4.5 - 5 MAC, NS 6 - 7, Mozilla, Opera 5 - 7) recognize the @import method for importing an external style sheet. NS 4.x (the troublesome browser in question) and IE 4.0 for the PC and MAC do not recognize @import. But they do recognize importing external style sheets thru the LINK tag.
Coincidently, fourth generation web browsers do not support enough of CSS 2 to correctly render the page as you want it. So what you've just done is "hide" the advanced CSS layout from mostly incompatible browsers.
If you're interested in xhtml and CSS layouts, check out http://www.alistapart.com/. It's geared to those who already know CSS. It answers specific questions about xhtml and css layouts. For a complete reference for CSS, visit http://www.w3schools.com/.
Hope this helps. And by the way, you will soon find that Internet Explorer will be the bain of your existence