J'ai un div
, le conteneur et quelques autres div
s à l'intérieur - les couches. La visibilité des couches est commutée dynamiquement avec JavaScript.ajuster la hauteur du conteneur au contenu en couches (à la couche visible)
Je souhaite que le conteneur corresponde à sa hauteur par rapport à la couche visible lors de la permutation entre les deux, mais également lorsque nous agrandissons ou relâchons la page. Généralement, je veux créer une page qui charge instantanément tout son contenu et choisit dynamiquement ce qui est spectacle, alors peut-être que cela peut être fait d'une autre manière?
Mon approche consistait à mettre une couche sur une autre en les positionnant de façon «absolue», mais avec ce positionnement le conteneur ne correspond plus à sa hauteur. J'ai donc essayé de changer la hauteur avec JavaScript en changeant de couche (laissant le support pour le zoom) mais ça ne marche pas, la hauteur reste la même (minime):
function selectLayer (layer_id) { var objs = document.getElementsByClassName ("couche de contenu") pour (var i = 0; i < objs.length; i ++) { if (objs [i] .id == id_couche) { objs [i] .style.visibility = "visible";
/* no reaction after executing line below */
objs[i].parentNode.height = objs[i].height + 20; // <---
} else {obj [i] .style.visibility = "hidden"; } } } Comment atteindre l'objectif complet? Ou au moins, quel est le problème avec mon code?
Le reste du code, HTML:
... certains contenus ... ... certains contenus ... ... certains contenus ...
CSS:
#contents { position: relative; z-index: 100; min-hauteur: 350px; marge gauche: 120px; largeur de bordure: 8px; rembourrage: 0 0,75em; }
.content-layer { position: absolue; visibilité: caché; }
FF 3.6
Le problème n'est pas de calculer la hauteur. Même en donnant une valeur énorme, la hauteur est toujours la même. – adf88