Html div margin auto中的中心div不';行不通

Html div margin auto中的中心div不';行不通,html,css,Html,Css,嗨,我有以下代码: CSS .center{ width: 100%; margin: 0 auto; border: 1px solid red; } .nav{ background: #606060; width: 90%; } HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link

嗨,我有以下代码: CSS

.center{
    width: 100%;
    margin: 0 auto;
    border: 1px solid red;
}

.nav{
    background: #606060;
    width: 90%;
}
HTML

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <link rel="stylesheet" href="css/stylesheet.css" />
        <title></title>
    </head>
    <body>
        <div class="center">
             <div class="nav">
                <p>Ahoj</p>
             </div>
        </div>
    </body>
</html>

阿霍

我还尝试了
.center
而没有
width:
我在这里搜索了所有主题,但没有找到解决方案
.nav
div仍保留在左侧。 谢谢你的帮助

.nav {
background: #606060;
width: 90%;
display: block;
margin: 0 auto;

}给
空白:0自动
。导航
类不到
。中心

.center{
宽度:100%;
边框:1px纯红;
}
.导航{
背景#606060;
宽度:90%;
保证金:0自动;
}

阿霍


您不需要定义页边距:0自动;宽度为100%时。如果要将固定宽度的分割定位到父div的中心,则此选项是必需的

.center{
宽度:100%;
边框:1px纯红;
}
.导航{
背景#606060;
宽度:90%;
保证金:0自动;
}

阿霍


将此CSS添加到您的
.nav
类中

.nav {
 .
 .
 margin: 0 auto;
 text-align: center
}

块级元素不能居中,因为它总是适合其容器的
100%
宽度,所以我建议使用
内联块。
.center{
宽度:100%;
保证金:0自动;
边框:1px纯红;
文本对齐:居中;
}
.导航{
背景#606060;
宽度:90%;
显示:内联块;
}

阿霍


您是否尝试添加
页边距:0自动
.nav
,然后设置
文本对齐:居中
?@Krusader谢谢!真管用!我在下面添加了一个答案,所以如果它帮助你,请考虑把它当作答案。解释在哪里,仅仅倾倒代码不是一个好答案?你能描述一下解决方案吗?解释为什么这个CSS代码应该工作。我只能看到CSS代码(没有代码片段,格式不好)。我(我不是落选者)对不起,我不认为这样的问题需要一个完整的教程。stackoverflow从什么时候开始成为教程杂志?请阅读帮助:感谢您提供的这段代码片段,它可能会提供一些有限的、即时的帮助。通过说明为什么这是一个很好的问题解决方案来正确解释它的长期价值,并将使它对未来有其他类似问题的读者更有用。请在您的回答中添加一些解释,包括您所做的假设。