Hallo,
Hallo.
Und nun aber zum Grund für meinen Jubelschrei: Aufmerksames mitlesen Im Forum hat mir die Lösung für Operas seltsames Verhalten im Zusammenhang mit den CSS gebracht. In diesem Thread [pref:t=59869&m=336564] hat mir Axel Richter unwissentlich die Lösung vermittelt. ;-)
Unverhofft kommt oft ... ;-)
Jau, gelle?
Nun werden die Links auch in Opera 6.04 korrekt formatiert [display:block;] angezeigt und die Verschiebung bei den Untermenüs ist nur mehr marginal, so ein bis zwei Pixel. Könntest du das überprüfen, ob es im Opera 7.2 ebenfalls Besserung gebracht hat?
Hier muss ich dich leider enttäuschen, eine Verbesserung kann ich nicht erkennen. Allerdings fiel die bisherige Verschiebung auch nur deshalb auf, weil die einzelnen Elemente jeweils sehr klein sind und man folglich genau hinsehen muss.
Bist du dir sicher, daß dein Cache leer war? Ich musste bei meinem auch erst zweimal aktualisieren, bevor er die Seite korrekt anzeigte. (Strg + aktualisieren)
Man erkennt also nach wie vor einen 1px "breiten" Spalt zwischen den Rahmen des Haupt- und der Untermenüs
Der ist gewollt, einfach, um gerinfügige Unterschiede zu vertuschen.
sowie eine 3px hohe Verschiebung beim obersten Untermenü, die bei jedem folgenden Untermenü um 2px anwächst. Und je größer der Rahmen um das Untermenü ist, desto größer ist auch ein weißer Rand innerhalb des Rahmens unterhalb der Menüeinträge.
Das hört sich an, als ob er die weissen Zwischenräume, die zwischen den Zellen sein sollten (padding:2px;) erst unten addiert und einfügt. Das hatte ich bei meinem 6.04 auch mal, aber ich weiss nicht, warum das nun nicht mehr so dargestellt wird.
Nun muss ich nurmehr rauskriegen, wie ich Opera dazu bewegen kann, die Texte der Links auch "in" der Zellenmitte anzuzeigen und nicht, wie jetzt, am unteren Zellenrand. Ausserden sollte ich schauen, warum er document.getElementById(id).className nicht interpretiert.
Ich weiß nicht, ob du mit "Zellenmitte" die vertikale oder die horizontale meinst, aber vielleicht sprichst du ja von genau dem Punkt, den ich als letzten erwähnt hatte.
Das hat sich inzwischen auch erledigt, das lag daran, daß ich eigentlich sämtliche Formatierungen in die globale Definition übernehmen musste, seither stellt er es korrekt dar. Der Witz daran ist der, daß sich der IE einen Dreck um die globale Definition schert, für den musste ich die relevanten Formatierungen nochmals in die einzelnen Zustände mitübernehmen. :-(
Nochmals: Japadapadu....
Und da ich gerade meckere: Könntest du die Umleitung auf die Fehlerseite ("LEIDER, LEIDER.....") unter [http://faq.united-web.at/] (ohne "index.php") auch für Opera-Nutzer mit eingeschaltetem JavaScript zurückbiegen?
Eigentlich ist das keine Umleitung, das ist eine Vorschaltseite. Erst definierte Browser mit aktiviertem JS werden auf die Index.php weitergeleitet.
Warum das bei dir nicht geshcieht verstehe ich nicht.
In dem Script ist Opera sogar extra definiert.
var browser = navigator.userAgent.toLowerCase();
var av = parseInt(navigator.appVersion);
var an = parseFloat(navigator.appVersion);
var dz = (0);
var moz = ((browser.indexOf('mozilla')!=-1) && (browser.indexOf('compatible')==-1) && (browser.indexOf('spoofer')==-1));
var ie = (browser.indexOf('msie')!=-1);
var op = (browser.indexOf('opera')!=-1);
var nn6 = (moz && (av==5));
var gecko = (browser.indexOf("gecko")!=-1);
var ie5 = (ie && (av==4) && (browser.indexOf("msie 5.0")!=-1));
var ie55 = (ie && (av==4) && (browser.indexOf("msie 5.5")!=-1));
var ie6 = (ie && (av==4) && (browser.indexOf("msie 6.0")!=-1));
var op5 = (op && (av==5));
var op6 = (op && (av==6));
if(dz);
else if(nn6)
url="index.php";
else if(gecko)
url="index.php";
else if(ie6)
url="index.php";
else if(ie55)
url="index.php";
else if(ie5)
url="index.php";
else if(op6)
url="index.php";
else if(op5)
url="index.php";
window.location=url;
Könnte vielleicht daran liegen, daß der 7er nicht explizit definiert wurde. Werde ich mal bei nächster Gelegenheit ändern. Danke für den Hinweis.
Ach was, bei nächster Gelegenheit, ich habs gleich geändert, ist ja nicht soviel Arbeit. Jetzt müsste es mit dem 7er auch gehen. Könntest du mal...? :-)
Auf den ersten Blick habe ich übrigens nichts in deinem CSS-Code gefunden, was ich sofort für die fehlerhafte Darstellung hätte verantwortlich machen können. Ich werde aber bei nächster Gelegenheit noch einmal etwas intensiver suchen.
Aber es ja schon einmal sehr schön, dass der ältere Opera jetzt einwandfrei mit deinem Code klar kommt.
Lieber wär mir der neuere, der ist imho häufiger anzutreffen...
Gruß
Kurt