3 votes

Margin-top de ne pas travailler sur un élément non flottant

J'ai un div parent #modal_share qui contient un div flottant modal_big_hline et un div non flottant modal_big_button_container (avec clear: both ).

modal_big_button_container La feuille de style en cascade (CSS) est créée pour lui permettre d'avoir la largeur de la division parent moins 25px sur les côtés gauche et droit.

Problème : Changer le margin-top de modal_big_button_container n'entraîne pas de déplacement vers le haut/bas, mais reste dans la même position, bien que l'on puisse voir que sa marge change à l'aide des outils de développement de Chrome.

Pourquoi cela se produit-il, et comment puis-je résoudre ce problème ? Merci !

CSS

#modal_share {
    width: 565px;
    height: 400px;
    position: relative;
    background: whiteSmoke;
    padding-top: 10px;      
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -webkit-box-shadow: 0px 3px 16px #222;
    -moz-box-shadow: 0px 3px 16px #222;
    box-shadow: 0px 3px 16px #222;
    display: none;  
}

.modal_big_hline {
    width: 100%;
    height: 1px;
    margin-top: 25px;
    border-top: 1px solid #CCC;
    float: left;
}

#modal_big_button_container {
    height: 14px;
    width: auto;
    margin: 10px 25px 0px 25px;
    clear: both;
}

Structure HTML

<div id="#modal_share">
    <div class="modal_big_hline"></div>
    <div id="modal_big_button_container"></div>
</div>

JSFiddle : http://jsfiddle.net/5LG2w/

2voto

AndrewM Points 984

Essayez

modal_big_button_container{
    position: relative;
      top: 20px;
}

http://jsfiddle.net/5LG2w/2/ .

ou vous pouvez enlever le float de .modal_big_hline. alors votre margin-top fonctionnera - http://jsfiddle.net/5LG2w/3/ .

#modal_big_button_container {
    height: 14px;
    width: auto;
    margin: 10px 25px 0px 25px;
    clear: both;
    background: red;
}

0voto

techfoobar Points 33807

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X