td22: Tabellenbreite größer als Bildschirm

Beitrag lesen

Hmm, hab inzwischen festgestellt, dass ich wohl irgendwo einen Fehler in meiner Syntax haben muss. Habe jetzt eine ganz simple Tabelle gebaut, und damit funktioniert es (sogar ohne table-layout: fixed;)

So, inzwischen ist das Problem gelöst. Es war kein HTML-Problem, sondern ein JavaScript-Problem. Und zwar hatte ich die Tabelle nach folgendem Prinzip als JavaScript ausgegeben:

  
function start() {  
  document.getElementById("body").innerHTML += "<table><tr>";  
  document.getElementById("body").innerHTML += "<td>Bild01</td>";  
  for (m = 2; m <=  anzahl_bilder; m++) {  
    document.getElementById("body").innerHTML += "<td>Bild" + m + "</td>";  
  }  
  document.getElementById("body").innerHTML += "</tr></table>";  
}  

Opera stellt dabei tatsächlich eine Tabelle dar, in der Bild01 und Bild02 (...) als Zellen enthalten sind. Internet Explorer und Firefox geben erst mal eine Tabelle aus, in der zwar Bild01 enthalten ist, alle anderen Bilder aus der for-Schleife werden dann allerdings außerhalb der Tabelle plaziert.

Dieses Problem konnte ich ganz einfach lösen, indem ich die HTML-Elemente erst in einer Variable zusammengefügt habe und anschließend in einem Schwung ausgeben lasse:

  
function start() {  
  var html = "<table><tr>";  
  html += "<td>Bild01</td>";  
  for (m = 2; m <=  anzahl_bilder; m++) {  
    html += "<td>Bild" + m + "</td>";  
  }  
  html += "</tr></table>";  
  document.getElementById("body").innerHTML += html;  
}