CSS “margin: 0 auto” not centering

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.

Leave a Comment