Доброе утро.
Не используйте bgcolor, нафталином попахивает...
Не показывайте html через echo.
Вы подставляете переменную, но Вы её не показываете. Необходимо использовать echo или её псевдоним.
Или
<?php echo $color ?>
или
<?= $color ?>
Так же необходимо значение атрибутов html тегов обрамлять кавычками.
<?php
$type = 'add';
$color = $type == 'add' ? 'red' : 'white';
?>
<table style="width: 200px; height: 100px;">
<tr style="background:<?= $color ?>">
<td></td>
<td></td>
<td></td>
</tr>
<tr style="background:<?= $color ?>">
<td></td>
<td></td>
<td></td>
</tr>
<tr style="background:<?= $color ?>">
<td></td>
<td></td>
<td></td>
</tr>
<tr style="background:<?= $color ?>">
<td></td>
<td></td>
<td></td>
</tr>
</table>