Encountering an issue in IE7: When z-index is not set and hasLayout is true, a positioned element gets a stacking context assigned. The width and height of .sbHolder serve as hasLayout triggers. Consequently, the second .sbHolder appears on top.
IE7 modifies your CSS rule to:
.sbHolder {
position: relative;
width: 130px;
height: 30px;
display: block;
margin-bottom: 20px;
z-index: 0; /* ! */
}
This disrupts your intention to raise the z-index of .sbOptions due to it being affected by the inconsistent stacking context of .sbHolder.
I have devised a workaround for IE version 7 and below where only one .sbOptions dropdown is displayed at a time. Does this solution meet expectations? Let's hope so!
Give it a try: http://jsfiddle.net/HRubx/
The erratic stacking context is now generated when necessary:
li:hover {
position: relative;
}