`
xzknet
  • 浏览: 300683 次
  • 性别: Icon_minigender_1
  • 来自: 河南
文章分类
社区版块
存档分类
最新评论

在XHTML文档中合适的使用CSS和JavaScript

阅读更多

在XHTML文档中合适的使用CSS和JavaScript

XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition) 定义XHTML是为了把HTML 4扩展成像XML 1.0一样的应用程序。

在许多站点中XHTML正在迅速的替代HTML 4;然而,主流浏览器对完全支持XHTML方面表现得不足,和网页设计师对HTML 4与XHTML的基本差异缺乏理解,产生了当今网络上的一个不断扩大的问题。

XHTML是XML,不是HTML

其中关于XHTML的主要的误解是,它仅仅是另外一个版本的HTML。这个误解产生于这样的事实:Microsoft® Internet Explorer只在文件以Mime类型为 text/html提交时,才支持XHTML,而标准中建议的类型其实是application/xhtml+xml

当一个XHTML页面的MIME类型被提交为text/html时,它被所有的浏览器当作HTML处理,就好像XHTML比起HTML来没有任何不同。但是当一个XHTML页面的MIME类型被提交为text/xmlapplication/xhtml+xml时,它将被当作XML文档处理,而设计和显示XML都是必须要遵守严格规则的。

真正的XHTML就是一个XML的应用,所以创建XHTML时也要遵守严格的规则。特别是:

  1. 未经过处理的<&不允许出现在CDATA区域(<!CDATA...>)之外。
  2. 注释(<!—— ... ——>)中不能包含双横线。
  3. 包含在注释(<!—— ... ——>)中的内容将被忽略。

在内嵌的stylescript中出现的问题

在被当作XML而不是HTML处理时,内嵌的style和script标记会产生几个不同的问题。

在内嵌的stylescript中使用注释

熟悉HTML的设计师通常把内嵌的stylescript内容放到注释中,这样可以在不支持样式和脚本的浏览器中隐藏它们。

<style type="text/css">
 <!--
  body {background-color: blue; color: yellow;}
 -->
</style>
<script type="text/javascript">
 <!--
  var i = 0;
  var sum = 0;
 
  for (i = 0; i < 10; ++i)
  {
    sum += i;
  }
  alert('sum = ' + sum);
 // -->
</script>

这个例子举例说明了特定的浏览器可以忽略注释里的内容。另外,这个例子还显示了不同的浏览器在处理text/xml或者 application/xhtml+xml内容时产生的不同问题。

Mozilla 1.1+/Opera 7
不能使用CSS,也不能执行JavaScript。
Netscape 7.0x/Mozilla 1.0.x
不能使用CSS,但可以执行JavaScript。
Internet Explorer 5.5+
无法正常显示文档。

包含双横线的内嵌stylescript

另一个把JavaScript包含在XHTML文件的注释中产生的问题,与在XHTML的注释中使用双横线会产生的问题一样。

<script type="text/javascript">
<!--
  var i;
  var sum = 0;

  for (i = 10; i > 0; --i)
  {
    sum += i;
  }
// -->
</script>

例子

在注释中使用内嵌style的CSS规则

例子1 - XHTML 1.0 Strict在text/html
这个例子举例说明当CSS规则包含内联和包含在注释中时的XHTML在text/html的行为。这个例子支持Netscape 7.x,Mozilla,Opera 7和Internet Explorer 5.5+那一个都能像期望一样应用CSS规则。
例子2 - XHTML 1.0 Strict在text/xml
这个例子举例说明当CSS规则包含内联和包含在注释中时的XHTML在text/xml的行为。这个例子支持Netscape 7.x,Mozilla,Opera 7但不支持Internet Explorer 5.5+。注意etscape 7.x,Mozilla和Opera同意包含在注释的内联CSS规则将被忽略。
例子3 - XHTML 1.0 Strict在application/xhtml+xml
这个例子举例说明当CSS规则包含内联和包含在注释中时的XHTML在application/xhtml+xml的行为。这个例子支持Netscape 7.x,Mozilla,Opera 7但不支持Internet Explorer 5.5+。注意etscape 7.x,Mozilla和Opera同意包含在注释的内联CSS规则将被忽略。

使用外部文件的CSS规则

例子4 - XHTML 1.0 Strict在text/html
这个例子举例说明当在使用外部文件的CSS规则的时候XHTML在text/html的行为。这个例子支持Netscape 7.x,Mozilla,Opera 7和Internet Explorer 5.5+。
例子5 - XHTML 1.0 Strict在text/xml
这个例子举例说明当在使用外部文件的CSS规则的时候XHTML在text/xml的行为。这个例子支持Netscape 7.x,Mozilla和Opera 7但不支持不支持Internet Explorer 5.5+
例子6 - XHTML 1.0 Strict在application/xhtml+xml
这个例子举例说明当在使用外部文件的CSS规则的时候XHTML在application/xhtml+xml的行为。这个例子支持Netscape 7.x,Mozilla和Opera 7但不支持不支持Internet Explorer 5.5+

建议

理解XHTML 1.0的HTML兼容指导

这个XHTML 1.0 HTML Compatibility Guidelines帮助创建XHTML文档向后兼容性在那些不能理解XML的老浏览器。

请注意那是纯粹的XHTML文档,你不需要使用xml-stylesheet处理指导,但应该使用link涉及的外部文件包含CSS。

分享到:
评论

相关推荐

    html+css+javascript 教程

    Hyper Text Markup Language...JavaScript中变量声明,采用其弱类型。 即变量在使用前不需作声明,而是解释器在运行时检查其数据类型 x=1234; //数值型变量 y=“4321”; //字符型变量 代码格式不一样 嵌入方式不一样

    精通Web标准网页布局 XHTML+CSS+JavaScript.rar(课本重点 源码)

    xhtml-transitional.html XHTML1.0 Transitional的文档的代码 xhtml.html 一个简单的XHTML示例 xhtml-show.html XHTML与浏览器 xhtml.html 软件开发的XHTML代码

    如何正确地在XHTML文档中使用JavaScript和CSS

    在越来越多的网站中,XHTML的使用正以很快的速度替代HTML4,但是,目前一些主流浏览器对XHTML的支持还不是很好,加上一些网页制作者对XHTML和HTML4之间的差异理解不够,使得XHTML在WEB发展上进程变得缓慢。...

    javascript,css,html,xhtml,dom,vbscript,nhibernate帮助文档

    javascript,css,html,xhtml,dom,vbscript,nhibernate帮助文档打包

    CSS/JavaScript /HTML 4.01/XHTML 1.0参考手册

    里面包含有HTML 4.01 XHTML 1.0 CSS JavaScript文档。内容包括HTML所有的标签库,CSS的所有属性和JavaScript几个关键的对象(Date、String、Array、Boolean、Math、Number、RegExp)

    CSS入门 XHTML文档结构树

    CSS通过与(X)HTML的文档结构相对应的选择器(selector)来达到控制页面表现的目的,而文档结构不仅仅在CSS的应用上非常重要,对于行为层(例如使用JavaScript控制元素的行为)同样也非常重要。 文档结构(X)HTML文档...

    HTML5 CSS3 帮助文档 chm

    HTML5 CSS3 帮助文档 chm 领先的 Web 技术教程 - 全部免费 在w3school,你可以找到你所需要的所有的网站建设教程。 从基础的HTML到XHTML,乃至进阶的XML、SQL、数据库、多媒体和WAP。 从左侧的菜单选择你需要的...

    CSS入门:XHTML文档结构树

    CSS通过与(X)HTML的文档结构相对应的选择器(selector)来达到控制页面表现的目的,而文档结构不仅仅在CSS的应用上非常重要,对于行为层(例如使用JavaScript控制元素的行为)同样也非常重要。  CSS通过与(X)HTML的...

    w3school(html ajax javascript css)

    国内最好的web开发帮助文档(包括html ajax javascript css等) 从基础的HTML到XHTML,乃至进阶的XML、SQL、数据库、多媒体和WAP。

    北京中科信软AJAX培训

    在普通文本和XML文档之间权衡 何时返回普通文本 何时返回XML文档 innerHTML的应用 案例研究:MSN Space MSN Space中的Ajax 持久化机制 实体类和服务类 初始化共享空间首页 固定链接 操作评论 引用通告 管理列表项 ...

    HTML5+CSS3.0+JQUERY+JS+XHTML手册集合

    基于JQuery的插件LigerUI,用于前端快速开发平台,包含文档和源码

    WEB帮助文档大全 J2EE帮助大全 WEB帮助文档大全 J2EE帮助大全 网页帮助文档大全

    WEB帮助文档大全,J2EE帮助大全,WEB帮助文档大全,J2EE帮助大全,网页帮助文档大全 :内包含多种帮助文档,HTML XML CSS JAVASCRIPT HIBERNATE SPRING JSP STRUTS XHTML

    chm中文文档.zip

    [Java参考文档].JDK_API_1_6_zh_CN.CHM,CSS 2.0 中文手册,CSS 3.0参考手册,Javascript参考手册,JDK_API_1_6_zh_CN,W3CSchool,xHTML参考手册.

Global site tag (gtag.js) - Google Analytics