Je me dois de te contredire quelque peu :AB- une galerie n'est pas un tableau.
- le nombre de lignes et de colonnes n'a rien de fixe
Il convient peut-être de formuler un peu différemment : on met dans un tableau des données "tabulaires", il faut entendre par là tout ou partie de données issues de listes de données structurées, par exemple venant d'une base de données ou d'un fichier du style CSV. Le nombre de ligne ne peut en général pas être fixe puisque les données elles-même peuvent changer, être plus ou moins nombreuses selon le moment. Quant au nombre de colonnes, elle ne peut varier que si on compare une liste d'une sorte de données à une autre liste d'une autre sorte de données. Prenons l'exemple de la galerie : nous avons une image, assortie de données textes, le tout extrait d'une base de données. Même si dans la base certaines colonnes ne contiennent pas obligatoirement de données pour certaines lignes, le nombre de colonnes dans les tables ne varie pas pour autant. On a affaire à des données tabulaires. C'est dans ce sens que l'utilisation de la balise <table> se justifie parfaitement.
Je crois qu'il faut replacer l'utilisation des tables dans son contexte : les tables ne sont pas faites pour faire de la mise en page mais pour structurer des données. On ne disposera donc pas les différents éléments d'une page web dans des tables. Par contre, certains éléments de cette même page peuvent devoir être disposées en lignes et en colonnes auquel cas il est au plan de la sémantique tout à fait valable d'utiliser des tables.
Et au plan de l'accessibilité, l'internaute utilisant un navigateur alternatif pour non voyant par exemple comprendra beaucoup plus rapidement qu'il a affaire à une liste en parcourant un tableau bien utilisé qu'en suivant une succession de blocs <div>....La sémantique d'un document concerne donc ce qui relève plutôt de la qualification fonctionnelle de son contenu, par opposition à sa forme organique. Elle s'intéresse au type de données d'un objet, à son utilité, à ce qu'il contient, etc.
Sur le Web et en HTML aussi, chaque élément est porteur de sens. il convient d'employer chaque balise à bon escient et non selon son rendu visuel par défaut.
