CSS 没有宽度的元素的边距

CSS margins for elements with no width

我需要将没有宽度的 div 元素居中(它的宽度来自内部 div。

<html>
<head>
    <title></title>
    <style type="text/css">
    .outer {
        padding: 10px;
        /*margin: auto; (doesn´t work)*/
        background-color: #000;
        display: inline-block;
    }
    .inner {
        width: 400px;
        height: 400px;
        text-align: center;
        background-color: #CCC;
    }
    </style>
</head>
<body>

    <div class="outer">
        <div class="inner"></div>
    </div>
</body>
</html>

知道如何在不设置宽度的情况下解决这个问题吗?

对于水平居中,假设parent是相对的;

   .outer {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        padding: 10px;
        background-color: #000;
        display: inline-block;
    }

你可以把它放在正文或 .outer

这将使您的 div 水平和垂直居中对齐。

position: absolute; 
top:50%;
left: 50%;
transform: translate3d(-50%,-50%, 0);