2010-03-04 2 views
1

Est-il possible avec CSS seulement de faire occuper un élément de bloc sur toute la page ("boîte occupée") quand l'élément est à un niveau non racine où largeur et hauteur définie à 100% étirer seulement aussi grande que l'élément parent?CSS: Faire un élément de bloc non-root occuper toute la page

J'aurais pu le faire en utilisant la taille absolue, mais cela nécessiterait javascript pour s'ajuster à la taille actuelle de la page. Cela peut sembler que j'aurais dû ajouter l'élément au niveau racine si je veux qu'il occupe toute la page, mais je ne peux pas modifier la page maître car nous réutilisons un SharePoint standard.

@Edit: Pour une raison quelconque, aucune des deux réponses ne fonctionne pour moi, dois-je un CSS CSS, je vais chercher l'autre solution de contournement.

Répondre

1

Vous n'avez pas besoin de connaître la taille actuelle de la page. Au lieu de cela, essayez:

position:absolute; 
top:0; 
bottom:0; 
left:0; 
right:0; 
+0

Cela ne fonctionnera pas si un élément ancêtre est positionné de manière absolue ou relative. – Residuum

+0

DN: Le lien est à une question sur la certification. – axk

+0

@Residuum: d'où le "try" et non "cela va certainement fonctionner", parce que je ne sais pas à quoi ressemble son balisage. –

1

Qu'est-ce que devrait travail est position:fixed. Le problème avec ceci est IE6, mais il y a quelques solutions: http://www.howtocreate.co.uk/fixedPosition.html. Le positionnement fixe doit sortir l'élément et le positionner en fonction de la fenêtre. Pour en savoir plus sur le positionnement: http://www.quirksmode.org/css/position.html

Bien sûr, je suppose que vous voulez qu'il prenne toute la fenêtre et y rester, et que tout ce que vous voulez afficher où il est sera dans l'élément lui-même. Ce sont beaucoup d'hypothèses. Comme vous pouvez le deviner à partir du nom, le positionnement fixe colle l'élément sur lequel vous le placez - en plus de tout le reste, et il ne bougera pas lorsque vous faites défiler.

+0

Ne fonctionne pas pour une raison quelconque, quand je l'ai mis en absolu avec la largeur et la hauteur définie à 100%, je peux voir la "boîte occupée" (ne pas occuper toute la fenêtre), quand je change de "fixe" la boîte est plus visible. – axk

+0

@axk Vous devez fournir plus d'informations, alors. Votre problème est ailleurs dans votre CSS. –

Questions connexes