As per the specification here (spec) min-height SHOULD not be applied to table elements. Therefore it is IE that is displaying this property wrong, not Firefox (no surprise there). What you can do is either stop using tables for layout (Which the standard reccomends) OR place a DIV within the table cell and apply the min height property to the div to force the TD to adopt its content size.
option 1:
<body>
<div class="body" style="min-height:400px;">
<ui:inser name="body"/>
</div>
</body>
option 2:
<div class="body">
<table>
<tr>
<td valign="top" width="100%">
<div style="min-height: 400px;">
<ui:insert name="body"/>
</div>
</td>
</tr>
</table>
</div>
The downsides of option 1 - Possibility of extra styling needed to get x-browser for legacy IE (6,7,8)
The downsides of option 2 - unneccesary mark-up, non-standard.