【发布时间】:2015-11-11 03:52:59
【问题描述】:
我遇到了一个问题,谷歌浏览器没有在我的菜单标题中选择左边距和右边距以使跨度居中。我进行了搜索,但似乎找不到有效的解决方案。它在 Safari 和 Firefox 中运行良好。有人可以解释或指出我正确的方向吗?我希望有一个没有 css hack 的解决方案。
菜单是一个包含 5 个元素的水平列表,第 3 个元素是我将放置徽标和标题的元素。我将这三个都放入一个跨度中,并为带有徽标的跨度提供一个 bg 图像和一个文本缩进。带有标题的跨度在所有浏览器中都显示得很好,带有徽标的跨度仅在 safari en firefox 中显示良好,而不是在 chrome 中。 我在加载样式表之前加载了 normalize.css。
<!-- language: lang-html -->
<nav class="main-nav">
<ul id="menu" class="main-nav-list">
<li class="main-nav-item main-nav-hover"><a href="#pagesection" class="main-nav-link test" title="Over ons">Over ons</a></li>
<li class="main-nav-item main-nav-hover"><a href="#pagesection" class="main-nav-link" title="Wat we doen">Wat we doen</a></li>
<li class="main-nav-item">
<div class="main-nav-home">
<span class="main-nav-title">title</span>
<span class="main-nav-subtitle">slogan</span>
<span class="main-nav-logo">Logo</span>
</div>
</li>
<li class="main-nav-item main-nav-hover"><a href="#pagesection" class="main-nav-link" title="Portfolio">Portfolio</a></li>
<li class="main-nav-item main-nav-hover"><a href="#pagesection" class="main-nav-link" title="Contact">Contact</a></li>
</ul>
</nav>
<!-- language: css -->
nav {
position: fixed;
background-color: #000;
width: 100%;
height: 100px;
top: 0;
left: 0;
z-index: 10;
border-bottom: 5px solid #333;
}
.main-nav {
width: 100%;
}
.main-nav-list {
position: relative;
overflow: hidden;
padding: 0;
display: inline;
margin: 0;
}
.main-nav-item {
position: relative;
display: block;
list-style: none;
float: left;
text-align: center;
width: 20%; /* fallback for non-calc() browsers */
width: calc(100% / 5);
height: auto;
box-sizing: border-box;
margin: 0;
padding: 0;
}
.main-nav-home {
position: relative;
width: 100%;
height: 300px;
margin-left: auto;
margin-right: auto;
}
.main-nav-title {
text-decoration: none;
display : block;
color: #00ffff;
font-size: 34px;
font-family: 'trenchthin';
text-align: center;
color: #fff;
width: 100%;
margin-top: -1%;
}
.main-nav-subtitle {
text-decoration: none;
display : block;
color: #00ffff;
font-size: 17px;
font-family: 'nexa_lightregular';
white-space: nowrap;
width: 100%;
margin-top: -3%;
margin-left: -2px;
}
.main-nav-logo {
display : block;
text-indent: -9999px;
z-index: 11;
position: fixed;
width: 20%;
height: 100px;
margin-left: auto;
margin-right: auto;
color: #fff;
text-decoration: none;
border: 0;
padding : 0;
background : url('../images/logo.png');
background-size: 100px 100px;
background-repeat: no-repeat;
background-position: center;
}
【问题讨论】: