Ciao,
nel tuo codice ci sono alcune cose che non vanno tanto bene.
Anche se molti browser cercano di interpretare al meglio le varie regole css e tutto il markup, altri hanno bisogno di capire esattamente come devono comportarsi a seconda del tipo di documento che si trovano davanti. Per questo motivo è sempre raccomandato inserire la DTD cioè specificare un doctype nel proprio documento html.
La proprietà overflow, ad esempio, è mal gestita da IE se non si è specificato il doctype
Seconda cosa, anche se molti browser cercano di interpretare al meglio le unità di misura che sono state omesse, è sempre raccomandato indicare l'unità di misura per tutti i valori in cui sono richieste. E' vero che a seconda della DTD (e a seconda del browser) possono essere omesse tali unità di misura così che il browser stesso applichi automaticamente quelle di default ma, oltre al fatto che questo sia raccomandato dalle specifiche, è sempre buona norma scrivere codice in maniera chiara e possibilmente inequivocabile così da evitare spiacevoli sorprese come nel tuo caso.
Il tuo codice potrebbe quindi essere rivisto in questo modo (in rosso le parti aggiunte):
codice:
<!DOCTYPE html>
<html>
<body style="margin:0">
<div style="position:relative; background-color:#DDD; width:450px; height: 450px; overflow:hidden">
<div style="position:relative; background-color:#000; width:80%; height: 150px; overflow:hidden">
<div style="position:absolute; top:100px; left:50px; right:0px; bottom:0px; overflow:auto; background-color:#F00;">
testo lungo testo lngo
testo lungo testo
lungo testo lngo testo lungo
testo lungo testo lngo
testo lungo testo
lungo testo lngo
testo lungo testo lungo testo lngo
testo lungo testo
lungo testo lngo testo lungo
testo lungo testo lngo
testo lungo testo
lungo testo lngo
testo lungo
</div>
</div>
<div style="position:relative; background-color:#FF0; width:90%; height: 150px; overflow:hidden">
</div>
</div>
</body>
</html>
Dovrebbe funzionare allo stesso modo su tutti i browser (perlomeno su quelli maggiormente diffusi al momento)