Se connecter avec
S'enregistrer | Connectez-vous

Figer la hauter d'une box sans la figer

Dernière réponse : dans Programmation

Bonjour,
Voilà mon problème: sur mon site, j'ai plusieurs pages, chacune plus ou moins remplie que les autres. Donc pour des raisons esthétiques, j'ai fixé mon "main" à height: 900px; et sous IE si la page est plus remplie, le "main" s'étire sans soucis. Alors que sous FF le "main" reste figé à 900px, et c'est trop laid car le contenu "en trop" se retrouve dans le vide! Alors comment donner une heuteur mini mais tout en conservant des propriétés extensibles, sous FF ?
Merci à vous.

Autres pages sur : figer hauter box figer

Lassé par la pub ? Créez un compte

Petit ajout : IE ne connaît pas "min-" et "max-".. (IE 7, je ne sais pas, je ne l'ai pas encore essayé et d'ailleurs je ne suis pas pressé :o )

Par exemple : IE fait se comporter "height" comme si c'était "min-height", alors que "height" indique une dimension fixe, ce que respectent bien les autres navigateurs (FF, Opera, Konkeror, Safari et bien d'autres)..

Quant au "max-", il n'existe tout simplement pas dans la logique IE (toujours IE 5 ou 6).. Il faut alors passer par un hack CSS utilisant du JS (le fameux "expression()" à la place de la valeur de la règle ; fortement peu standard et heureusement inconnu des autres !!).

:jap: 

ah wai, c'est cool ça, je connaissais pas! et du coup j'ai mis les deux ensemble pour mon "main" (height: 900px; min-height: 900px;) l'un au dessous de l'autre, et chaque navigateurs reconnait le sien, et tout est parfait! Merci les gars !

Chapellois a dit :
ah wai, c'est cool ça, je connaissais pas! et du coup j'ai mis les deux ensemble pour mon "main" (height: 900px; min-height: 900px;) l'un au dessous de l'autre, et chaque navigateurs reconnait le sien, et tout est parfait! Merci les gars !
Chapellois a dit :
Ah wai mais nan, en fait, c con ce que je dis, c pas bon! FF reconnais pas min-height, même tout seul... y'a un bins là

C'est un peu normal..... On n'utilise pas de dimension fixe avec une dimension semi-variable : la fixe prend le pas sur l'autre.. Voici le code CSS qu'il te faut, avec le hack pour IE :
  1. #mon_objet { width: 500px; min-height: 900px; } // Règle correcte pour ton cas de figure ; évidemment, le 'width' n'est là que pour l'exemple ;-)
  2. * html #mon_objet { height: 900px; } // '* html' = hack reconnu seulement par IE ; à utiliser avec parcimonie : ça ne passe aucun prog de validation des CSS

Par contre, gare à une chose : le "min-height" ne peut fonctionner qu'avec du contenu en flux dit "relatif" ('position: relative'), type de flux par défaut pour tout objet, notamment du texte continu. Avec des objets placés en flux "absolu", ça ne fonctionne pas ('position: absolute', 'position: fixed' ou 'float: left/right'), les objets sont soit totalement retirés du flux "normal" ('position: absolute/fixed'), soit partiellement retiré ('float' : il influence le positionnement des objets immédiatement voisins, mais pas directement la taille du bloc conteneur)..

Pour faire qu'un objet placé en "float" agisse sur le bas du bloc qui le contient, il faut parfois inclure une règle horizontale <hr /> à la fin de ce bloc pour qu'il prenne bien en compte l'emplacement complet du 'float', en donnant une épaisseur nulle à la <hr />. Mais c'est du bidouillage et IE ne gère pas les <hr /> comme les autres : il ne fait pas les épaisseurs nulles avec les mêmes attributs CSS.. Utiliser les <hr /> est source de soucis de mise en page : un décalage plus prononcé d'un navigateur à l'autre ou carrément l'affichage inopportun de la <hr />..

:jap: 

pas de hack a la * html
utilisez les commentaire conditionnels pour inclure une seconde feuille de style spécifique a ie qui écrasera les valeurs de la feuille de style standard ...

de plus cela permet de ne pas affecter ie7 ...

Dit comme ça, c'est plus clair :jap: .... Je les oublie toujours, ceux-là..

'Faudra que je me penche dessus un jour.. Vu que j'articule généralement mes sites sur PHP, j'en profite pour passer par là pour éventuellement ajuster les noms de mes class & id CSS (c'est comme ça que je remplace les '* html').. De cette façon, je les ai toutes sous la main dans une même feuille de style quand je fais une modif de règles CSS.. C'est juste pour ça que je ne les utilise pas pour le moment et que j'oublie d'y penser, à ces commentaires conditionnels :ange: ..

:jap: 

wai, ok, mais j'ai un pb avec la base: FF ne prend pas en compte mon min-height. Alors pour le crack, je verrai quand min-height marchera.
Mais alors pourquoi min-height ne marche pas? Voici mon code:
  1. #main {
  2. margin: 0;
  3. padding: 0;
  4. width: 900px;
  5. min-height: 900px;
  6. color: #FFF;
  7. background: url('fondpage.jpg');
  8. }
Expert Programmation

Pourquoi un tel comportement positif en cat programmtion, et très peu dans les autres cat ?

Elément de réponse :
  • public trié par le thème
  • public plus mature que la moyenne
  • modos de qualité :sol: 
  • membres actifs d'encore meilleure qualité :D 

    En tout cas merci Kangol et Boubposysteam pour les techniques de switcher CSS :jap: 

    Citation :
    spu un forum stun wiki.... :o 
    Vivent la cat' Programmation et ses forumeurs :) 

    On devrait peut-être changer le look de la cat' en lui donnant un aspect clairement WikiMedia.. Chiche on le demande en 'Remarques & suggestions' ? :lol: 

    Et +1 avec marsien : tout simplement et en toute humilité, nous ne sommes juste que de modestes Dieux :D  !!



    Pour revenir au sujet, dartyduck, tu pourrais nous mettre les codes HTML et CSS qui correspondent à ton bloc et à son contenu ? Parce que je n'ai jamais connu le moindre pb de 'min-height' avec FF, d'autant plus que je l'utilise quasiment toujours pour chaque "corps" de page (la partie centrale), sauf lorsque le bloc concerné contient des éléments sortis du flux relatif "normal"..

    :jap: 
    Lassé par la pub ? Créez un compte