Masin Al-Dujaili: Opera-Bug!

Verehrtes Forum,
verehrte Gästinnen und Gäste des Forums,

leider - leider muß ich ein äußerst trauriges und bedauernswertes Ereignis, daß ich so bislang noch nie erlebt habe, berichten, dessen volle Tragweite vermutlich bis in die tiefsten Eingeweide unseres allseits geliebten und geschätzten Browsers geht.

Ja, tatsächlich, es ist so: das von mir vor geraumer Zeit dargelegte Problem mit den nicht wirklich fixierten <div>-Hintergründen http://forum.de.selfhtml.org/archiv/2002/1/2087/#m11822 ist kein Problem der Gecko-Engine, es ist tatsächlich und bedauerlicherweise ein Problem von Opera.

Nachdem ich Bugzilla den vermeintlichen Fehler gemeldet habe, erhielt ich von dort auch innerhalb kürzester Zeit Antwort, die besagte:

Not a bug in Mozilla (same as bug 119518).

Keine fünf Minuten später kam dann diese Nachricht - in meinen Augen zu dem Zeitpunkt noch glatte Verleumdung:

IE (and opera ?) is wrong on this also ...

Opera? Einen Fehler mit dem IE teilen? Das kann nicht sein. Ich beschloß, der Sache endgültig auf den Grund zu gehen und wagte mich tief in die finsteren Katakomben der CSS2-Spezifikationen. Dort fand ich, weswegen ich mich auf diese gefährliche und irreführende Reise begeben habe: Eine E-Mail-Adresse! Der Schlüssel, einen der Weisen vom W3C zu befragen!

Lange wartete ich auf eine Antwort, ein Lebenszeichen, daß meine Nachricht angekommen sei zumindest. Das lange Warten hat sich gelohnt, fiel die Antwort des Weisen doch so aus:

(I can read German :-) )

[*]

In short: Mozilla is right and Opera is wrong.

Neeeiiinnn! Es konnte nicht sein, es durfte nicht sein, aber wer bin ich schon, daß ich wagte, an den Worten eines der Weisen zu zweifeln?

The fixed background exists for two reasons:

  1. To create a background for the root element (or the BODY element) that stays visible no matter how you scroll the page. (This would typically be used with a simgle, non-repeated image, such as a watermark or logo.)
  2. To allow backgrounds of different elements to be aligned when you don't know the size of those elements. (This is most useful with tiled images.)
    To see a good example of (2), look at Eric Meyer's "complexspiral"[1] page, which has a several elements with backgrounds that together form a single image. Thanks to 'fixed' backgrounds, the various images line up, no matter what the position or size of the elements.
    Your fixed background image is placed in the middle of the window, and thus, if the div element is not in the middle, you won't see the background.
    The confusion is caused by the word 'fixed' being used in two different properties ('position' and 'background') but with slightly different means of setting the position, as you already noticed. You cannot set the background relative to the right edge.
    The bug in Opera that caused the background of fixed elements to scroll when you scroll the page is already fixed in some releases of Opera. The beta version for Linux[**] no longer exhibits that problem and your "Gecko Version" displays fine in that version.
    Your workaround with an extra image element an a z-index will probably work, but the real solution is of course for Opera to fix the bug. (And Windows IE, of course, because they do fixed backgrounds, but not fixed elements yet :-( )
    [1] http://www.meyerweb.com/eric/css/edge/complexspiral/demo.html (as you can see, it doesn't work in Opera :-( )

Jedenfalls ist für mich die Browserwelt heute ein kleines Stück farbloser geworden, und ich werde erst wieder frohgemut mich meinem HTML-Handwerk widmen können, wenn die Version 6.1 dieses Problem behebt.

Grüße von mir (niedergeschmettert)

Masin Al-Dujaili

[*] Sowas sollte man vorher wissen! Grmpf! :)
[**] Jaja, mit Linux wär das nicht passiert. Leider konnte ich das bislang nicht testen, da ich die entsprechende Opera-Version nicht installiert habe. Tatsächlich habe ich gerade auch kein Linux zur Hand. Das liegt hauptsächlich daran, daß ich mich nicht so recht für eine Distribution entscheiden kann. Ich würde ja gerne die Debian nehmen, aber da RPMs einspielen? Soll schwierig sein. SuSE hat natürlich den großen Vorteil, daß es viele Menschen in Deutschland gibt, auf deren Erfahrung ich im Notfall zurückgreifen könnte, andererseits raten mir Freunde auch davon ab und empfehlen mir eher RedHat, von wegen besserer Programmzusammenstellung, -stabilität, etc. Außerdem kann ich das Zocken einfach nicht lassen. Wobei es mich schon interessieren würde Master of Orion 2 unter Linux zum Laufen zu kriegen ... läuft im Netzwerk ja vielleicht dann sogar schneller als unter Windows :)

  1. Moin!

    Jedenfalls ist für mich die Browserwelt heute ein kleines Stück farbloser geworden, und ich werde erst wieder frohgemut mich meinem HTML-Handwerk widmen können, wenn die Version 6.1 dieses Problem behebt.

    Ich finde, das ComplexSpiral-Beispiel sieht auch in Opera garnicht so übel aus. Nun gut, daß die Links ihr Hintergrundbild verlieren, ist dumm gelaufen, aber immerhin hat Opera gegenüber IE handfeste Vorteile: Er kann position:fixed. Und hat viele andere Usability Features, die das Leben einfacher machen. Mozilla hat in dieser Hinsicht aber schon ziemlich gut aufgeholt und teilweise überholt (wenn ich mir z.B. das seletive Abschalten von Javascript ansehe).

    Grüße von mir (niedergeschmettert)

    Nicht traurig sein. Immerhin hast du ein sehr interessantes und aufschlußreiches Posting geschrieben. Und die Welt ist wieder etwas besser geworden. ;)

    - Sven Rautenberg

  2. hi

    The bug in Opera that caused the background of fixed elements to scroll when you scroll the page is already fixed in some releases of Opera. The beta version for Linux[**] no longer exhibits that problem and your "Gecko Version" displays fine in that version.

    gleich mal ansehen - also hier verhält sich Opera 6.0beta1/Linux - im Gegensatz zu konqueror 2.2.2 und Mozilla 0.9.9 _falsch_

    Jedenfalls ist für mich die Browserwelt heute ein kleines Stück farbloser geworden, und ich werde erst wieder frohgemut mich meinem HTML-Handwerk widmen können, wenn die Version 6.1 dieses Problem behebt.

    vielleicht gibt es ja sogar noch Hoffnung für 6.02 oder so :)
    ..einfach mal in der Newsgroup nerven... an selbiger Stelle ergründe ich gerade, wieso die CSS-Beispiele für right: und bottom: in Opera nicht laufen.

    Tatsächlich habe ich gerade auch kein Linux zur Hand. Das liegt hauptsächlich daran, daß ich mich nicht so recht für eine Distribution entscheiden kann. Ich würde ja gerne die Debian nehmen, aber da RPMs einspielen? Soll schwierig sein.

    alien <rpm-Datei> - schon haste 'nen .deb

    gruss Kai