Кажется, я не могу понять, чего не хватает. Все затронутые элементы имеют display:block
Пример стиля для элемента header
:
header
{
width: 923px;
height: 55px;
background: #395168;
margin-top: 25px;
}
Кажется, я не могу понять, чего не хватает. Все затронутые элементы имеют display:block
Пример стиля для элемента header
:
header
{
width: 923px;
height: 55px;
background: #395168;
margin-top: 25px;
}
IE 6-8 не знает о теге header, поэтому к нему нельзя применить стили. Чтобы IE распознал этот тег, добавьте приведенный ниже сценарий в раздел head.
<script language='javascript'>
document.createElement('header');
</script>
Это решит вашу проблему.
Решил вопрос. Что я сделал, так это то, что я поместил ссылку на сценарий под ссылкой на таблицу стилей, и внезапно IE 6-8 применил мои стили.
<link rel="stylesheet" href="styles/style.css" type="text/css">
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
Большое спасибо за попытку помочь мне :)
Может, просто попробуй дать ему класс?
IE в настоящее время не позволяет применять стили к этим элементам. Я решаю это, оборачивая их в другой div:
<div class="header">
<header>
</header>
</div>
Это явно не очень хорошо, но оно превосходит любое решение, основанное на JS, поскольку оно не будет странно отображаться с отключенным JS.
У меня была эта проблема сегодня, обновился до последней версии кода html5shiv (теперь перемещен в Github здесь: https://github.com/aFarkas/html5shiv), переместил таблицу стилей над ссылкой на скрипт, у всех элементов был установлен display: block, но стилизовать их все равно не удалось ...
Я понял, что в моей разметке нет объявления doctype - добавив:
<!DOCTYPE html>
решил проблему, теперь все стили применяются правильно - так что полное решение:
<!DOCTYPE html>
<html>
<head>
<link href="/css/styles.css" rel="stylesheet" type="text/css">
<script src="/js/html5shiv.min.js"></script>
</head>
<body>
<!-- html 5 markup -->
</body>
</html>