Sai, mi stupisce che ti funzioni in Explorer...
Regola Fondamentale dei CSS:
Quando specifici un valore di posizionamento, grandezza, margini, bordi o spazio interno devi SEMPRE mettere l'unità di misura.

.d1 { position: absolute;
top:41;
left:210;
z-index:5;
color:black;
width:400;
heigth: 20;
clip:rect(0,400,21,0);
background-color:red;
border-width:1;
border-style:solid;
}

Di questa roba firefox interpreta:

.d1 {
background-color:red;
border-style:solid;
color:black;
position:absolute;
z-index:5;
}

Perchè top, left, width, height, border-width non hanno l'indicazione dell'unità di misura (per esempio Pixel, top:41px

È strano, perché ero convinto che anche Explorer 6 facesse attenzione a questo.