2010-05-17 5 views
3

Vous pouvez lire les dimensions de votre navigateur avec jQuerys $ document.height ou avec un simple JS via height: window.innerHeight || document.body.clientHeight. Mais comment appliquer la valeur à une classe CSS?Comment appliquer la hauteur du navigateur à une classe CSS?

+0

Qu'essayez-vous de faire? –

+0

A écrit encore dans un autre commentaire: Situation: Créer plusieurs DIV avec la hauteur des navigateurs. Ainsi, chaque DIV a la hauteur du navigateur et un seul DIV est visible en même temps (les autres DIV sont affichées lorsque vous faites défiler vers le haut ou le bas). – ChrisBenyamin

Répondre

0

Pas besoin de compliquer ceci - vous n'avez pas besoin de trouver un moyen d'appliquer la hauteur à une classe CSS. Il suffit de donner chacun de vos <div> s une classe dans le code HTML:

<div class="viewport_height">This is some content.</div> 

puis utilisez le code jQuery semblable à ceci:

var document_height = $(document).height(); 
$('.viewport_height').css('height', document_height + 'px'); 

pour appliquer la hauteur mesurée à tous les éléments de cette catégorie.

Pour une solution plus robuste, associez une fonction à l'événement onresize pour recalculer et appliquer la hauteur chaque fois que la hauteur de la fenêtre d'affichage change.

1

jQuery:

$('.targetClass').css('height',otherObject.height()+'px'); 
+0

Ne pas trop expliquer. – ChrisBenyamin

0

Vous ne pouvez pas réécrire/ajouter de nouvelles valeurs aux propriétés CSS/cours à la volée; vous pouvez écrire/réécrire/ajouter des valeurs aux éléments.

Vous devriez publier votre situation, il y a peut-être une façon différente de faire ce que vous essayez de faire.

+0

Ok, donc en prenant la fonction mentionnée précédemment, je peux remplacer la hauteur de mon élément. La fonction doit-elle être chargée après la construction du DOM (onDomLoad?)? Situation: Créez plusieurs DIV avec la hauteur du navigateur. Ainsi, chaque DIV a la hauteur du navigateur et un seul DIV est visible en même temps (les autres DIV sont affichées lorsque vous faites défiler vers le haut ou le bas). – ChrisBenyamin

0
$('#target').css('height',$(document.body).height()+'px') 

(jQuery)

0

Trouver l'objet de la règle d'une manière spécifique au navigateur (http://www.javascriptkit.com/domref/cssrule.shtml)

Ensuite, vous pouvez modifier l'objet de style de l'objet de la règle et changer réellement la définition de classe CSS

Questions connexes