penders - 10:40 pm on Jan 27, 2012 (gmt 0)
Not everything needs to be a DIV. A list of links (ie. a menu) is often marked up as exactly that, an unordered list. And with HTML 5 you have the menu element (although not sure about browser support).
Assuming you are wanting your menu items evenly spaced... I'm still not sure whether this is possible to do in CSS alone that will work cross-browser?! In the latest browsers maybe, but IE7 and earlier I don't think so? (Please prove me wrong someone.) Either way, I think you need to look at the display:table, table-row and table-cell properties - to effectively display your elements like a table!?
Here's an old thread from 2005(!) that discusses something similar:
Fill width using css - Use CSS to fill 100% scalable page width [webmasterworld.com]
And a more recent one from the end of 2010 that still suggests that "...table properties which have even less support...":
getting horizontal list menu to expand/contract with browser width. [webmasterworld.com]