WEB开发网
开发学院网页设计JavaScript javascript <![CDATA[的web标准使用方法 阅读

javascript <![CDATA[的web标准使用方法

 2010-01-15 00:00:00 来源:WEB开发网   
核心提示: 根据《HTML兼容性指导方针》(http://www.w3.org/TR/2002/REC-xhtml1-20020801/#C_4),W3C对于这种情况的说明是: Use external style sheets if your style sheet uses < or & or ]

根据《HTML兼容性指导方针》(http://www.w3.org/TR/2002/REC-xhtml1-20020801/#C_4),W3C对于这种情况的说明是:

Use external style sheets if your style sheet uses < or & or ]]> or --. Use external scripts if your script uses < or & or ]]> or --.

即:XHTML工作在XML标准模式下(application/xhtml+xml),使用<![CDATA[即可;XHTML工作在兼容模式下(text/html),请使用外部script文件。

为什么浏览器不支持text/html模式下的<![CDATA[呢?

再来看http://www.w3.org/TR/2002/REC-xhtml1-20020801/#h-4.8 :

CDATA sections are recognized by the XML processor and appear as nodes in the Document Object Model 

即:CDATA是XML解析器能够识别的。当XHTML工作在兼容模式下(text/html),此时浏览器使用HTML解析器,所以不识别CDATA。

有两种方法能够解决这个问题。

一:工作在html模式下,向新兼容XML解析器(即符合XML语法),使用下面的代码(保存为itworks.xhtml或者itworks.html都可以执行):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-Hans" lang="zh-Hans">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <title>test</title>
    <script type="text/javascript">
        //<![CDATA[
        if(1<2)
        {
            alert('a');
        }
        //]]>
    </script>
</head>
<body>
<p>html,It works.
</p>
</body>
</html> 

上一页  1 2 3 4 5  下一页

Tags:javascript lt CDATA

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接