Hallo
Versuche zuerst einmal deine Frage zu analisieren
Du schreibst zwar von "centern", anderseits dass die Tabelle / Bild immer „oben“ bleibt. Der Befehl „center“ dient ja eigentlich für die horizontale Ausrichtung, also einmitteln zwischen "links und rechts" und nicht zwischen "oben und unten".
Willst Du, dass der Inhalt in den einzelnen Tabellen mittelbündig ausgerichtet wird, setze in der jeweiligen <td> tags den HTML-Befehl
valign="middle"
oder mit CSS-Formatierung
style="vertical-align:middle"
Für die Ausrichtung auf der horizontalen Ebene wie von dir bereits verwendet
align="center"
oder
text-align:center"
(der Befehl table-align:center ist unkorrekt!)
Dein Beispiel könnte in etwas wie folgt aussehen:
<html><head></head><body >
<table valign="top" align="center" width="300px" height="500px">
<tr>
<td style="vertical-align:middle; text-align:center">
<table width="200px" height="300px" bgcolor="#B2B2B2">
<tr>
<td style="vertical-align:middle; text-align:center">
<table width="100px" height="200px">
<tr>
<td style="vertical-align:middle; text-align:center" width="52%">
<img src="lol.jpg" width="100" height="50"><br>Bild
</td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
</body></html>
Mehr Infos zu der Problematik der ausrichtung in SELFHTML unter
Mit CSS http://de.selfhtml.org/css/eigenschaften/ausrichtung.htm
Mit HTML http://de.selfhtml.org/html/tabellen/gestaltung.htm#ausrichtung_zellen