IE 6/7 List DOM 06.18.2007

Here's another somewhat annoying thing about IE6/7. Suppose you have the following code:

<ul id="main">
    <li>Item 1</li>
    <li id="blah">Item 2</li>
    <ul id="sub">
           <li>Sub item 1</li>
    </ul>
</ul>

In Firefox, the DOM for the list will correctly have #sub as a child of #main. However, in IE6 and IE7, the browser tries to be "smart", and puts #sub in as a child of #blah, so that the order then becomes #main > #blah > #sub.

(The reason I'm not putting #sub inside of #blah in the code is that due to a third-party limitation of the list-output parts of the code base, this is as close as it gets.)

Looks like it's going to be lots of IE-specific stylesheet work.