2009-09-22 9 views
18

Existe-t-il une méthode multi-navigateur pour attacher du contenu dans un <div> au fond? Une difficulté est que le <div> peut avoir une hauteur arbitraire appliquée, mais je veux que certains contenus soient collés au fond de celui-ci à tout moment.HTML: élément de bloc d'ancrage à l'intérieur du bas du bloc parent?

Cela aurait été accompli dans les mauvais jours comme celui-ci:

<table style="height: foo;"> 
    <tr><td valign="top">content</td></tr> 
    <tr><td valign="bottom">stuck to the bottom</td></tr> 
</table> 

Puis-je le faire sans avoir recours à cette technique?

+0

Merci pour la modification. J'ai oublié de formater. – recursive

Répondre

48

Bien sûr, c'est plutôt facile. Définissez simplement le parent div avec position:relative. Ensuite, l'élément interne que vous souhaitez coller au fond, utilisez simplement position:absolute pour le coller au bas de l'élément.

<div id="parent"> 
    <div id="child"> 
    </div> 
</div> 

.

#parent { 
    position:relative; 
} 
#child { 
    position:absolute; 
    bottom:0; 
} 
+0

Slick. Je connaissais les attributs en haut et à gauche, mais je ne savais jamais en bas et à droite. – recursive

+0

Génial; Merci beaucoup. Cela fonctionne magnifiquement. Maintenant, pourquoi ça marche? Vous activez la position relative dans le parent, alors n'importe quel enfant peut être absolument positionné? Ou y a-t-il une explication plus intuitive? –

+2

@ConAntonakos Voici un article que j'ai trouvé sur le sujet qui aide à mieux expliquer. http://designshack.net/articles/css/the-lowdown-on-absolute-vs-relative-positioning/ – tj111

Questions connexes