Hola:
Me extraña que tenga comportamientos distintos los distintos navegadores, ya que siempre que se crea una tabla, se crea un tag tbody (aunque no se defina...)
Si tenemos algo así:
<table id="tabla"><tr><td>ejemplo</td></tr></tabla>
y con javascript pedimos el innerHTML de la tabla, aunque no esté difinido aparece el tbody...
Ejemplo:
Código:
<html>
<body>
<table id="tabla"><tr><td onclick="alert(document.getElementById('tabla').innerHTML)">xxx</td></tr></table>
</body>
</html>
Probado
aquí
Saludos