没有合适的资源?快使用搜索试试~ 我知道了~
HTML 80 道面试题及答案.docx
资源推荐
资源详情
资源评论
DOCTYPE 的作用是什么?
相关知识点:
IE5.5 引入了文档模式的概念,而这个概念是通过使用文档类型(DOCTYPE)切换实现的。
DOCTYPE 不存在或格式不正确会导致文档以兼容模式呈现。
在 html5 之后不再需要指定 DTD 文档,因为 html5 以前的 html 文档都是基于 SGML 的,所以需要
通过指定 DTD 来定义文档中允许的属性以及一些规则。而 html5不再基于 SGML了,所以不再需要
使用 DTD。
标准模式与兼容模式各有什么区别?
标准模式的渲染方式和 JS 引擎的解析方式都是以该浏览器支持的最高标准运行。在兼容模式中,
页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。
HTML5 为什么只需要写<!DOCTYPE HTML>,而不需要引入 DTD?
HTML5 不基于 SGML,因此不需要对 DTD 进行引用,但是需要 DOCTYPE 来规范浏览器的行为(让浏
览器按照它们应该的方式来运行)。
而 HTML4.01 基于 SGML,所以需要对 DTD 进行引用,才能告知浏览器文档所使用的文档类型。
SGML 、HTML、XML 和 XHTML 的区别?
SGML 是标准通用标记语言,是一种定义电子文档结构和描述其内容的国际标准语言,是所有电
子文档标记语言的起源。
HTML 是超文本标记语言,主要是用于规定怎么显示网页。
XML是可扩展标记语言是未来网页语言的发展方向,XML和 HTML的最大区别就在于 XML的标
签是可以自己创建的,数量无限多,而 HTML 的标签都是固定的而且数量有限。
XHTML 也是现在基本上所有网页都在用的标记语言,他其实和 HTML 没什么本质的区别,标签都
一样,用法也都一样,就是比 HTML 更严格,比如标签必须都用小写,标签都必须有闭合标签等。
DTD 介绍
DTD ( Document Type Definition 文档类型定义)是一组机器可读的规则,它们定义 XML 或 HTML 的
特定版本中所有允许元
素及它们的属性和层次关系的定义。在解析网页时,浏览器将使用这些规则检查页面的有效性并
且采取相应的措施。
DTD 是对 HTML 文档的声明,还会影响浏览器的渲染模式(工作模式)。
行内元素定义
HTML4 中,元素被分成两大类:inline (内联元素)与 block(块级元素)。—个行内元素只占据它对应标
签的边框所包含的空
间。
常见的行内元素有 a b span img strong sub sup button input label select textarea
块级元素定义
块级元素占据其父元素(容器)的整个宽度,因此创建了一个“块”。
常见的块级元素有 div ul ol li dl dt dd h1 h2 h 3 h4 h5 h6 p
行内元素与块级元素的区别?
HTML4 中,元素被分成两大类:inline (内联元素)与 block (块级元素)。
1、格式上,默认情况下,行内元素不会以新行开始,而块级元素会新起一行。
2、内容上,默认情况下,行内元素只能包含文本和其他行内元素。而块级元素可以包含行内元素
和其他块级元素。
3、行内元素与块级元素属性的不同,主要是盒模型属性上:行内元素设置 width 无效,height 无效
(可以设置 line-hei
ght),设置 margin 和 padding 的上下不会对其他元素产生影响。
HTML5 元素的分类
HTML4 中,元素被分成两大类:inline(内联元素)与 block(块级元素)。但在实际的开发过程中,因为页
面表现的需要,前端工程师经常把 inline 元素的 display 值设定为 block(比如 a 标签),也经常把 block
元素的 display 值设定为 inline 之后更是出现了 inline-block 这一对外呈现 inline 对内呈现 block 的属
性。因此,简单地把 HTML 元素划分为 inline 与 block 已经不再符合实际需求。
HTML5 中,元素主要分为 7 类:Metadata Flow Sectioning Heading Phrasing Embedded Interactive
空元素定义
标签内没有内容的 HTML 标签被称为空元素。空元素是在开始标签中关闭的。
常见的空元素有:br hr img input link meta
link 标签定义
link 标签定义文档与外部资源的关系。
link 元素是空元素,它仅包含属性。此元素只能存在于 head 部分,不过它可出现任何次数。
link 标签中的 rel 属性定义了当前文档与被链接文档之间的关系。常见的 stylesheet 指的是定义一个
外部加载的样式表。
页面导入样式时,使用 link 和@import 有什么区别?
从属关系区别。@import 是 CSS 提供的语法规则,只有导入样式表的作用;link 是 HTML 提供的标
签,不仅可以加载 CSS 文件,还可以定义 RSS、rel 连接属性、引入网站图标等。
加载顺序区别。加载页面时,link 标签引入的 CSS 被同时加载;@import 引入的 CSS 将在页面加
载完毕后被加载。
兼容性区别。@import 是 CSS2.1 才有的语法,故只可在 IE5+才能识别;link 标签作为 HTML 元素,不
存在兼容性问题。
DOM 可控性区别。可以通过 JS 操作 DOM,插入 link 标签来改变样式;由于 DOM 方法是基于文
档的,无法使用@import 的方式插入样式。
你对浏览器的理解?
浏览器的主要功能是将用户选择的 web 资源呈现出来,它需要从服务器请求资源,并将其显示在
浏览器窗口中,资源的格式通常是 HTML,也包括 PDF、image 及其他格式。用户用 URI(Uniform
Resource Identifier 统一资源标识符)来指定所请求资源的位置。
HTML 和 CSS 规范中规定了浏览器解释 html 文档的方式,由 W3C 组织对这些规范进行维护,W3C
是负责制定 web 标准的组织。
但是浏览器厂商纷纷开发自己的扩展,对规范的遵循并不完善,这为 web 开发者带来了严重的兼
容性问题。
简单来说浏览器可以分为两部分,shell 和内核。
其中 shell 的种类相对比较多,内核则比较少。shell 是指浏览器的外壳:例如菜单,工具栏等。主
要是提供给用户界面操作,参数设置等等。它是调用内核来实现各种功能的。内核才是浏览器的
核心。内核是基于标记语言显示内容的程序或模块。也有一些浏览器并不区分外壳和内核。从
Mozilla 将 Gecko 独立出来后,才有了外壳和内核的明确划分。
介绍一下你对浏览器内核的理解?
主要分成两部分:渲染引擎和 JS 引擎。
渲染引擎的职责就是渲染,即在浏览器窗口中显示所请求的内容。默认情况下,渲染引擎可以显
示 html、xml 文档及图片,它也可以借助插件(一种浏览器扩展)显示其他类型数据,例如使用 PDF
阅读器插件,可以显示 PDF 格式。
JS 引擎:解析和执行 javascript 来实现网页的动态效果。
最开始渲染引擎和 JS 引擎并没有区分的很明确,后来 JS 引擎越来越独立,内核就倾向于只指渲染
引擎。
常见的浏览器内核比较
Trident:这种浏览器内核是 IE 浏览器用的内核,因为在早期 IE 占有大量的市场份额,所以这种内
核比较流行,以前有很多网页也是根据这个内核的标准来编写的,但是实际上这个内核对真正的
剩余19页未读,继续阅读
资源评论
红红火火a
- 粉丝: 17
- 资源: 1816
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功