J'ai quelques problèmes avec mon conteneur DIV. D'une part, il ne reconnaît pas correctement la hauteur de mon contenu (j'aurais pensé qu'il s'étendrait au-delà du bas du contenu principal et de la barre latérale, mais ce n'est pas le cas). Vous pouvez voir ce que je veux dire sur cette page .
Je voudrais aussi que le conteneur DIV remplisse toujours la hauteur disponible de l'écran/fenêtre. J'ai essayé de le régler sur min-height:100%
, mais cela n'a eu aucun effet.
Voici le CSS que j'utilise pour le conteneur DIV:
#container {
padding: 0;
margin: 0;
background-color: #292929;
width: 1200px;
margin: 0 auto;
min-height: 100%;
}
Je serais reconnaissant pour toute aide pour que cela fonctionne.
Merci,
Entaille
Ajoutez ceci à votre css:
html, body {
height:100%;
}
Si vous dites hauteur: 100%, vous voulez dire «100% de l'élément parent». Si l'élément parent n'a pas de hauteur spécifiée, rien ne se passera. Vous ne définissez que 100% sur le corps, mais vous devez également l'ajouter au code HTML.
Avez-vous défini le CSS:
html, body
{
height: 100%;
}
Vous en avez besoin pour que la division prenne toute la place. :)
Vous pouvez le configurer pour voir la hauteur
html, body
{
height: 100vh;
}
html {
min-height: 100%;
}
body {
min-height: 100vh;
}
La html height (%)
s'occupera de la hauteur des documents dont la height
est plus qu'un 100%
du screen view
tandis que la body view height (vh)
prendra en charge la hauteur du document qui est inférieure à la hauteur de la vue à l'écran.
J'ai réfléchi à cela et expérimenté avec la hauteur des éléments: html, body et div. Finalement, j'ai trouvé le code:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Height question</title>
<style>
html {height: 50%; border: solid red 3px; }
body {height: 70vh; border: solid green 3px; padding: 12pt; }
div {height: 90vh; border: solid blue 3px; padding: 24pt; }
</style>
</head>
<body>
<div id="container">
<p><html> is red</p>
<p><body> is green</p>
<p><div> is blue</p>
</div>
</body>
</html>
Avec mon navigateur (Firefox 65 @ mint 64), les trois éléments sont de 1) hauteur différente, 2) chacun est plus long que le précédent (html 50%, corps 70vh et div 90vh). J'ai également vérifié les styles sans la hauteur par rapport aux balises html et body. A bien fonctionné, aussi.
À propos des unités CSS: w3schools: unités CSS
Une note sur la fenêtre: "Fenêtre = la taille de la fenêtre du navigateur. Si la fenêtre a une largeur de 50 cm, 1vw = 0,5 cm."