HTML与XML与XHTML三者之间的区别
HTML的简介
超文本标记语言(HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。HTML是一种基础技术,常与CSS(层叠样式表)、JavaScript一起被众多网站用于设计令人赏心悦目的网页、网页应用程序以及移动应用程序的用户界面。网页浏览器可以读取HTML文件,并将其渲染成可视化网页。
HTML是一种语法较为松散,不严格的Web语言
HTML 是用来描述网页的一种语言。
XML的简介
简单来说,XML是一种可扩展标记语言,主要用于存储数据和结构。
XML 指可扩展标记语言(EXtensible Markup Language)
HTML与XML的主要差异
- XML 和 HTML 为不同的目的而设计:
- XML 被设计为传输和存储数据,其焦点是数据的内容。
- HTML 被设计用来显示数据,其焦点是数据的外观。
- HTML 旨在显示信息,而 XML 旨在传输信息。
XHTML的简介
简单来说,XHTML是一种可扩展超文本标记语言,基于XML,作用与HTML类似,但语法更严格。
XHTML(Extensible Hyper Text Markup Language) 是 HTML 与 XML(扩展标记语言)的结合物。
与前两者最主要的差异
- XHTML 元素必须被正确地嵌套。
- XHTML 元素必须被关闭。
- 标签名必须用小写字母。
- XHTML 文档必须拥有根元素。
语义化HTML
简单来说,语义化HTML是一种编写HTML的方式,需要选择合适的标签、使用合理的代码结构,便于开发者阅读,同时让浏览器的爬虫和机器很好地解析。
编写HTML时,表现内容,样式和行为的分离
- 写 HTML 的时候先不管样式, 重点放在HTML的结构和语义化上,让 HTML 能体现页面结构或者内容。之后再去写样式。
- 写 JS 的时候,尽量不要用 JS 去直接操作样式,而是通过给元素添加删除class来控制样式变化。
- HTML 内不允许出现属性样式,尽量不要出现行内样式。
文档声明的作用
文档声明:用来告知浏览器当前文档所使用的HTML或XHTML规范。是用来声明当前文档为html5的方法。
严格模式是指按照浏览器所支持的最高版本来实现效果;混杂模式则相反,尽可能向后兼容。使用老版本浏览器的显示模式。
浏览器乱码原因
1、比如网页源代码是gbk的编码,而内容中的中文字是utf-8编码的,这样浏览器打开即会出现html乱码。反之网页是编码utf-8,内容是gbk也会出现乱码。
2、html网页编码是gbk,而程序从数据库中调出呈现是utf-8编码的内容也会造成编码乱码。
3、浏览器不能自动检测网页编码,造成网页乱码。
常见内核及其对应的浏览器
Trident
大部分人都简称为IE内核。是微软开发的一种排版引擎。
浏览器:IE、The World
Geckos:
Gecko是套开放源代码的、以C++编写的网页排版引擎。这软件原本是由网景通讯公司开发的,Netcape6开始采用该内核。后来的 Mozilla FireFox也采用了该内核,Geckos的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。Geckos 现在由Mozilla基金会维护。
浏览器:Firefox
Presto:
Presto是一个由Opera Software开发的浏览器排版引擎,该内核在2003年的Opera7中首次被使用。
浏览器:Opera
Webkit:
苹果公司自己的内核,也是苹果的Safari浏览器使用的内核。
浏览器:Safari、Chrome
国内的双核浏览器:
由于IE浏览器在国内的普及率非常高,所以造成了很多网上银行和支付系统只支持IE的Trident内核,其他浏览器访问根本无法进行正常支付和转账等业务。而WebKit内核的非IE浏览器以更高的性能和更好的用户体验拥有了越来越多的用户。于是双核浏览器应运而生。
浏览器:360、猎豹、搜狗、百度、遨游、QQ