Colspan und Rowspan (HTML) buggt?

2 Antworten

Dein HTML ist schon mal falsch.

1) Es gibt nur einen body und nur einen head und beide dürfen nur Kinder des html-Knoten sein. Das bedeutet für dich, dass der erste (öffnende) body-Tag herausfliegt und die Überschrift vor den öffnenden table-Tag verschoben wird.

2) Innerhalb des head-Tags fehlt noch ein title-Tag. Der gleiche Titel, wie ihn die Überschrift hat, wäre passend.

3) Attributwerte gehören immer in doppelte Anführungszeichen gruppiert. In deiner ersten Zeile nach dem öffnenden tbody-Tag machst du dies öfter nicht.

Zu deiner Aufgabe: Bitte poste diese doch einmal und stelle Code editierbar zur Verfügung.

Zur Erklärung von colspan / rowspan kannst du diesen Artikel heranziehen.

sorry aber was du da machst ist erstmal völliger unsinn .

du hast folgende matrix

<table border="1px">
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
</table>

jedenfals ergibt sich das aus dem ersten colspan und den 2 folgenden feldern , macht bei mir schon mal 4 spalten und nicht 3 .

Dann hast du in der 2 reihe , colspan 3 , aber willst in der ersten dort ein rowspan 2 machen ... das geht schon mal gar nicht, entweder sind es drei dann kann im 3 feld der matrix nicht 2 reihen geben.

wenn du sowas machst , dann mach erstmal das vollständige matrix feld

dann schreibst du deine colspan rein und entfernst die felder die ersetzt werden , dann gerne auch die rowspan , aber nur da wo es auch geht und nicht folgende colspan das unmöglich machen und lösch die rowspan felder

oder du postest ein bild wie es aussehen soll . so jedenfalls machst du den fehler unzwar grundlegend .


SpritemitCodein 
Fragesteller
 10.04.2019, 22:20

Die Formatierung folgt aus der vorherigen Aufgabe. Da steckt kein Schema dahinter, sonder die Formatierung war Vorlage. Ob man das eleganter machen kann? Bestimmt. Ob ich weiß wie? Definitiv nicht. Ich probier mal das was du gesagt hast. Danke.

0
RakonDark  10.04.2019, 22:22
@SpritemitCodein

ohne ein bild weiß ich nicht was es werden soll . un die vorlage ist bestimmt nicht 3 spalten wo eine mit 2 reihen sind , sowas ist nciht möglich , wir sind nciht bei tetris . wenn das nur eine optik werden soll dann macht man das nur mit border left top right bottom .

0
SpritemitCodein 
Fragesteller
 10.04.2019, 22:27
@RakonDark

Also in der Aufgabe vorgegeben war eine komische (und vorgegebene) Formatierung der Zellen. Bis dahin hat es auch reibungslos geklappt.

0
SpritemitCodein 
Fragesteller
 10.04.2019, 22:35
@RakonDark

Ich würde ja gern Zeile für Zeile formatieren. Aber ich weiß wirklich nicht wieso es nicht klappt. Wenn ich nur eine tr-/tr Zeile mache (bspsweise 3 Zellen), dann funktioniert colspan schonmal nicht. Rowspan dann erst recht nicht.

0
RakonDark  10.04.2019, 22:37
@SpritemitCodein

kannst du nicht mal die aufgabe posten , klar geht colspan und rowspan , du musst nur das entfernen was dann zuviel ist in dem bereich . aber ohne aufgabe kann ich nur sagen , du schaffst es einfach nicht . man fängt mit der matrix an und entfernt dann die zellen die man mit colspan bzw rowspan überschreibt . eigentlich ganz einfach .

0
SpritemitCodein 
Fragesteller
 10.04.2019, 22:45
@RakonDark

Würde ich schon gern machen. Aber da das Aufgaben sind die im Endeffekt benotet werden, würde ich mir strafbar machen, wenn ich das Material veröffentliche oder mir die Lösungen hier einhol.

0
RakonDark  10.04.2019, 22:47
@SpritemitCodein

ok, aber eins kann ich dir schon sagen , es geht nur quadrate und rechtecke , tetris objekte gehen nicht . damit meine ich in deinem beispiel das die 2 zeile mindestens in der dritten zeile sein muss , also noch eine dazwischen .

0
RakonDark  10.04.2019, 23:04
@SpritemitCodein

beispiel :

<html>
<head>
<style type="text/css">
table {border:1px;}
td {border: black solid 1px; width:10px; height:10px}
tr {height:10px}}
</style>
</head>
<body>
<table  >
<tr><td colspan=2>*</td><td rowspan=2>*</td><td>*</td></tr>
<tr><!--  <td>*</td> --></tr>
<tr><td colspan=3>*</td><td>*</td></tr>
<tr><td>*</td><td>*</td><td>*</td><td>*</td></tr>
</table>
</body>
</html>

geht nicht wirklich , da die zweite zeile keine zelle enthält (ich hab sie mal auskommentiert) wird das alles nicht richtig

<html>
<head>
<style type="text/css">
table {border:1px;}
td {border: black solid 1px; width:10px; height:10px}
tr {height:10px}}
</style>
</head>
<body>
<table  >
<tr><td colspan=2>*</td><td rowspan=2>*</td><td>*</td></tr>
<tr><td>*</td></tr>
<tr><td colspan=3>*</td><td>*</td></tr>
<tr><td>*</td><td>*</td><td>*</td><td>*</td></tr>
</table>
</body>
</html>

so hingegen würde es gehen . wenn man was weglässt und da keine zelle ist , dann funktionieren cospan und rowspan nur soweit es eine zelle hat an der es sich mit höhe und breite irgendwie anpassen kann . eine leere zeile geht also nciht .

und sowas geht auch

<html>
<head>
<style type="text/css">
table {border:1px;}
td {border: black solid 1px; width:10px; height:10px}
tr {height:10px}}
</style>
</head>
<body>
<table  >
<tr><td colspan=2>*</td><td rowspan=2>*</td><td  rowspan=3>*</td></tr>
<tr><td>*</td></tr>
<tr><td colspan=3>*</td></tr>
<tr><td>*</td><td>*</td><td>*</td><td>*</td></tr>
</table>
</body>
</html>
0