介绍一下htm,html,xhtml,xml,shtml的区分,以下内容来自百度后的知识整理。
HTML和htm:
HTML(Hypertext Markup Language)超文本传输语言,是www的描述语言,由HTML命令组成的+描述性文本,页面中没有服务端执行的语言。而htm,实际上和HTML没有本质意义的区别,只是为了满足DOS仅能识别8+3(文件名不超过8个字符,扩展名不超过3个字符)的文件名而已,因为一些老的系统不能识别四位的文件名,所以某些网页服务器要求index.html的最后一个字母 l 不能省略。MSIE能自动识别和打开这些文件,但是编写网页地址的时候必须是完全对应的,也就是index.html 和 index.htm 是两种不同的文件,对应着不同的地址(UNIX系统对大小写敏感,所以不吻合的话就可能报没有文件或者找不到文件)。
XML,XSL和XHTML:
XHTML(The Extenaible HyperText Markup Language)可扩展超文本标示语言缩写;XML(Extensive Markup Language)可扩展标示语言。
XML的设计宗旨是传输和存储数据,而不是显示数据,是对HTML的补充,可以对文档和数据进行结构化处理从而能够在部门,客户和供应商之间交换,实现动态内容的生成;
XML转换数据的能力强大,只是面对上千万的已经存在的站点,直接采用XML是不适合的,所以出现了XHTML,后者是在HTML4.0的基础上,用XML的规则对其扩展,得到了XHTML,可以认为XHTML是HTML向XML的过渡,XHTML的语法要求更严谨些。而且XHTML和CSS结合后,既能实现样式和内容的分离,又能有机的组合网页的代码,在另外的单独文件中,还可以混合各种XML应用(SVG等)。
XSL用来规定XML的文档样式语言,XSL能使Web浏览器改变原有文档的表示法, 例如改变数据的显示顺序,不必再与服务器进行交互通信,通过样式表的变换,同一文档可以显示更大,或者经过折叠只显示外面的一层。 XSL 凭借本身的扩展性,可以控制无穷的标记,而且控制标记的方式也是无穷的,这给Web提供了高级的布局特性,如文本的旋转,多列,独立区域。同时支持国际书写格式,可在一页上混合使用从左到右,右到左,上到下的书写格式。XSL标准介于CSS和SGMI的文档样式语义和规范语言之间的。
DHTML:
DHTML(Dynamic HTML)动态HTML,是相对传统的静态HTML而言的一种网页概念(是一种概念而不是技术),并不是一门语言,只是HTML,CSS和客户端脚本的一种集成,是一种将目前已有的网页技术,语言的标准整合运用,制作出下载后仍然能实时变换页面元素的网页技术概念。
DHTML就是网页从Web服务下载后不需要再经过服务器的处理,而在浏览器中直接动态更新网页内容,版本样式,动画等,可以使网页设计者创建出能够和用户交互并包含动态内容的页面。
SHTML和HTML的区别:
SHTML:包含有嵌入式服务器方包含命令的html文本,在被传送到服务器端前,服务器会对SHTML文档完全的读取,分析和修改。
你可以在SHTML文件中用SSI指令引用其他的html文件,服务器传送给客户端的文件是已经解释的SHTML,不会有SSI指令,它实现了HTML所没有的功能,即实现了动态的SHTML。
SHTML是一种SSI技术的文件,也就是 Server Side Include--SSI服务器端包含指令,如果Web Server 有SSI功能的话(尤其是基于Unix平台的web服务器和Netscape Enterprise Server等都支持SSI命令)会对shtml文件特殊招待,先扫描一次shtml文件看有没有特殊的SSI指令,如果有就按照Web Server设定规则解释SSI指令,解释完后跟一般html一起调去客户端。
SHTML使用SSI的文件扩展名,SSI通常称为“服务器嵌入”或者叫做"服务器包含",是一种类似ASP的基于服务器的网页制作技术。
SSI的工作原理:将内容发送到浏览器之前,可以使用“服务器包含端“指令将文本,图形或应用程序信息包含到网页中,例如:可以使用SSI包含时间、日期戳,版权声明或供客户端填写并返回表单,对于多个文件中重复出现的文本或图形,使用包含文件是一种简便的方法,将内容存入一个包含文件中即可。而不必将内容输入所有文件。通过一个非常简单的语句可调用包含文件 ,这个语句指示Web服务器将内容插入适当的网页,使用包含文件时,对内容的所有更改只需要在一个地方就能完成。
因为包含SSI指令的文件要求特殊处理,所以必须为所有SSI文件赋予文件扩展名,默认是.stm,.shtm和.shtml。
Web服务器在处理网页的同时处理SSI指令,当Web服务器遇到SSI指令时,直接将包含文件的内容插入到HTML网页中,如果包含文件中包含SSI指令,则同时插入此文件。除了用于包含文件的基本指令外,还可以使用SSI指令插入文件的相关信息或者运行应用程序或shell命令。
网站维护常常遇到当网站的结构已经固定,但为了更新内容不得不做大批页面,而SSI提供了一种简单的有效方法,它将一个网站的基本结构放到几个简单的HTML文件(模板)中,以后我们要做的只是将文本传到服务器,让程序按照模板自动生成网页,使管理大型网站稍微容易点。
所以利用SHTML格式的页面和ASP差不多,但是因为API所以运转速度更快,效率比ASP快,比HTML慢,但由于使用服务器端包含,因此页面更新容易(特别是批量更新banner,版权等)。
html或htm是一种静态的页面格式,里面没有服务器端执行的脚本,所以不需要服务器解析其中的脚本,而shtml基于SSI技术,当有服务器端可执行脚本被当做一种动态编程语言(如PHP,JSP,ASP)来看待;当shtml或shtm中不包含服务器端可执行的脚本时和html或htm是一样的。
以上只是简单的介绍,更多详细内容参考百度百科的各个介绍。