ERLEDIGT
NEIN
NEIN
ANTWORTEN
2
2
ZUGRIFFE
4329
4329
EMPFEHLEN
-
Hi,
ich weiss nicht genau, ob ich hier im richtigen Forum bin. Ich habe ein Problem mit der CSS Darstellung display: block bei einer Tabelle.
Ich möchte per Javascript eine Tabelle per Klick auf einen Button anzeigen lassen oder auch nicht. Soweit so gut, das Ganze funktioniert auch wunderbar, hier kurz der Code zum Verständnis:
Code :1 2 3 4 5 6 7 8 9 10 11 12
function ToggleDetails (id) { if (document.getElementById("DetailsC_" + id).style.display == 'none') { document.getElementById("DetailsC_" + id).style.display = "block"; document.getElementById("DetailsI_" + id).src = "img/navi/collapse.gif"; document.getElementById("DetailsI_" + id).alt = "Details einklappen"; } else { document.getElementById("DetailsC_" + id).style.display = "none"; document.getElementById("DetailsI_" + id).src = "img/navi/expand.gif"; document.getElementById("DetailsI_" + id).alt = "Details aufklappen"; } }
Die Tabelle wird von Anfang an angezeigt, das funktioniert auch, aber sobald ich sie einklappe und wieder ausklappe wird ja als Style display: block geschrieben. Beim IE funktioniert das auch und sieht normal aus. Nur beim Firefox wird die Tabelle komplett verschoben und nicht auf die ganze 100% Breite gezogen.
Ich hab das Problem soweit eingegrent, dass es nur bei display: block auftritt. Benutze ich display: table geht es beim Firefox wieder, aber beim IE geht das afklappen gar nicht mehr.
Weiss da jemand Rat, wie ich das lösen kann?
Danke im Vorraus!
-
Ein nützlicher Link hierzu scheint mir - trotz der englischen Sprache -
http://www.mozilla.org/docs/web-deve...html#dom_manip
zu sein.
FAZIT: das Attribute style ist z.B. eine IE proprietäre Lösung für das DOM (Document Object Model) - die Seite beschäftigt sich mit einigen Aspekten moderner W3C konformen Umsetzungen desselben.
Warnung : Soll die Seite auch noch mit alten Browsern funktionieren, wird einiges an Entscheidungslogik erforderlich!
-
Hi,
nach dem, was ich hier testen konnte, funktioniert das mit der Eigenschaft "block" nur im IE korrekt.
Opera und Mozilla-Engines interpretieren "table" so, dass die Tabelle beim erneuten Aufklappen
wieder richtig angezeigt wird.
Du könntest das zum Beispiel mit einer Browserweiche lösen.
Eine andere Möglichkeit wäre es, wenn Du Deine gesamte Tabelle in einen DIV-ContainerCode :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
IE = document.all && !window.opera; // IEs DOM = document.getElementById && !IE; // DOM-Browser function ToggleDetails (id) { if (document.getElementById("DetailsC_" + id).style.display == 'none') { [B]document.getElementById("DetailsC_" + id).style.display = (IE) ? "block" : "table";[/B] document.getElementById("DetailsI_" + id).src = "img/navi/collapse.gif"; document.getElementById("DetailsI_" + id).alt = "Details einklappen"; } else { document.getElementById("DetailsC_" + id).style.display = "none"; document.getElementById("DetailsI_" + id).src = "img/navi/expand.gif"; document.getElementById("DetailsI_" + id).alt = "Details aufklappen"; } }
packen würdest. Diesem gibst Du die ID, die bisher die Tabelle hatte. Damit blendest Du
die Tabelle über den Container ein bzw. aus.
Ciao
Quaese
Vielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
----
Der "Fortsetzungsroman" auf www.leuteforum.de
New kind to realize large scalable projects with jQuery: jQuery SDK
Ähnliche Themen
-
Wenn status = 1 aus style display:none display:block machen
Von spikaner im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 16.01.11, 09:04 -
DIV: display: block und none
Von mschlegel im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 17.02.08, 14:26 -
display block / display none ?
Von nordi im Forum Javascript & AjaxAntworten: 0Letzter Beitrag: 09.01.08, 11:43 -
problem in Firefox mit display block
Von luci im Forum HTML & XHTMLAntworten: 15Letzter Beitrag: 27.10.06, 13:07 -
display block und none (Geht im Firefox aber im IE nicht);
Von draig im Forum Javascript & AjaxAntworten: 6Letzter Beitrag: 29.04.06, 23:57





Zitieren

Login





