Я пробовал проверку W3C Markup с помощью простой HTML-страницы.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Title</title>
<script src="/myScript.js" type="text/javascript"></script>
<link href="/theme.css" rel="stylesheet"></link>
<!--[if lte IE 8]>
<link href="/themeIE8.css" rel="stylesheet"></link>
<![endif]-->
<noscript>Please enable JavaScript in your browser to view this page properly, to view the basic page of the site click the link <a href="no-javascipt/main.aspx">main.aspx</a>
</noscript>
</head>
<body class="layout">
<div class="header"></div>
<div class="content"></div>
<div class="footer"></div>
</body>
</html>
и получили следующие ошибки
Я предполагаю, что в noscript
тег (или вообще в самой голове тега) с использованием элементов DOM, как не в порядке, Есть ли альтернатива этому? a
т.е. если скрипт не найден, укажите ссылку на страницу, которая не нуждается в скрипте
и любая идея относительно того, почему я получаю ошибки для тегов link
& body
? благодаря
тег link
не имеет тега close, . Таким образом, он недействителен. Если вы хотите закрыть его в строке, сделайте это так:</link>
<link ... />
Кроме того, вы должны переместить свой <noscript>
тега внутри body
тега и между head
тегом, поскольку он содержит текстовое содержимое.
Хотя, используя что - то вроде этого является действительным, если вы поместите в head
метке 1.
<noscript><link href="/theme.css" rel="stylesheet" /></noscript>
1. В элементе head, если скрипт отключен для элемента
noscript
Элементnoscript
должен содержать толькоlink
,style
иmeta
элементы.В элементе head, если скрипт включен для элемента
noscript
Элементnoscript
должен содержать только текст, за исключением того, что при вызове алгоритма синтаксического анализа фрагмента HTML элемент noscript является элементом контекста и текстовым содержимым, так как вход должен содержать список узлов, которые состоят только изlink
,style
иmeta
элементов, которые будут соответствовать, если они являютсяnoscript
элементами элементаnoscript
и не содержат ошибок разбора.
Правильная разметка
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Title</title>
<script src="/myScript.js" type="text/javascript"></script>
<link href="/theme.css" rel="stylesheet" />
<!--[if lte IE 8]>
<link href="/themeIE8.css" rel="stylesheet" />
<![endif]-->
</head>
<body class="layout">
<noscript>Please enable JavaScript in your browser to view this page properly, to view the basic page of the site click the link <a href="no-javascript/main.aspx">main.aspx</a>
</noscript>
<div class="header"></div>
<div class="content"></div>
<div class="footer"></div>
</body>
</html>
Проверьте ссылку стиля, которая неверна. Ссылка стиля должна быть закрыта. т.е.
<link href=".." rel="stylesheet" />
и потому что написанный текст не связан стилем или скриптом, поэтому он должен находиться под тегом body.
</link>
изif lte IE 8
.