11521 sujets

JavaScript, DOM et API Web HTML5

Bonsoir,



En plus du problème déjà cité sur ce site (modifier un tableau HTML avec du JS), j'en ai un autre : (cette fois-ci on peut le faire avec le choix de la taille ou du nombre) j'ai un dépassement vertical, peu importe que je choisisse nombre ou taille, ça dépasse en bas. Pourtant je pensais avoir fait ce qu'il fallait (bon, je n'ai fait que le nombre : chaque cellule a une bordure gauche (ou haute) et en plus il y a une bordure droite (ou basse) et les deux de la div parente...)



Voici le nouveau lien http://jsfiddle.net/Ccile/uwarLa9o/

Merci d'avance
Modifié par Ccile13 (29 Aug 2014 - 22:36)
As-tu fait attention aux paddings de tes "td" ?
En effet par défaut les élément td ont un padding de 1px. Ce qui pour chaque td te rajoute 2px.

Donc en fin de compte si dans le CSS tu rajoutes :
#table td {
    padding: 0;
}


Et dans le JS (dans la fonction view) :

if(choice==="nbr")
{
    nbr_cell_hor=horizontal;
    nbr_cell_vert=vertical;
    lgth_hor=Math.floor((wdth-nbr_cell_hor-1)/nbr_cell_hor);
    lgth_vert=Math.floor((hght-nbr_cell_vert-1)/nbr_cell_vert);
}


Après ça le tableau rempli parfaitement son conteneur sans dépassement.
Modifié par ChibiKookie (03 Sep 2014 - 17:34)
Bonjour
En effet c'était bien le padding ^^
Par contre, je ne comprends pas pourquoi tu fais - et non -3... il ne faut pas compter les bordures de la table ?
Par contre, je ne pense pas que ça remplisse bien à chaque fois, à cause de la troncature (floor)... sur mon écran si je fais 100*100 il y a une bonne marge de libre... Mais c'est tout à fait normal

Merci encore
Non il ne faut pas compter les bordures de la table car la width/height que tu récupères sont les valeurs sans les bordures.