Forums d'assistance et de discussion sur les logiciels produits par Mozilla ou créés à partir des technologies Mozilla. Ce site ne dépend pas de la fondation Mozilla et est maintenu par un collectif de bénévoles.
HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
mais après avoir corrigé quelqes petites chose pour le rendre valide en XHTML tansitional, je but sur les dernières "erreurs"
adresse pour avoir accès à mon annu modifié : http://lelogiciellibre.net/annuaire-encyclopedie/
document type does not allow element "td" here.
<td valign="top" width="50%">
The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).
One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).
<table style="border: 0; width: 60%; align: center;">
<?php
//tableau des categories
//pour chaque categories meres trouvees on les affiche avec leurs X premieres sous-cat
$i=0;
while ($une_categorie = mysql_fetch_array($res_cat,MYSQL_ASSOC))
{
if ($i%2 == 0) //colonne de gauche et donc nouvelle ligne
echo "<tr>\n";
$i++;
//on affiche la categorie mere
?>
<td valign="top" width="50%">
<img src="img/dossier.gif" style="border: 0;" alt="icone dossier" />
<a href="<?php echo id_to_url($une_categorie["id"],$une_categorie["cat_name"],'1'); ?>" class="link_cat_index_annuaire"><?php echo htmlspecialchars($une_categorie["cat_name"]); ?></a>
<span class="nb_scat_index_annuaire">(<?php echo get_nbsites($une_categorie["id"]); ?>)</span>
<?php
//on va voir si il n'y a pas des sous-categories
$sql_scat = "SELECT id,cat_name FROM $T_categories WHERE id_cat_mere = '$une_categorie[id]' AND activation = '1' ORDER BY position ASC, cat_name ASC LIMIT 0,$nb_scats_onindex ";
$res_scat = send_sql($sql_scat,"trouver les sous-catégories");
echo "\n<br />\n";
//on affiche les sous-categories
while ($une_souscat = mysql_fetch_array($res_scat,MYSQL_ASSOC))
{
?>
<a href="<?php echo id_to_url($une_souscat["id"],$une_souscat["cat_name"],'1'); ?>" class="link_scat_index_annuaire"><?php echo htmlspecialchars($une_souscat["cat_name"]); ?></a>
<?php
}
echo "<br /><br />\n";
}
?>
</table>
auriez vous une idée pour m'aider ?
Dernière modification par DISCRET le 22 août 2005, 23:54, modifié 1 fois.
Tu vois que c'est tout de suite mieux, tu arrives même à trouver la cause du problème tout seul
Je pense que tu peux commencer par virer tous les br. Tu pourra toujours mettre des paddings si nécessaire.
Ensuite, effectivement, chaque td ainsi que le tr doivent obligatoirement être fermés. Donc un </tr> tout à la fin, et des </td> après chaque contenu de cellule
pour le /tr je l'ai mis avant /table
le /td je l'ai mis après /span
ça m'a résolu une partie du problème, regardez l'écart que ça m'a créé entre " Cet annuaire contient 11 sites répartis dans 6 catégories" et les catégories
edit: enfin presque le /td est bon mais je ne trouve pas où placer le /tr , il ne doit intervenir qu'à la fin d'une catégorie sur deux.
Es-tu sur que les tables sont ce qu'il y a de plus approprié ? Ou est-ce qu'elles sont juste pour la mise en forme ? (auquel cas il faudrait voir pour les remplacer par CSS) ?
Parce que là, s'il faut mettre une nouvelle ligne une fois sur deux, et que ça n'a pas de logique (à part le 1/2)...
Pour mettre un </tr> une fois sur deux il faudrait créer une variable que tu indentes... c'est le chenit !