介绍一下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是一样的。

以上只是简单的介绍,更多详细内容参考百度百科的各个介绍。

  

htm,html,xhtml,xml,xsl,dhtml,shtm和shtml的区分的更多相关文章

  1. HTML、XHTML XML和DHTML的区别

    XML与HTML的设计区别是:XML是用来存储数据的,重在数据本身.而HTML是用来定义数据的,重在数据的显示模式 XHTML(The Extensible HyperText Markup Lang ...

  2. Jsoup问题---获取http协议请求失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.

    Jsoup问题---获取http协议请求失败 1.问题:用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不 ...

  3. Jsoup获取部分页面数据失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.

    用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求. 请求代码如下: private static ...

  4. Jsoup获取部分页面数据失败 Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml

    用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求. 请求代码如下: private static ...

  5. XSLT可扩展样式表语言转换 System.Xml.Xsl、XslCompiledTransform类

    XML文件 books.xml: <?xml version="1.0" encoding="utf-8" ?> <bookstore> ...

  6. JavaEE XML XSL转换(XSLT)

    XSL转换(XSLT) @author ixenos 定义: XSL转换机制可以指定将XML文档转换为其他格式的规则,例如,txt纯文本.XHTML或其他任何XML格式. 用途: XSLT通常用来将某 ...

  7. HTML \ XHTML \XML 的区别

    虽然是很简单的知识,但如果总是在需要的时候去查找,不需要的时候就丢掉,未免心里总是觉的不踏实.因为你就像是垃圾收购站,有垃圾(知识)就往里面拖,拖不下了就丢掉一些(忘了).不去整理,也因此也不知道丢的 ...

  8. Html笔记(十)XHTML XML

    XHTML 是可扩展的超文本标记语言(Extensible HyperText Markup Language). XHTML 是 w3c 组织在2000年的时候为了增强HTML推出的,本来是想替代H ...

  9. C++builder XML XSL 代码生成

    void __fastcall TFrmGenCode::XSLTxml1Click(TObject *Sender) { // XSLT转换xml文件格式 _di_IXMLDocument xml; ...

随机推荐

  1. WKWebView简单使用及关于缓存的问题

    Xcode8发布以后,编译器开始不支持IOS7,所以很多应用在适配IOS10之后都不在适配IOS7了,其中包括了很多大公司,网易新闻,滴滴出行等.因此,我们公司的应用也打算淘汰IOS7.支持到IOS8 ...

  2. ABAP术语-Function Group

    Function Group 原文:http://www.cnblogs.com/qiangsheng/archive/2008/02/13/1067699.html Group of logical ...

  3. mysql like 变量

    Mysql: select * from 表名 where 字段 like concat('%',变量,'%');  

  4. 爬虫——使用BeautifulSoup4的爬虫

    我们以腾讯社招页面来做示例:http://hr.tencent.com/position.php?&start=0#a 如上图,使用BeautifulSoup4解析器,将图1中229页,每页1 ...

  5. mysql数据库和数据表的简单操作

    一.数据库的增删改查 1.新建数据库 CREATE DATABASE 数据库名 charset utf8; 数据库名规则:可以由字母.数字.下划线.@.#.$ 区分大小写, 不能使用关键字如 crea ...

  6. hibernate中配置单向多对一关联,和双向一对多,双向多对多

    什么是一对多,多对一? 一对多,比如你去找一个父亲的所有孩子,孩子可能有两个,三个甚至四个孩子. 这就是一对多 父亲是1 孩子是多 多对一,比如你到了两个孩子,它们都是有一个共同的父亲. 此时孩子就是 ...

  7. MIP组件开发 自定义js组件开发步骤

    什么是百度MIP? MIP(Mobile Instant Pages - 移动网页加速器)主要用于移动端页面加速 官网参考:https://www.mipengine.org/doc/00-mip-1 ...

  8. Vue简单使用,

    一些零碎的知识点: 在js中变量的声明 有三种方式: let,var, const let: 对应的是一个块级作用域 { let a = 12 } console.log(a) 这是未声明的, var ...

  9. ctf题目writeup(6)

    2019.2.2 依旧是bugku上面的题目,地址:https://ctf.bugku.com/challenges 1. 解压后是60多个out.zip,都是真加密,里面都是1kb的data.txt ...

  10. ubuntu配置机器学习环境(三) opencv 安装

    这里使用脚本安装 一些教程里使用cmake 安装,很容易出错的 使用github上的安装脚本,自动化安装 参考链接 Ubuntu $ cd Ubuntu/2.4 $ chmod +x * # 如果要安 ...