position:absolute in FireFox 1.5.x

Ortwin1st

Mitglied
Hi,

irgendwie funktioniert das CSS-Attribut "position" im FireFox 1.5 nicht richtig. Kann das sein?

Folgender Fall:

Ich erzeuge mit document.createElement("div"); ein Div-Tag und füge es dem Body-Element zu. Diesem weise ich mit className eine Klasse zu, in der das Attribut position:absolute; enthalten ist. Es werden alle Eigenschaften der Klasse übernommen (Hintergrund, Textgröße/farbe etc.) mit Außnahme des position-Attributs. Woran kann das nur liegen?

Der IE realisiert alles wie gewünscht, nur der FF erzeugt das DIV am Ende des Dokuments, wegen fehlendem position-Attribut.

Hat jemand Rat?

Gruß

Ortwin
 
Hi,

grundsätzlich unterstützt Firefox 1.5.x die position:absolute-Eigenschaft.

Für weitere Informationen solltest du hier mal den Quellcode zeigen, damit man der Ursache auf den Grund gehen kann.
 
Das Script sieht so aus:
Code:
function showSub(which)
{
    var newDiv=0;
    var divObj=0;
    var content="";

    // Submenue
    if(which) { 
        newDiv = window.parent.frames['main'].document.createElement("div");
        newDiv.id = which;
        newDiv.className = "subMenu";
        window.parent.frames['main'].document.body.appendChild(newDiv);

        divObj = window.parent.frames['main'].document.getElementById(which);
    }

    content=document.getElementById("sub"+which).value;
    divObj.innerHTML=content;

    divObj.style.position = "absolute"; // macht keinen Unterschied ob Zeile vorhanden oder nicht
    divObj.style.pixelLeft =	228;
    divObj.style.pixelTop =	0;
    divObj.style.pixelWidth =	124;
    divObj.style.pixelHeight =	124;
    divObj.style.zIndex =	5;
	//    divObj.style.filter =	"alpha(opacity=80)"; //+shadow;

    return 1;
}

Und die CSS-Klasse:
Code:
.subMenu {
	position:absolute;
	font-size:10pt;
	color:white;
	font-weight:bold;
	cursor:pointer;
	white-space:pre;
	background:#69F;
	border:solid 1px #808080;
	padding:0px;
	margin:0px;
}

Der Link zur Seite.

Also ich weiß nicht, ob ich gerade versuche das Rad neu zu erfinden. Aber ich möchte halt ein Navigationsmenü haben, dass über mehrere Frames geht. Ich meine ich hätte schon sowas vor vielen Jahren mal gesehen. Ist schon lange her und ich weiß nicht mehr wo und finden tue ich es auch nicht mehr.

In JavaScript sehe ich die einzige Möglichkeit, da PHP usw. ja Serverseitig ausgeführt werden muss...

In Ajax habe ich mich mal heute hineingelesen. Hört sich interessant an, bin aber der Meinung mein gewählter Weg ist einfacher und ich muss mich nicht erst in Ajax hineinarbeiten.
 
Zuletzt bearbeitet:
Ersetz mal

Code:
divObj.style.pixelLeft = 228;
divObj.style.pixelTop =	 0;
divObj.style.pixelWidth = 124;
divObj.style.pixelHeight = 124;
divObj.style.zIndex = 5;
durch

Code:
divObj.style.left = "228px";
divObj.style.top = "0";
divObj.style.width = "124px";
divObj.style.height = "124px";
divObj.style.zIndex = "5";
Siehe hierzu auch die Übersicht der Style-Eigenschaften.
 
Danke. Hab diese "pixeleigenschaften" mal aus einem anderen Projekt genommen, weil ich es dort wegen einer Bequemlichkeit genutzt habe... weiß auch nicht mehr genau warum. Wird schon seinen Grund gehabt haben. ;-)
 

Neue Beiträge

Zurück