HTML Таблица форматирование
необходимо сделать таблицу подобного формата: 
body {
background-color: #ffefd5; /* Персиковый фон */
font-family: Arial, sans-serif;
}
h1 {
color: #4b0082; /* Индиго заголовок */
font-family: "Times New Roman", serif;
font-size: 26px;
text-align: center;
}
p {
color: #2f4f4f; /* Темно-серый текст */
font-family: Verdana, sans-serif;
font-size: 16px;
line-height: 1.5;
margin: 0%;
}
hr {
border: none;
border-top: 1px double #8b4513;
color: #8b4513;
overflow: visible;
height: 5px;
width: 50%;
}
h2 {
color: #2e8b57; /* Зеленый подзаголовок */
font-family: "Courier New", monospace;
font-size: 24px;
text-align: center;
padding: 30px;
}
.recipe {
color: #ff4500; /* Оранжево-красный рецепт */
font-family: Georgia, serif;
font-size: 14px;
}
.marquee {
background-color: #ffe4b5; /* Светло-золотистый фон для бегущей строки */
color: #000080; /* Темно-синий текст бегущей строки */
font-family: "Comic Sans MS", cursive;
font-size: 32px;
padding: 1px;
}
table {
width: 80%;
border-collapse: collapse;
margin: 20px auto;
border: 1px solid #ccc;
}
th, td {
border: 1px solid #ccc;
padding: 8px;
text-align: left;
}
th {
background-color: #f2f2f2;
font-weight: bold;
}
td {
border: 1px solid black;
text-align: center;
vertical-align: middle;
height: 50px;
}
<table>
<tbody>
<tr>
<td rowspan="3"> Ячейка 1</td>
<td colspan="2" rowspan="2">Ячейка 2</td>
<td>Ячейка 3</td>
<td rowspan="2">Ячейка 4</td>
<td>Ячейка 5</td>
</tr>
<tr>
<td rowspan="2">ячейка 6</td>
<td > ячейка 7</td>
</tr>
<tr>
<td> Ячейка 8</td>
<td> ячейка 9</td>
<td> ячейка 10</td>
</tr>
</tbody>
</table>
По разному пробовал при добавлении rowspan 2 к ячейке 7 то таблица становится вообще другой, необходимо в чистом html данную таблицу собрать, в крайнем случае если не будет варианта в нем собрать, то напишите как таблицу с css реализовать. Спасибо за помощь.
Ответы (1 шт):
Автор решения: stylok
→ Ссылка
Думаю всё дело в том, что не указаны высоты ячеек.)
table {
border-collapse: collapse;
}
colgroup {
width: 100px;
}
td {
border: 1px solid;
vertical-align: middle;
text-align: center;
}
td:not([rowspan]) {
background-color: #e3e3e3;
height: 24px;
}
[rowspan="2"] {
background-color: aliceblue;
height: 48px;
}
/* здесь можно отказаться от высоты, поскольку она зависить от ранее указанных*/
[rowspan="3"] {
background-color: #f7f0c6;
height: 72px;
}
<table>
<colgroup span="6"></colgroup>
<tbody>
<tr>
<td rowspan="3">1</td>
<td rowspan="2" colspan="2">2</td>
<td>5</td>
<td rowspan="2">7</td>
<td>9</td>
</tr>
<tr>
<td rowspan="2">6</td>
<td rowspan="2">10</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
<td>8</td>
</tr>
</tbody>
</table>
Если упростить до сути, то можно сделать так. Обратите внимание на явно заданную ей высоту первой ячейки.
table {
border-collapse: collapse;
}
colgroup {
width: 100px;
}
td {
border: 1px solid;
vertical-align: middle;
text-align: center;
}
<table>
<colgroup span="6"></colgroup>
<tbody>
<tr>
<td rowspan="3" height="64">1</td>
<td rowspan="2" colspan="2">2</td>
<td>5</td>
<td rowspan="2">7</td>
<td>9</td>
</tr>
<tr>
<td rowspan="2">6</td>
<td rowspan="2">10</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
<td>8</td>
</tr>
</tbody>
</table>