Der Martin: Display='Block' für A-Tag bei IE

Beitrag lesen

Hallo,

document.getElementById('module-lastcomments').getElementsByTagName('ul')[0].getElementsByTagName('li')[3].childNodes[4].style.display='block';

bist du sicher, dass du mit childNodes[4] auch den Knoten erwischt hast, den du eigentlich meinst? Beachte, dass der IE Whitespaces (also z.B. Zeilenumbrüche) als Textknoten mitzählt.
Wenn du also meinst, dass dein ausgewähltes li-Element mehrere Links enthält und du willst einen davon adressieren, dann ist es ratsam, hier _nochmal_ mit getElementsByTagName() durch die a-Elemente zu laufen. Auch wenn das den gesamten Ausdruck noch wuchtiger aussehen lässt.

In der hier gezeigten Funktion, habe ich das für den IE vorübergehend  anders gelöst: ich füge mit insertBefore ein BR vor dem betreffenden A-Tag ein.

Immerhin ein praxistauglicher Workaround. ;-)

Im msdn (http://msdn2.microsoft.com/en-us/library/ms530751.aspx) habe ich nun gelesen, ...

Um Himmels Willen, was ist denn das für eine kaputte Seite! Die Elemente überlappen sich teilweise, und um zu scrollen, muss ich den Text auf der Seite mit der Maus markieren - einen Scrollbalken gibt's nämlich nicht. Dass ausgerechnet die Microsoft-Seiten nicht einmal im IE anständig dargestellt werden, ist schon erstaunlich.

Nein, das hast du falsch verstanden. Die Liste, die dort aufgeführt ist, beinhaltet Elemente für die die Eigenschaft a) nur lesbar ist und b) nicht die Vorgabe inline besitzt.

Auch das ist nicht ganz richtig. Da steht erstens, dass die display-Eigenschaft bei allen Objekten außer currentStyle lesbar und schreibbar ist. Darunter steht außerdem eine Liste von HTML-Elementen, bei denen der Defaultwert für display NICHT "inline" ist. Das a-Element ist in der Liste nicht aufgeführt, also IST dessen Defaultwert "inline".

Das habe ich jetzt nicht verstanden.
Die Eigenschaft DISPLAY ist bei dem A-Tag nur lesbar?

Nein, das sit ein Missverständnis.

Englische Dokumente stellen für mich derzeit auch noch eine gewisse Hürde dar.

Dann solltest du an deinen Englischkenntnissen und -fertigkeiten arbeiten. Auch wenn ein großer Teil der Spezifikationen und Informationen in Deutsch verfügbar ist, so ist Englisch doch _DIE_ Fachsprache der Branche, und die meisten IT-Dokumente werden in Englisch verfasst. Die deutschen Übersetzungen sind oft unvollständig, veraltet, oder falsch übersetzt.
Ich persönlich bevorzuge immer die englische Fassung.

Zum Ende der besagten Seite hin finden sich Beispiele, hast du die schon ausprobiert?
Sorry, aber die sind für mein Problem nicht wirklich hilfreich.

Das würde ich auch so sehen.

So long,
 Martin

--
Success should be measured not so much by the position that one has reached in life,
but by the obstacles one has overcome while trying to succeed.