1.HTML、XML、XHTML 有什么区别
- HTML:一种超文本标记语言,语法较为松散。
- XML:可以扩展的标记语言,主要用于存储数据和结构参考。
- XHTML:可扩展的超文本标记语言,基于XML,坐拥与HTML类似,语法更严格。
2.怎样理解HTML语义化
- 根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析。
- 为了在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构:为了裸奔时好看;
-有利于SEO和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标签来确定上下文和各个关键字的权重; - 方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)以意义的方式来渲染网页;
- 便于团队开发和维护,语义化更具可读性,是下一步吧网页的重要动向,遵循W3C标准的团队都遵循这个标准,可以减少差异化。
3.怎样理解内容与样式分离的原则
- 写 HTML 的时候先不管样式, 重点放在HTML的结构和语义化上,让 HTML 能体现页面结构或者内容。之后再去写样式。
- 写 JS 的时候,尽量不要用 JS 去直接操作样式,而是通过给元素添加删除class来控制样式变化
- HTML 内不允许出现属性样式,尽量不要出现行内样式
4.有哪一些常见的meta标签
- content-Type:显示字符集的设定,信息参数如GB2312时,代表说明网站是采用的编码是简体中文
- http-equiv: http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变量值。
- name:name属性主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的。
5.文档声明的作用?严格模式和混杂模式指什么?<!DOCTYPE html>的坐拥?
- <!doctype>标签用来声明文档对象模型,用来告诉浏览器应该使用哪种方式来解析渲染页面。严格模式就是使用<!doctype>标签来显式声明该用哪种方式来渲染页面,混杂模式即不加<!doctype>标签,允许浏览器使用自己的方式来渲染页面。
- <!doctype html>即就是声明使用HTML5来解析渲染页面。
6.浏览器乱码的原因是什么,如何解决?
- 产生乱码的原因一般是文档没有声明自身的编码导致浏览器错误地使用了与文档不同的解码方式,从而导致内容无法正常显示一定要清楚文件保存时的编码方式并在文件内声明
7.常见的浏览器有哪一些?使用的是什么内核?
- 一般的常见浏览器有,IE浏览器、chrome浏览器、firefox浏览器、Opera浏览器、Safari浏览器。
- IE浏览器使用的是Trident内核,chrome浏览器、Safari浏览器使用的是webkit内核,Firefox浏览器使用的是Gecko内核,Opera浏览器使用的是Presto内核。
8.列出常见的标签,并简单介绍用在什么场景
- h1~h6: h1代表页面最大的标题,h2二级标题,h3... 更弱的标题
- p: 段落,表示大段文字
- a: 链接,链到一个地址
- img: 展示一张图片
- div: 语义为“一大块”,用于给页面划分区块,让结构更清晰
- ul li: 无序列表,用于表示并列的内容,ul的直接子元素是li,可以嵌套
- ol li: 有序序列表,用于表示带步骤或者编号的并列内容,ol的直接子元素只能是li,可以嵌套
- dl dt dd: 用于展示一系列 “标题:内容... ”的场景
- button: 按钮
- strong em: em 需要强调一下,strong 很重要、强调性更强
- IFRAME: 用于嵌入一个页面 注意跨域操作问题
- table: 用于展示表格,不要用来做布局 thead tbody tfoot可省略,浏览器会自动添加 border-collapse: collapse;用于合并边框