То, что width: 100%
во втором столбце выглядит неправильно - если вы пытаетесь расширить второй столбец до остального доступного пространства, вам это вообще не нужно, поэтому вы можете удалить его ,
Кроме того, добавьте это к своей таблице:
table-layout: fixed;
чтобы убедиться, что ширина соблюдается.
полный код:
<table style="width: 100%; table-layout: fixed;">
<colgroup>
<col style="width: 201px">
</colgroup>
<tr id="header">
<td colspan="2"></td>
</tr>
<tr id="center">
<td id="left"></td>
<td id="mainpage"></td>
</tr>
</table>