html中的文档类型定义

时间:2010-10-07 09:53:21

标签: javascript html

如果我在此行<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">上方添加Js脚本,那么CSS无效。有没有办法解决这个问题

<script type="text/javascript">
<?php  $data3  = getmaildata(); ?>
var collection = [<?php echo  $data3; ?>]; 
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org  /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>.:: sample ::.</title>
<link rel="stylesheet" href="css/stylesheet.css" type="text/css">

4 个答案:

答案 0 :(得分:2)

脚本元素可以出现在头部或正文中,它不能出现在Doctype之前,并且根元素(<html>)之外不会出现任何元素。

如果Doctype(带有一些不适用于这种情况的附带条件)不是文档中的第一件事,那么浏览器将进入Quirks模式(并模拟旧版浏览器中使用CSS和DOM处理的错误) )。

没有办法解决这个问题(浏览器很好地支持),所以只需编写有效的代码,不要试图将脚本元素放在不允许的地方。

答案 1 :(得分:0)

<script>代码通常放在<head></body>之前,我不知道它是否相关,但您的代码仍无效。

答案 2 :(得分:0)

如果您将SCRIPT元素放在适当的位置,HEAD部分或BODY中会发生什么? 另外,我不知道$ data3包含什么,但如果它是一个字符串而不是一个整数,那么它应该用引号括起来。

答案 3 :(得分:0)

在标记之前,doctype声明应该是HTML文档中的第一件事。

doctype声明不是HTML标记;它是Web浏览器关于页面编写的标记语言版本的说明。

doctype声明引用文档类型定义(DTD)。 DTD指定标记语言的规则,以便浏览器可以正确地呈现内容。

http://www.w3schools.com/tags/tag_DOCTYPE.asp