¿Cómo hacer una tabla, que es más ancha que el tamaño de la pantalla, desplazable y mantener fija la fila del encabezado?

Tengo unamesa con 2 columnas y cada columna tiene 800px de ancho. Quiero mostrar esta tabla en una ventana de 800x50. Por lo tanto, debe haber una barra de desplazamiento horizontal y vertical para ver la tabla completa.

Si bien he encontrado pocas soluciones relacionadas (esta yesta) en SO, solo funcionan si el ancho de la tabla es menor que el tamaño de la pantalla. En mi caso, el tamaño de la pantalla es de 1200 px y el ancho total de la tabla es de 1600 px.

¿Cómo podría hacer esto? quiero lograr algo comoesta.

EDITAR Vaya, olvidé agregar un requisito más. Lo siento. Quiero que el encabezado de la tabla permanezca fijo mientras el usuario desplaza la tabla.

EDIT2

He intentado a continuación las soluciones mencionadas para envolver en un div, pero en este caso la barra de desplazamiento vertical no aparece. Por favor miraEsta mesa con envoltura div. Parece que este problema solo ocurre si el ancho de la tabla es mayor que el tamaño de la pantalla. Estoy probando en FF3.6.

EDITAR3

actualmesa código. Esto no tiene desplazamiento vertical a pesar de que puedo desplazarme verticalmente.

<div style="overflow:scroll; width:800px;height:50px" >
<table style="width:1600px" border="1">
  <thead>
    <tr>
        <th style="width:800px">id_1</th>
        <th style="width:800px">id_1</th>
    </tr>
  </thead>
  <tbody style="">
    <tr><td>1200</td><td>1200</td></tr>
    <tr><td>1200</td><td>1200</td></tr>
    <tr><td>1200</td><td>1200</td></tr>
    <tr><td>1200</td><td>1200</td></tr>
    <tr><td>1200</td><td>1200</td></tr>
    <tr><td>1200</td><td>1200</td></tr>
  </tbody>
</table>
</div>