HTML学习(前端面试题)

小白一枚,欢迎指正与补充!!!

DOCTYPE的作用是什么

DOCTYPE文档类型说明标签,主要作用是告诉浏览器的解析器使用哪种HTML规范或者XHTML规范来解析页面。

严格模式和混杂模式

在W3C标准出来之前,不同的浏览器对页面的渲染有不同的标准,使用一种比较宽松的向后兼容的方式来显示页面。
严格模式又称标准模式,是指浏览器按照W3C标准来解析代码,呈现页面。

HTML和XHTML的区别

1.XHTML中所有的标签必须闭合。
2.XHTML中所有的标签必须小写。
3.XHTML中元素必须被正确的嵌套。

块级元素

1.独占一行
2.高度、宽度、内边距和外边距都可以控制
3.宽度默认是容器的100%
4.相当于一个盒子,里面可以放行内元素和块级元素(P,li,div,ul)

行内元素

1.相邻行内元素在一行上
2.宽度只与内容有关
3.高度和宽度直接设置是无效的
4.高度、高度、内边距和外边距都可以控制。

行内块元素

1.相邻行内块元素在一行上,但是中间会有空白缝隙
2.默认宽度就是内容的宽度
3.高度、宽度、内边距和外边距都可以改变。

link和@import的区别

1.link是页面加载时同时执行的
2.@import时页面加载之后才执行的
3.link的权重比@import的高

对于浏览器的理解

浏览器就是安装在电脑的一个软件,他的作用就是将网页渲染出来给用户查看,并能够让用户与网站之间进行交互。

浏览器内核

浏览器内核分为渲染引擎和JS引擎。
渲染引擎主要负责解析HTML和CSS,将页面渲染出来。
JS引擎主要负责解析和执行JS,实现页面的动态交互。

常见的浏览器内核

1.WebKit: Chrome、Safari
2.Trident: IE、360、百度
3.Geoko: 火狐fire

浏览器渲染原理

1.构建DOM树
2.构建CSS DOM树
3.构建渲染树(render树)
4.布局
5.绘制

什么是重绘和回流

1.不影响页面布局的操作称为重绘(color、background-color)
2.会影响页面布局的操作称为回流(width、height、padding、margin)

渲染过程中遇到JS文件怎么处理

JavaScript的加载、解析和执行会阻塞DOM树的构建,所以在构建DOM树的时候,如果碰到JavaScript文件,它会暂停构建DOM树,然后将控制权转交给JS引擎,等JavaScript解析完之后,再回去构建DOM树。

script、script async、script defer的区别

1.script的话就是按照顺序加载和执行JavaScript,JavaScript的加载会阻塞HTML的解析。
2.有async就是并行加载和执行,谁先加载完成谁先执行
3.有defer就是并行加载,等HTML解析完之后才执行,按照顺序执行。

CSS不会阻塞DOM树解析

DOM解析和CSS解析是并行的,所以CSS加载不会阻塞DOM树解析

CSS会阻塞DOM渲染

由于渲染树是依赖于DOM树和CSS DOM树的,必须等到CSS加载完成后才能开始渲染,所以CSS加载会阻塞DOM渲染的。

CSS如何阻塞文档解析

JavaScript执行时可能会请求样式信息,如果样式还没有加载和执行,脚本会得到错误的信息,这样会导致很多问题,所以浏览器会延迟JavaScript的执行,直至CSS DOM树构建。

渲染页面时常见的不良反应

1.样式闪烁问题

在CSS加载之前,先呈现了HTML,就会导致展示无样式内容,然后样式突然出现的现象。主要原因是CSS加载过长,或者CSS放在文档底部。

2.白屏问题

由于浏览器的渲染机制,要先构建DOM树和CSS DOM树,构建完成之后再进行渲染。但是如果由于CSS未加载完成,浏览器迟迟没有渲染的话,就会导致白屏问题。

为什么避免操作DOM

因为操作DOM可能会引起页面的重绘和回流。

load事件

load事件是所有资源加载完成之后才执行的。

HTML5的新特性

1.语义化标签
2.音频视频
3.画布canvas
4.input增强型表单
5.本地存储localStorage和会话储存sessionStorage
6.新技术websoket和webwoker

对HTML5语义化标签的理解

1.正常的标签做正确的事
2.使得代码结构更加清晰,更容易维护,更容易阅读
3.有利于搜索引擎搜索

cookie、localStorage和sessionStorage的区别

cookie不可以跨域

cookie无法设置除当前域名或者其父域名之外的其他domain

如何实现浏览器多标签页之间的通信

因为cookie和localStorage在所有同源窗口数据共享,所以可以调用localStorage、cookie实现浏览器多标签页之间的通信。

title和和h1的区别

title是给搜索引擎看的
h1是给用户看的

img的title和alt的区别

title是提示文本
alt是替换文本

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值