EKKi: Zusammenhang DOM/CSS/HTML

Beitrag lesen

Mahlzeit Tom Bombadil,

Ich habe ein HTML Element, dass ich mittels style definiere, so:

<iframe src= "EMPTY_IFRAME.htm" name="COLUMNS" id="COLUMNS" frameborder="0"  scrollinge=no style="width=290;height=240">IFRAME
</iframe>

  
Nein, so nicht. Eher <http://de.selfhtml.org/css/eigenschaften/positionierung.htm#width@title=so>.  
  
  

> Jetzt versuche ich die Ausmaße wieder auszulese, und zwar mit JS und der DOM-Struktur:  
>   
> ~~~javascript
  

>   alert(document.getElementById("COLUMNS").width);  
> 

Hier wird nichst ausgegeben.

Natürlich nicht. Einerseits befindet sich die Eigenschaft "width" innerhalb des http://de.selfhtml.org/javascript/objekte/style.htm@title=style-Objektes, andererseits kann natürlich nur etwas ausgelesen werden, wenn auch korrekt ein Wert festgelegt wurde (s.o.).

Wenn ich in den iframe-TAG noch ein "HTML-width" hinzufüge, dann klappts. Aber wenn nicht, dann wird das aus dem CSS-style befehl nicht übernommen.

Doch, sobald Du es richtig machst, klappt's. Und Breitenangaben mittels HTML-Attributen solltest Du nicht verwenden: HTML stellt nur die Struktur dar, für das Layout ist CSS zuständig.

Das wäre auch meine 2. Frage: Wenn ich das outerHTML-Attribut eines DOM-Objektes verändere z.B.

Ein DOM-Objekt besitzt kein http://de.selfhtml.org/javascript/objekte/all.htm#outer_html@title=outerHTML-Attribut - dies ist Microsoft-Syntax und sollte nicht verwendet werden, wenn man standardkonforme Anwendungen schreiben will.

<div name="div1"></div>


>   
> wird mit  
>   
> ~~~html
  

>   document.getElementById("div1").outerHTML = "<div name="div2"></div>"  
> 

Warum so kompliziert? Dafür hat doch jedes benannte Element eine http://de.selfhtml.org/javascript/objekte/elements.htm#name@title=name-Eigenschaft ... abgesehen davon sollte jeder vernünftige Javascript-Parser bei einem Code auf die Schnauze fliegen - schau Dir mal die Anführungszeichen genauer an. :-)

MfG,
EKKi

--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|