1.HTML、XML、XHTML 有什么区别
HTML,超文本标记语言,是语法较为松散的、不严格的Web语言,比如大小写混用,缺少引号不会报错;
XML,可扩展标记语言,主要用于存储数据和结构参考,数据传输而非显示数据;
XHTML,可扩展超文本标记语言,基于XML,作用与HTML类似,但语法更严格参考。
2.怎样理解 HTML 语义化
语义化HTML是一种编写HTML的方式,选择合适的标签、使用合理的代码结构,便于开发者阅读,同时让浏览器的爬虫和机器很好地解析。
3.怎样理解内容与样式分离的原则
HTML代表页面上的内容,CSS代表页面的样式,JS代表页面的交互和功能
写 HTML 的时候先不管样式, 重点放在HTML的结构和语义化上,让 HTML 能体现页面结构或者内容。之后再去写样式。
写 JS 的时候,尽量不要用 JS 去直接操作样式,而是通过给元素添加删除class来控制样式变化。
HTML 内不允许出现属性样式,尽量不要出现行内样式。
4.有哪些常见的meta标签
<meta charset="utf-8"> //HTML5设定网页字符集的方式页面保存为什么编码方式就填写什么方式,英文是utf-8,中文为gbk,否则容易出现乱码,推荐使用utf-8。
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/> //指定IE和Chrome使用最新版本渲染当前页面。
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">使页面内容在移动端窗口展示比较合理。
<meta name="keywords" content="前端 饥人谷">用于告诉搜索引擎网页的关键字,如“前端 饥人谷”。
<meta name="description" content="最有爱的前端学习社区">用于告诉搜索引擎网站的主要内容,如“最有爱的前端学习社区”。
<meta name="robots" content="none">robots用来告诉爬虫哪些页面需要索引,哪些页面不需要索引。content的参数有all,none,index,noindex,follow,nofollow。默认是all。
5.文档声明的作用?严格模式和混杂模式指什么?<!doctype html> 的作用?
文档声明的作用有阅读程序应该用什么规则集来解释文档中的标记;决定浏览器的呈现模式,对于实际操作,通知浏览器读取文档时用哪种解析算法。如果没有写,则浏览器则根据自身的规则对代码进行解析,可能会严重影响html 排版布局。
标准模式:浏览器以其支持的最高标准呈现页面;
混杂模式:页面以一种比较宽松的向后兼容的方式显示。混杂模式通常模拟老式浏览器的行为以防止老站点无法工作。
<!doctype html> 的作用:声明HTML5,HTML5 不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为。
6.浏览器乱码的原因是什么?如何解决。
编辑器保存文档使用的字符集与浏览器解析 HTML 文档使用的字符集不一致,<meta charset=" ">中没有填或者填错,那么英文以外的文字就会出现乱码。应该查看当前页面的编码方式并填写进去也可以直接改为<meta charset="utf-8">。
7.常见的浏览器有哪些,什么内核。
Internet Explorer:Trident内核(又称为MSHTML)
Safari:WebKit内核
Chrome / Chromium:WebKit内核
Opera:Presto内核
Firefox:Gecko内核
8.列出常见的标签,并简单介绍这些标签用在什么场景。
div:语义为“一大块”,用于给页面划分区块,让结构更清晰。
ul li: unsort list 无序列表,用于表示并列的内容,ul的直接子元素是li,可以嵌套。
ol li:ol: order list 有序序列表,用于表示带步骤或者编号的并列内容 ,ol的直接子元素只能是li ,可以嵌套。
dl dt dd:用于展示一系列 “标题:内容... ”的场景。
button:按钮。
strong,em,span:span强调性很弱,em 需要强调一下,strong 很重要、强调性更强。
iframe:用于嵌入一个页面 注意跨域操作问题。
table:用于展示表格,不要用来做布局 thead tbody tfoot可省略,浏览器会自动添加 border-collapse: collapse;用于合并边框。
p:段落,表示大段文字。
h1~h6:表示标题大小,代表页面最大的标题,h2二级标题,h3... 更弱的标题。
img,canvas:用于图像显示,只闭合标签,最后不需要加 /。一般不直接操作img,canvas元素,而是在它的外层包裹一层父级元素(可以为span,div等)。
a:a标签用于打开链接,发送邮件,段落跳转等功能。使用时需要注意阻止掉标签的默认事件。