HTML、XML、XHTML 有什么区别
1、Html,即超文本标记语言(Hyper Text Markup Language),是最早被广泛使用的编写网页的语言,但其本身编码规范程度不足;
2、Xml,即可扩展标记语言(Extensible Markup Language),最初设计的目的是弥补Html的不足,以强大的扩展性满足网络信息发布的需要,后来逐渐被用于网络数据的转换和描述;
3、Xhtml,即可扩展超文本标记语言(Extensible Hyper Text Markup Language),对Html进行了规范,编码更加严谨纯洁;
4、Xml被设计出的时间早于Xhtml,但Xhtml却可以看作是Html向Xml的过渡语言。
怎样理解 HTML 语义化
什么是语义化
Html标签的语义化是指:根据内容的结构化(内容语义化),选择合适的标签(代码语义化),便于开发者阅读和写出更优雅的代码的同时,让浏览器的爬虫和机器很好地解析。
为什么要语义化
1、有利于SEO,即和搜索引擎建立更加良好的沟通,让搜索引擎的爬虫能够更好地理解网页内容,抓取更多的有效信息;
2、便于团队的开发和维护,减少编码差异化,提高团队效率;
3、便于不同的设备对网页进行解析和渲染。
如何做到语义化
1、尽量减少使用<div><span>等无意义的标签;
2、标签的使用,要结合元素本身的作用、效果等因素,采用合适的标签。
怎样理解内容与样式分离的原则
1、所谓内容与样式分离,就是指网页内容部分的代码放在Html文件中,而针对样式编写的代码则放在css文件中;
2、之所以采用内容与样式分离的办法进行编码,主要是为了使网页结构更加清晰明了、易于维护,同时一定程度减轻了服务器的负担。
有哪些常见的meta标签
<meta charset='utf-8'>
//声明文档使用的字符编码
<meta name="keywords" content="关键词">
//向搜索引擎说明你的网页的关键词
<meta name="description" content="主要内容">
//向搜索引擎说明你的站点的主要内容(不超过150个字符)
<meta name="author" content="你的姓名">
//向搜索引擎说明你的站点的制作者
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
//优先使用 IE 最新版本和 Chrome
<meta name="viewport" content="initial-scale=1, maximum-scale=3, minimum-scale=1, user-scalable=no">
//为移动设备添加 viewport
文档声明的作用?严格模式和混杂模式指什么?<!doctype html> 的作用?
1、<!DOCTYPE>声明即文件类型定义(DTD)。声明的作用是为了告诉浏览器该文件的类型,让浏览器解析器知道应该用哪个规范来解析文档。<!DOCTYPE>声明必须在 Html 文档的第一行,它并不属于 Html 标签。
2、严格模式又称标准模式,是指浏览器按照 W3C 标准解析代码。
混杂模式又称怪异模式或兼容模式,是指浏览器用自己默认的方式解析代码。
严格模式与混杂模式存在的意义与其来源密切相关。如果说只存在严格模式,那么许多旧网站必然受到影响;如果只存在混杂模式,那么会回到当时浏览器大战时的混乱,每个浏览器都有自己默认的解析模式。
3、<!doctype html>的作用即是声明文档的解析类型,从而避免浏览器的混杂模式。
浏览器乱码的原因是什么?如何解决
浏览器乱码可能是由于浏览器解析代码的方式与网页编码的格式不一致导致的。
解决办法是在编写网页代码之初在 Html 页面的<head>里添加<meta charset="">来声明编码格式。
如无权限修改 Html文件,则可以尝试通过手动设置改变浏览器的解码格式。
常见的浏览器有哪些,什么内核
1、IE浏览器,使用Trident内核;
2、Firefox(火狐)浏览器,使用Gecko内核;
3、Chrome(谷歌)浏览器,使用Webkit内核;
4、Safari浏览器,使用Webkit内核;
5、Opera浏览器,使用Presto内核。
列出常见的标签,并简单介绍这些标签用在什么场景
<html></html>//定义 Html 文档
<head></head>//文档的信息
<meta>//Html 文档的元信息
<title></title>//文档的标题
<link>//文档与外部资源的关系
<style></style>//文档的样式信息
<body></body>//可见的页面内容
<div>和<span>标记,是没有任何意义的标记。
<div>是一个块级元素,而<span>是行内元素。
<h1>……<h6>//标题标记
<p></p>//表示一个段落
<br>//换行标记
<ul>
<li>内容1</li>
<li>内容2</li>
<li>内容3</li>
</ul>
//定义无序列表
<ol>
<li>列表1</li>
<li>列表2</li>
<li>列表3</li>
</ol>
//定义有序列表