一、HTML介绍
(一)、什么是HTML?
HTML是HyperText Markup Language的简写,中文名为:超文本标记语言。
“超文本”按其本义来讲,是超级链接文本,它是使用链接的形式,从一个页面链接至另一个页面,从一个字或一个词或一句话延伸出更详细的解说或相关的解说。这有别于我们传统的文字阅读形式,传统的文字阅读,以一本书为例,无论如何阅读都将局限于该书籍本身;但超文本不是这样,以一句偈言“菩提本无树,明镜亦非台”为例,我们不明白“菩提”是什么意思,而“菩提”刚好制作了超级链接,它链接至“菩提”的详解页面,我们点击“菩提”二字即可链接至详解页面,当我们在详解页面有新的疑惑出现时,又有相关的超级链接可以点击。类似的,这种超文本形式,它是无限延伸的文本。
按官方定义来讲,超文本标记语言(HTML),是一种将超文本以及超文本相关的其他信息结合起来,展现出关于文档结构、超链接信息和数据处理细节的电脑文字编码,它使用标记进行标识。这种HTML标记称为HTML标签。HTML代码需要浏览器进行解释,并由浏览器解释后渲染显示出来。也就是:HTML有一定的格式、规则和标准,浏览器根据该既定的格式、规则和标准来解析HTML,并将HTML所描述的内容、样式效果呈现出来。
为了更好的理解HTML,我们来做个设想:假设这个世界上还没有HTML,我们自己来发明和创造它。那么我们可能会这么来制定HTML格式、规则和标准:
浏览器,请用“________________”的样式来显示文字:“________________”。
浏览器,请将文字“________________”链接到另一个页面:“________________”。
为了方便解说,我们这里只定义这两个规则,并称之为“模拟标准”。这两个规则为固定的格式,以使浏览器能够根据格式而识别它们。在编写HTML代码时,只需要把下划线的填空处补充完整即可完成一句HTML代码的编写,比如:
浏览器,请用“红色、加粗 ”的样式来显示文字:“年年岁岁花相似 ”。
浏览器,请将文字“岁岁年年人不同 ”链接到另一个页面:“SSNNRBT.html ”。
然后我们公开发布这个“模拟标准”,并要求各个浏览器的开发商遵守这个“模拟标准”来开发浏览器。当然,理论上第一个浏览器是由我们标准的制定者来开发的。
上方的“模拟标准”在表述大量的HTML内容时会很繁琐而复杂,我们可以更精练一些,将规则修改成这样:
【文字为“年年岁岁花相似”、颜色为“红色”、粗体为“是”】
【文字为“岁岁年年人不同”、链接为“SSNNRBT.html”】
如此我们大致这样理解:HTML就是以实现超文本为目的而制定的一个编码标准,它让浏览器能够正常解析并显示出这些编码所要表达的内容。
比较遗憾的是,我们没有机会创造HTML,HTML已经被发明出来,并有了自己的标准。HTML由一个叫W3C的公益组织长期维护,其标准我们称之为W3C标准。我们学习HTML时,以W3C所制定的标准来学习。
W3C是World Wide Web Consortium的简写,中文称为万维网联盟,它创建于1994年,是Web技术领域最具权威和影响力的国际中立性技术标准机构。最开始它由Web的发明者Tim Berners-Lee(蒂姆•伯纳斯-李)创立和领导。在商界有一句话是“一流企业卖标准,二流企业卖产品,三流企业卖苦力”,因为标准的制定者说“对的”就会是“对的”,说“错的”就肯定是“错的”,它能够将利益的获得最大化。W3C本可以制定自己的商业标准,但它没有,它将Web技术标准开放和公益化,它是一个公益组织、非盈利性机构。在后来的发展中,其联盟会员单位遍布全球,由各行各业的组织、机构和政府组成,联盟会员共同参与Web标准的制定与维护。到目前为止,W3C已发布了200多项影响深远的Web技术标准及实施指南。让我们向W3C致敬。
不过W3C所制定的标准属于推荐标准,而非强制标准,并且各项标准都在不断修正和升级,所以许多浏览器开发商只是支持部分或者支持大部分W3C标准,很多浏览器开发商还添加制定了自己的一些新规则,也正是这样造成了网页标准在浏览器中的混乱。在以前IE一家独大的时候,只要开发的网页在IE里能正常浏览就没什么问题;但现在的浏览器已经不是IE说了算,Google Chrome、火狐、QQ浏览器、360浏览器、遨游、世界之窗、淘宝浏览器……各自割据一定的市场,IE浏览器(IE6、IE7、IE8)的许多Bug和不完全支持W3C标准的问题,造成许多正常的HTML代码在IE里不能按预定的结果正常显示(比如页面内容错开、错乱等),这也导致越来越多的网站开发者及网站运营者抵制IE,因为IE的不正常导致开发成本(时间、精力、金钱)增加。这种情况下程序员要做的是:以W3C标准来开发制作网页。我们按W3C标准来学习和开发网页就不会有大问题,开发出来的代码也能在各个浏览器中尽可能的兼容、正常显示。