HTML、XML、XHTML有什么区别
1、HTML是超文本标记语言(Hyper Text Markup Language)通过标记符号来标记要显示的网页中的各个部分。它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。但是由于时间早,规范不是很好,大小写混写且编码不规范;
2、XHTML是升级版的HTML(Extensible Hyper Text Markup Language)在XHTML中对HTML进行了规范,基本语言都还是沿用的HTML的标签,只不过废除了部分表现层的标签,同时在标准上要求有提高比如标签的严格嵌套,标签结束等等,编码更加严谨纯洁。XHTML是一种过渡语言,HTML向XML过渡的语言;
3、XML是可扩展标记语言(Extensible Markup Language),是一种跨平台语言,编码更自由,可以自由创建标签。
XML与HTML的区别:
(1.XML的语法要求很严谨,HTML较为随意
(2.XML是被设计用来描述数据的,重点是:什么是数据,如何存放数据。HTML是被设计用来显示数据的,重点是:显示数据以及如何显示数据更好上面。
4、网页编码从HTML>XHTML>XML这个过程发展。
怎样理解 HTML 语义化
什么是HTML的语义化?
根据内容的结构化,选择合适的标签,有利于开发者阅读和写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析。
为什么要做到语义化?
1.在没有CSS情况下,可以让呈现的内容结构化,做到内容与样式的分离
2.有利于SEO(搜索引擎优化),让网络爬虫更好的爬取更多有效信息
3.便于其他开发人员的开发与维护
4.方便其他终端对页面内容的解析
怎样理解内容与样式分离的原则?
内容与样式的分离实质上指将内容的结构交给HTML,通过怎么样的形式呈现交给CSS
1.让文档代码更加清晰可读
2.便于后期对文档样式的统一或批量的修改
有哪些常见的meta标签?
meta是html语言head区的一个辅助性标签。meta标签的作用有:搜索引擎优化(SEO),定义页面使用语言,自动刷新并指向新的页面,实现网页转换时的动态效果,控制页面缓冲,网页定级评价,控制网页显示的窗口等!
meta标签一共有三个属性:
http-equiv 把content属性关联到HTTP头部。
name 把 content 属性关联到一个名称。
content 定义用于翻译 content 属性值的格式。
name属性
<meta name="参数"content="具体的参数值">
可选参数:
(1)keyword 用来告诉搜索引擎你的网页的关键字是什么
(2)description 用来告诉搜索引擎你的网页的的主要内容
(3)robots 用来告诉搜索引擎哪些页面需要索引,哪些页面不需要索引
content的设定:
设定为all:文件将被检索,且页面上的链接可以被查询;
设定为none:文件将不被检索,且页面上的链接不可以被查询;
设定为index:文件将被检索;
设定为follow:页面上的链接可以被查询;
设定为noindex:文件将不被检索,但页面上的链接可以被查询;
设定为nofollow:文件将不被检索,页面上的链接可以被查询。
(4)author 表示网页的作者是谁
(5)generator 表示网站采用什么软件制作
(6)COPYRIGHT 表示网站的版权信息
(7)revisit-after 表示你希望让爬虫多长时间再次爬取你的网页
http-euqiv属性
<meta http-equiv="参数"content="参数变量值">;
(1)Expires(期限) 用于设定网页的到期时间,一旦网页过期,必须到服务器上重新传输
(2)Pragma(cache模式) 禁止浏览器从本地计算机的缓存中访问页面内容。(这样设定,就让脱机浏览无效)
(3)Refresh 设定在本网站停留多长时间并且自动刷新到新的网址
(4)Set-Cookie(cookie设定) 如果网页过期,存在本地的cookie将被删除
(5)Window-target(显示窗口的设定) 强制页面在当前窗口以独立页面显示。用来防止别人在框架里调用自己的页面
(6)content-Type(显示字符集的设定) 设定页面使用的字符集
(7)content-Language(显示语言的设定)
(8)Cache-Control指定请求和响应遵循的缓存机制。
文档声明的作用?严格模式和混杂模式指什么?<!doctype html> 的作用?
文档声明的作用?
让浏览器知道要使用什么什么模式来呈现当前页面
严格模式和混杂模式指的是什么?
严格模式:又称标准模式,是指浏览器按照 W3C 标准解析代码。
混杂模式:又称怪异模式或兼容模式,是指浏览器用自己的方式解析代码。
如何区分:浏览器解析时到底使用严格模式还是混杂模式,与网页中的 DTD 直接相关。
1、如果文档包含严格的 DOCTYPE ,那么它一般以严格模式呈现。(严格 DTD ——严格模式)
2、包含过渡 DTD 和 URI 的 DOCTYPE ,也以严格模式呈现,但有过渡 DTD 而没有 URI (统一资源标识符,就是声明最后的地址)会导致页面以混杂模式呈现。(有 URI 的过渡 DTD ——严格模式;没有 URI 的过渡 DTD ——混杂模式)
3、DOCTYPE 不存在或形式不正确会导致文档以混杂模式呈现。(DTD不存在或者格式不正确——混杂模式)
4、HTML5 没有 DTD ,因此也就没有严格模式与混杂模式的区别,HTML5 有相对宽松的语法,实现时,已经尽可能大的实现了向后兼容。( HTML5 没有严格和混杂之分)
意义:严格模式与混杂模式存在的意义与其来源密切相关,如果说只存在严格模式,那么许多旧网站必然受到影响,如果只存在混杂模式,那么会回到当时浏览器大战时的混乱,每个浏览器都有自己的解析模式。
<!doctype html> 的作用?
HTML5标准网页声明,告知浏览器采用HTML5规范
浏览器乱码的原因是什么?如何解决
浏览器用来解析该文件编码格式与文件保存所使用编码格式不一致时,就会导致乱码
解决方法
1.在meta标签中设置正确字符集(charset)属性
2.切换浏览器的编码方式
常见的浏览器有哪些,什么内核
常见浏览器
1.IE
2.Google Chrome
3.Firefox
4.Safari
5Opera
内核(也称渲染引擎)
1.Trident(IE内核)
2.Gecko (Firefox的内核)
3.Presto (Opera的内核)
4.Webkit (苹果公司的内核,用于Safari)
列出常见的标签,并简单介绍这些标签用在什么场景
h 标签
表示标题 h1-h6
p 标签
表示段落
a 标签
表示一个连接 通常使用 target / herf / title 属性
div 标签
表示一块, 通常用于分割页面布局
ul li 标签
表示一个无序列表
ol li 标签
表示一个有序列表
dl dt dd 标签
表示一个定义性的列表,对于一个或多个术语进行解释
strong em span
表示语气的加强,strong表示强烈 em表示轻微加强 span表示无特殊意义
iframe 标签
iframe 元素会创建包含另外一个文档的内联框架(即行内框架)。
(使用这个元素要注意跨域操作,JavaScript是不允许跨域操作的)
table 标签
用于展示一个表格,为了更好的实现语义化,不要将table标签用于分割网页布局
meta 标签
meta是html语言head区的一个辅助性标签。meta标签的作用有:搜索引擎优化(SEO),定义页面使用语言,自动刷新并指向新的页面,实现网页转换时的动态效果,控制页面缓冲,网页定级评价,控制网页显示的窗口等