【发布时间】:2015-05-02 05:39:59
【问题描述】:
我正在尝试学习 HTML/CSS 并在添加时发现 显示:-webkit-flex;对于 CSS,导航中的最后一个 div 被推到下一行。当我通过简单地删除该行来禁用弹性框时,div 会跳回到(内联块)导航。我目前正在 safari 中进行测试
该页面在 Firefox 中看起来应该是这样,但在 Safari 中却不是,有什么建议吗?
代码如下:
<body>
<header>
<div class="logo">
<h1>Guitar site</h1>
</div>
<nav>
<div class="leftMenu">
<a href="index.html" class="menuButton">Home</a>
</div>
<div class="centerMenu">
<div>
<a href="beginner.html" class="link">Beginner</a>
</div>
<div>
<a href="advanced.html" class="link">Advanced</a>
</div>
<div>
<a href="tips.html" class="link">Tips</a>
</div>
</div>
<div class="rightMenu">
<a href="contact.html">Contact</a>
</div>
</nav>
</header>
<h1> test</h1>
</body>
这是我写的所有 CSS,还有一个我没有包含的 CSS 重置部分。
.leftMenu,
.rightMenu,
.centerMenu {
text-align: center;
display: inline-block;
border-bottom: solid .1em;
display: -webkit-flex;
}
.leftMenu,
.rightMenu {
background-color: #454ed6;
height: 2em;
padding-top: 1em;
width: 17.5%;
-webkit-justify-content: space-around;
}
.leftMenu {
float: left;
}
.rightMenu {
float: right;
}
.centerMenu a {
display: block;
height: 2em;
}
.centerMenu {
width: 65%;
height: 6em;
background-color: #86acbe;
-webkit-flex-direction: column;
-webkit-justify-content: space-around;
}
【问题讨论】:
-
您必须对父元素使用
display:-webkit-flex。还要使用标准格式display:flex。如果针对较旧的 safari 版本,请使用display: -webkit-box;检查演示 jsbin.com/silolomiqe/1/edit 在 chrome 和 firefox 中完美运行。