Question

Je cherche un moyen d'afficher une boîte de dialogue de confirmation toujours centrée sur la page et flottant au-dessus de la page.

J'ai essayé, mais ce n'est pas du tout "toujours centré", car la position est fixe:

.Popup
{
    text-align:center;
    position: absolute;
    bottom: 10%;
    left: 27%;
    z-index:50;
    width: 400px;
    background-color: #FFF6BD;
    border:2px solid black;
}

Une idée? Merci

Était-ce utile?

La solution

Essayez d'utiliser ce CSS

#centerpoint {
    top: 50%;
    left: 50%;
    position: absolute;
}

#dialog {
    position: relative;

    width: 600px;
    margin-left: -300px;

    height: 400px;
    margin-top: -200px;
}
<div id="centerpoint">
    <div id="dialog"></div>
</div>

#centerpoint doit être la division conteneur de la boîte de dialogue

Notez que la #centerpoint DIV doit être à l'intérieur de l'élément body ou à l'intérieur d'éléments qui ne possèdent pas de position: relative; propriété

Autres conseils

Par rapport à la réponse de @ Toma, vous pouvez le faire sur un élément

#theDiv {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 200px;
    margin-left: -100px;
    height: 50px;
    margin-top: -25px;
    background: yellow;
}
<div id="theDiv" />

Cela vous permet de le placer n'importe où sur la page, quels que soient les conteneurs parents et leurs propriétés position .

La transformation CSS3 peut être utilisée pour éviter la largeur et les marges codées en dur:

.dialog {
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

Exemple d'utilisation: http://tympanus.net/ codrops / 2013/06/25 / nifty-modal-window-effects /

.Popup
{
width:400px;
margin-left:auto;
margin-right:auto;
}

C'est l'alignement horizontal; l'alignement vertical est un peu plus délicat. Il suffit de faire une recherche Google pour "css vertical center". ou quelque chose.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top