Как победить глюк с border в IE7?

Доброго времени суток.
В данный момент решил сверстать пару макетов, чтобы подтянуть свои знания и умения в верстке.
Возникла проблема с меню.
Как должно быть (Chrome 32):
020df2ad0f7d2dce8f66da2ab07ed0e2.png
Как это отображается в IE7:
91d3f6ae9e6eb0e0313bba5c67488a4f.png
Код:
<nav>
		<ul>
			<li class="active"><a href="">Home</a></li>
			<li><a href="">Apparel</a></li>
			<li><a href="">Fashion</a></li>
			<li><a href="">News</a></li>
			<li><a href="">Portfolio</a></li>
			<li><a href="">Contact</a></li>
		</ul>
</nav>

nav {
	text-align: center;
	border-bottom: 4px solid #d9d9d9;
	border-top: 4px solid #d9d9d9;
}
nav ul {
	margin: 0;
}
nav li {
	display: inline-block;
	*display: inline; /* IE 7, 6 */
}
nav .active a {
	color: #3bbdfb;
}
nav li a {
	display: inline-block;
	padding: 30px 10px;
	color: #111;
	text-decoration: none;
	position: relative;
}
nav li a:hover {
	background: #f7f7f7;
	color: #3bbdfb;
	margin: -4px 0;
	border-bottom: 4px solid #bab7b7;
	border-top: 4px solid #bab7b7;
}

Буду благодарен, если кто подскажет, как можно обойти этот баг.
  • Вопрос задан
  • 2719 просмотров
Решения вопроса 1
HDApache
@HDApache
PHP программист
Может это пресловутый hasLayout
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Похоже на Internet Explorer box model bug. Если оно, то просто добавьте DTD в документ. Или манипулируйте padding вместо margin. Что-то типа
nav li a:hover {
    background: #f7f7f7;
    color: #3bbdfb;
    padding-bottom: 26px;
    border-bottom: 4px solid #bab7b7;
    border-top: 4px solid #bab7b7;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы