Axel Richter: Mit JS/DOM erzeugte Tabellenzelle auf width=50% setzten

Beitrag lesen

Hallo,

wie erreiche ich, dass eine mit:
var td = document.createElement("td");
erzeugte Tabellenzelle genau die Hälfte der Tabellenbreite einnimmt?

Ich habe der td eine Klasse gegeben und per CSS auf width:50% setzten
wollen.

Die Zelle nimmt aber (solange sie leer ist) gar keine Breite ein.

Das kann ich so nicht bestätigen:

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"  
        "http://www.w3.org/TR/html4/strict.dtd">  
<html>  
<head>  
<title>Beschreibung der Seite</title>  
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">  
<style type="text/css">  
table { width:300px; }  
td.halbeBreite { width:50%; }  
</style>  
</head>  
<body>  
<table border="1">  
<tr>  
 <td>Zelle 1.1</td>  
 <td>Zelle 1.2</td>  
</tr>  
</table>  
  
<script type="text/javascript">  
<!--  
var td = document.createElement("td");  
td.className="halbeBreite";  
document.getElementsByTagName("table")[0].getElementsByTagName("tr")[0].appendChild(td);  
//-->  
</script>  
</body>  
</html>  

Die Ursache für das von Dir beobachtete Verhalten muss an etwas anderem liegen.

viele Grüße

Axel