Вы не можете иметь <tr>
вложенное в <tr>
.Это строки таблицы.Измените их на <td>
для ячеек таблицы.
<tr>
<td width="80%">
<strong>Title:</strong><br/>
<strong>Dish:</strong><br/>
<strong>Description:</strong><br/>
<strong>Price:</strong><br><br/>
</td>
</tr>
Кроме того, используйте <strong>
из HTML 4 и закройте тег <br/>
, но они в основном педантичны:)
EDIT:
Глядя на ваш код, я думаю, что вам нужна строка заголовка, а затем выполнить цикл for и заполнить каждую строку отдельным пунктом «меню» для каждого объекта цикла for.Попробуйте это:
<table border="0" width="75%">
<!-- Table header -->
<tr>
<td><strong>Title:</strong></td>
<td><strong>Dish:</strong></td>
<td><strong>Description:</strong></td>
<td><strong>Price:</strong></td>
</tr>
<%
for (int pos = 0; pos < list.size(); pos++) {
Menu menu = list.getMenuAt(pos);
%>
<!-- Table contents -->
<tr>
<td><%= menu.getTitle(); %></td>
<td><%= menu.getDish(); %></td>
<td><%= menu.getDescription(); %></td>
<td><%= menu.getPrice(); %></td>
</tr>
<%
} // end for
%>
</table>
Заголовок с заголовком, заголовком, тарелкой и т. Д. Вам понадобится только один раз, а затем запустите цикл for и добавьте строки после этого.Обратите внимание, что у каждой строки есть поле в отдельной ячейке, как вы должны разделять табулированные данные.Я бы порекомендовал стилизацию с помощью CSS, желательно путем включения внешнего файла CSS.