2017-09-25 8 views
1

J'utilise un div positionné en absolu sur une image. Le div a un fond coloré avec une opacité inférieure à 1 (donc vous pouvez voir l'image). Mon problème est que vous pouvez voir un espace blanc en dessous de l'image.Comment se débarrasser de l'espace blanc en dessous de l'image avec div superposé position absolue

#zero { 
 
    max-width: 450px; 
 
    margin: 0 auto; 
 
} 
 

 
#container { 
 
    position: relative; 
 
} 
 

 
img { 
 
    width: 100%; 
 
    height: auto; 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 

 
#title { 
 
    position: absolute; 
 
    top: 0; 
 
    right: 0 bottom: 0; 
 
    left: 0; 
 
    height: 100%; 
 
    width: 100%; 
 
    margin: 0; 
 
    color: white; 
 
    background-color: red; 
 
    opacity: 0.67; 
 
}
<div id="zero"> 
 
    <div id="container"> 
 
    <img src="450x300.jpg"> 
 
    <h2 id="title">Title</h2> 
 
    </div> 
 
    <p>How to get rid of the white space below the image?</p> 
 
</div>

Répondre

1

Par défaut, une image est rendue en ligne, comme une lettre.

Vous pouvez ajuster l'alignement vertical de l'image pour la positionner ailleurs (par exemple, le milieu) ou modifier l'affichage afin qu'il ne soit pas en ligne.

+0

Eh oui, voilà. Changement du style pour img à afficher: bloquer et l'espace blanc est parti. Concevoir des sites Web depuis des années maintenant, et toujours avoir des problèmes avec celui-ci :). THX! –

+0

Son amende .. Profitez de codage – coder

0

Le titre a une hauteur de 100%, ce qui signifie qu'il prendra 100% de la hauteur de son parent. L'élément restant se chevauche alors.

Vous pouvez soit supprimer la directive height: 100% dans votre titre, en laissant la mise en page se définir automatiquement, soit spécifier un pourcentage inférieur et ajuster votre taille de police en conséquence.

#zero { 
 
    max-width: 450px; 
 
    margin: 0 auto; 
 
} 
 

 
#container { 
 
    position: relative; 
 
} 
 

 
img { 
 
    width: 100%; 
 
    height: auto; 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 

 
#title { 
 
    position: absolute; 
 
    top: 0; 
 
    right: 0 bottom: 0; 
 
    left: 0; 
 
    width: 100%; 
 
    margin: 0; 
 
    color: white; 
 
    background-color: red; 
 
    opacity: 0.67; 
 
}
<div id="zero"> 
 
    <div id="container"> 
 
    <img src="450x300.jpg"> 
 
    <h2 id="title">Title</h2> 
 
    </div> 
 
    <p>How to get rid of the white space below the image?</p> 
 
</div>

+0

Merci pour votre commentaire. Changer la valeur d'affichage pour img à bloquer l'a résolu pour moi. –