Nerog: Beispiel für notwendige Browserweiche gesucht

Beitrag lesen

Hi,

Opera hat des Öfteren Probleme mit fix (oder absolut?) positionierten Elementen, deren top- und bottom-Eigenschaft einen Wert abweichend von auto besitzt. Die Höhe des Elements wird bei ausschließlicher Veränderung der Viewporthöhe unter Umständen[1] nicht angepasst.

Hättest du da vielleicht einen Testcase, der den Fehler reproduziert?

Ich hab nochmal nachgesehen, ob ich diese problematischen Konstellationen wiederfinde und habe nochmal getestet. Viele Probleme scheinen im neusten Opera behoben zu sein – unter anderm das top/bottom-Problem (jedenfalls in einfachen Zusammenhängen).

Trotzdem habe ich hier mal einen Fall ans Ende meines Postings gehängt, bei dem Opera (Windows) die Höhe nicht richtig anpasst, wenn man das Browserfenster ausschließlich in der Höhe verändert (es also beispielsweise mit der Maus nur am oberen/unteren Fensterrahmen „anfasst“).

Und wie kann man den Fehler mittels JavaScript umgehen?

Im onresize-Event-Handler lässt sich per JavaScript die Höhe des Elements berechnen und diese manuell setzen. Eventuell würde auch eine leichte Veränderung irgendeiner CSS-Eigenschaft den Browser zwingen neu (und richtig) zu rendern.

Gruß,
Nerog

PS: Testcase:

<?xml version="1.0" encoding="utf-8"?>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">  
 <head>  
  <title>Testcase</title>  
  <style type="text/css">  
[code lang=css]   @media screen, projection  
   {  
    html  
    {  
     display:table;  
     height:100%;  
     width:100%;  
    }  
    body  
    {  
     display:table-cell;  
     height:100%;  
     border:1px solid red;  
    }  
   }

</style>
 </head>
 <body>
 </body>
</html>
[/code]