CSS “margin: 0 auto” not centering

前端 未结 5 984
独厮守ぢ
独厮守ぢ 2021-01-12 04:40

Okay I understand that this topic has been covered. But I have looked at various solutions and have had little success with them.

I just have no clue why this

相关标签:
5条回答
  • 2021-01-12 04:48

    Another fix that worked for me was to change the display for the parent to display: inline in the CSS and set a max-width so that margin auto centers the text. So far, that has fixed the problem. Not sure if it's the best solution, but it's currently working. See the code below:

    .parent-container{
        display: inline;
        max-width: 500px;
        padding: 20px; 
        margin: 0 auto; 
    }
    
    0 讨论(0)
  • 2021-01-12 04:52

    You should set a width on .container to let the margin: 0 auto; work. See the updated JSfiddle.

    0 讨论(0)
  • 2021-01-12 04:54

    It is working.

    The problem is you're centering a div, which is a block-level element by default, and which therefore occupies 100% width of its parent (body, in this case). So there's no space to move horizontally, hence no space to center.

    For an illustration see this revised demo, which has an added border around .container.

    If you reduce the width of .container you'll see the centering work. Here's a second revised demo with width: 50% applied to .container.

    0 讨论(0)
  • 2021-01-12 04:55

    You should specify the width of the div for margin:auto to work. try to use width in percentage to make your div responsive as well.

    0 讨论(0)
  • 2021-01-12 05:11

    It actually works, but without specifying the width it takes full 100%. Try something like:

       .container {
        margin: 0 auto;
        width:50%;
        }
    

    Hope this may help

    0 讨论(0)
提交回复
热议问题