En este ejemplo, la primera imagen no deja espacios, pero la segunda sí.
La explicación es más o menos sencilla: el comportamiento de una celda es muy diferente al de un div; de hecho, como te comenta
pzin, esa es una de las tantas razones por las que diseñar con tablas se considera una mala práctica.
Por cierto, tu HTML es estático o usas algún lenguaje de servidor?
Es muy extraño que aparezcan/desaparezcan cosas en el código fuente.