Bonjour à toutes et à tous,
j'ai un gros soucis et ne connaissant pas assez la DOM, je n'arrive pas à faire ce calcul en javascript :
J'ai un DIV conteneur faisant exactement trois boites de larges et trois boites de hauts. Les boites doivent se positionner normalement dans le flux (comme si nous faisions un inline-bloc mais cela ne fonctionne pas sous MSIE) afin de remplir la totalité du conteneur. J'ai choisi ce mode de remplissage par commodité, mais rien ne nous empêche de faire un autre remplissage, comme par exemple, une disposition tout en ligne ou tout en colonne. Ce mode de remplissage est conditionnée par la forme du conteneur.
Chaque boite est déclarée d'une manière spécifique en CSS (avec/sans des marges, des padding, des borders, ... enfin tout ce qui peut occuper de la place dans la boite) mais sans WIDTH & HEIGHT. C'est ce que je dois justement gérer en javascript.
Je dois calculer exactement la dimension de la boite (WIDTH & HEIGHT) de façon à ce qu'elle ne soit pas plus grande que les dimensions de la fenêtre intérieur de l'écran mais en tenant compte aussi de la déclaration des marges et des paddings et des borders afin de ne pas avoir un débordement de la boite hors de l'écran.
Et de plus, il faut que ces boites puissent se ranger dans le conteneur de façon à les disposer trois en ligne et trois en colonne.
Et bien entendu, il faut que cela fonctionne sur les navigateurs comme MSIE 8.0, Mozilla Firefox, Google Chrome, Apple Safari, Opera.
J'ai compris que le positionnement se fait par les variables : window.offsetTop & window.offsetLeft.
Mais je n'arrive pas à dimensionner correctement les boites. J'ai trouvé window.screen.availWidth & window.screen.availHeight mais mes boites débordent de l'écran, surtout lorsque je mets un padding ou une marge.
Quelqu'un a-t-il déjà procédé à ce genre d'opération ?
Merci !
Modifié par Artemus24 (26 Jun 2011 - 20:53)
j'ai un gros soucis et ne connaissant pas assez la DOM, je n'arrive pas à faire ce calcul en javascript :
J'ai un DIV conteneur faisant exactement trois boites de larges et trois boites de hauts. Les boites doivent se positionner normalement dans le flux (comme si nous faisions un inline-bloc mais cela ne fonctionne pas sous MSIE) afin de remplir la totalité du conteneur. J'ai choisi ce mode de remplissage par commodité, mais rien ne nous empêche de faire un autre remplissage, comme par exemple, une disposition tout en ligne ou tout en colonne. Ce mode de remplissage est conditionnée par la forme du conteneur.
Chaque boite est déclarée d'une manière spécifique en CSS (avec/sans des marges, des padding, des borders, ... enfin tout ce qui peut occuper de la place dans la boite) mais sans WIDTH & HEIGHT. C'est ce que je dois justement gérer en javascript.
Je dois calculer exactement la dimension de la boite (WIDTH & HEIGHT) de façon à ce qu'elle ne soit pas plus grande que les dimensions de la fenêtre intérieur de l'écran mais en tenant compte aussi de la déclaration des marges et des paddings et des borders afin de ne pas avoir un débordement de la boite hors de l'écran.
Et de plus, il faut que ces boites puissent se ranger dans le conteneur de façon à les disposer trois en ligne et trois en colonne.
Et bien entendu, il faut que cela fonctionne sur les navigateurs comme MSIE 8.0, Mozilla Firefox, Google Chrome, Apple Safari, Opera.
J'ai compris que le positionnement se fait par les variables : window.offsetTop & window.offsetLeft.
Mais je n'arrive pas à dimensionner correctement les boites. J'ai trouvé window.screen.availWidth & window.screen.availHeight mais mes boites débordent de l'écran, surtout lorsque je mets un padding ou une marge.
Quelqu'un a-t-il déjà procédé à ce genre d'opération ?
Merci !
Modifié par Artemus24 (26 Jun 2011 - 20:53)