2009-11-04 7 views
1

J'ai une page avec beaucoup de divs et de style, avec mon div enterré quelque part à l'intérieur.Redimensionner une div pour remplir le navigateur

J'essaie d'avoir un bouton qui rend automatiquement mon div, qui comprend un lecteur vidéo, redimensionner et capturer l'ensemble du navigateur. Pour ce faire, j'essaie d'obtenir la position actuelle de la div puis de la positionner relativement pour qu'elle atteigne le coin supérieur gauche afin que je puisse utiliser document.body.clientHeight/clientWidth.

Impossible de faire fonctionner cela.

J'ai essayé l'approche consistant à déplacer mon div vers le premier div puis le redimensionner, mais cela salit le lecteur Flash.

Des idées? des approches différentes?

Merci,
Guy

Répondre

0

Pourquoi parent? Vous devriez plutôt utiliser fixe au lieu de relatif. Réglez ensuite la positon sur 0,0 et la largeur et la hauteur sur 100%. Simple js peut le faire.

+0

Toutes ces positions solutions fixes travailler dans FireFox, mais dans IE7 ils ont des problèmes dans ma page, quelques-uns des divs restent encore au-dessus. – guytom

+0

Qu'en est-il de l'index z? – kubal5003

+0

Je l'utilise mais la question est le positionnement – guytom

2

Utilisez l'un des clones de la visionneuse qui peuvent gérer les DIV. Ils copient généralement la DIV en question dans leur propre vue DIV, ce qui aide avec les problèmes de positionnement et vous n'avez rien à faire à la DIV enterrée.

Je trouve multi-facettes très lightbox facile pour les personnalisations:

http://www.gregphoto.net/lightbox/

mais il y a beaucoup d'autres autour aussi.

+0

Je voudrais essayer un clone jQuery lightbox. Mais +1 pour l'utilisation d'un outil de visionneuse. – David

+0

Ça a l'air sympa mais si je comprends bien, ça recharge encore le contenu, donc mon lecteur vidéo flash est rechargé ce qui n'est pas souhaitable. Si le rechargement flash ne me dérange pas je pourrais jouer avec l'emplacement div dans le DOM comme je l'ai écrit ci-dessus – guytom

+0

Si vous incorporez le film flash dans le div, le déplacement dans la lightbox ne devrait pas recharger. Es-tu sûr que ça fait ça? –

0

Lors d'un clic, réglez simplement le style de div sur 'fixed' et positionnez-le à 0,0. Comme:

var theDiv = document.getElementById('yourDivsId'); 
theDiv.style.position = 'fixed'; 
theDiv.style.top  = 0; 
theDiv.style.left  = 0; 
0

Cela devrait faire l'affaire:

<div style="position:absolute;top:0;left:0;width:100%;height:100%"> 
    some content here 
</div> 
+0

Identique à fixed, il ne fonctionne pas bien dans IE lorsque le div est enterré ... – guytom

Questions connexes