Bonjour à tous et merci pour votre accueil sur ce site.

Je débute en HTML et CSS et essaie de structurer la première page de mon site.
Je ne comprends pas pourquoi la Div est plus grande que l'image qu'elle contient... ce qui laisse apparaitre le fond vert en dessous de l'image...

En vous remerciant !

code HTML :
<body>
<div id="banniere">
<img src="http://localhost:81/AYSC/p1.jpg">
</div>
<section>
section
</section>
</body>

Code CSS :
body
{
margin: auto;
}
#banniere
{
background-color: green;
}
#banniere img
{
width: 100%;
max-height: 400px;
object-fit: cover;
}
section
{
background-color: red;
}

upload/1608053345-81894-image.jpg
Modérateur
bonjour,

ton image est un élément en ligne et repose sur une interligne comme celle sur laquelle repose un texte. Il y a donc dessous cette espace réservé qui permet d'afficher le jambage inférieur de certaines lettre ( g, j, p, q, y ).

Pour le faire disparaitre, tu peut faire un reset sur display pour en faire une boite en block ou bien faire un reset sur la valeur vertical-align : voir https://developer.mozilla.org/fr/docs/Web/CSS/vertical-align .

Bon apprentissage Smiley smile
Modifié par gcyrillus (15 Dec 2020 - 21:33)
Modérateur
Salut !

Bienvenu parmi nous Smiley smile

il s'agit du fameux soucis d'espace indésirable sous les images !
https://www.alsacreations.com/astuce/lire/52-espaces-sous-les-images.html

En solution en plus de celles apportées par l'article tu peux aussi au choix :
- passer #banniere en position; flex;
- mettre une line-height:0; sur #banniere

Mais celles de l'articles sont très bien.

Bonne soirée

[EDIT]A zut j'ai eu une urgence "enfant debout" j'ai pas eu le temps d'appuyer sur poster avant hahaha Smiley lol [/EDIT]
Modifié par _laurent (15 Dec 2020 - 21:51)
Meilleure solution
"_laurent" a écrit :
A zut j'ai eu une urgence "enfant debout" j'ai pas eu le temps d'appuyer sur poster avant hahaha Smiley lol

Ah oui, je la connais très bien cette situation !
Modifié par Olivier C (16 Dec 2020 - 06:16)
Bonsoir,
Un grand merci à vous tous.
j'étais encore loin de la solution !

Effectivement, l'image en background solutionnait le problème mais me posait d'autres soucis sur la taille du div bannière lors de l'agrandissement ou la réduction de la fenêtre du navigateur.

Bref, la solution display:block ou vertical-align:bottom correspond pleinement !

Bonne soirée à vous
Modifié par GeoWeb (16 Dec 2020 - 19:12)