验证我的文档时,我不明白该错误:
第14行,第91列:文档类型不允许元素“链接”
...... {(' <link rel="stylesheet" type="text/css" href="1400.css" media="screen" />');
✉
上面提到的元素是在不允许的上下文中找到的。这可能意味着您有错误的嵌套元素 - 例如“body”部分中的“style”元素而不是“head”内部 - 或者两个重叠的元素(不允许)。
此错误的一个常见原因是在HTML文档中使用XHTML语法。由于HTML的隐式闭合元素规则,此错误可以创建级联效果。例如,在HTML文档的“head”部分中使用XHTML的“自闭”标签“meta”和“link”可能会导致解析器推断出“head”部分的结尾和“body”的开头“section(不允许使用”link“和”meta“;因此报告错误)。
代码是:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
<title>Portfolio</title>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8" />
<link id="disabled" type="text/css" rel="stylesheet" href="disabled.css" media="screen"/>
<script type="text/javascript">
document.write(' <link rel="stylesheet" type="text/css" href="1400.css" media="screen"/>');
document.write('<link rel="stylesheet" type="text/css" href="1024.css" media="screen"/>');
document.write(' <link rel="stylesheet" type="text/css" href="320.css" media="screen"/>');
document.write(' <link rel="stylesheet" type="text/css" href="Ipad.css" media="screen"/>');
</script>
<!--[if IE]>
<link rel="stylesheet" href="IE.css" media="screen"/>
<![endif]-->
<!--[if IE 6]>
<link rel="stylesheet" href="disabled.css" media="screen"/>
<![endif]-->
<link rel="shortcut icon" href="images/favicon.png" />
</head>
<body>
我想知道的是如何解决这个问题,因为我采用这种方式进行优雅降级(禁用JS的用户)
答案 0 :(得分:0)
您的文档正在被解析为严格的XML。
XML解析器在Javascript字符串中看到<link />
标记,并抱怨<link>
s不能嵌套在<script>
内。