HTML及浏览器

HTML及浏览器


HTML5新增一些标签

语义化标签:nav; header; content; footer; article;video

http的报文的主要组成

请求报文:
1,请求行。 该行包含了一个方法和一个请求的URL,还包含HTTP 的版本。
2,请求头
3,空行
4,请求体。

响应报文:
1,状态行。 该行包含了请求资源的状况。
2,响应头
3,空行
4,响应体。

DOCTYPE标签的作用

  • 在标准模式中,浏览器以其支持的最高标准呈现页面。
  • 在混杂模式中,浏览器以一种较宽松的方式向后兼容浏览器。

ContentType类型:

  • application/x-www-form-urlencoded:提交post请求时会使用这种方式。浏览器提交原生form表单,不设置enctype时,会默认是这样的方式。
  • multipart/form-data:用于上传文件。
  • application/json:同样是请求时使用的,指定即可。
  • text/html:

移动端适配

<meta name="viewport" content="width=device-width, initial-scale=1.0">
width=可视区域的宽度
inital-scale=页面首次显示可视区域的缩放级别
user-scalable=no 用户不可以手动缩放

移动端点透

移动端当弹窗点击关闭时可能触发底层元素的click事件
原因:当一个用户在点击屏幕的时候,系统会触发touch事件和click事件,touch事件优先处理,touch事件经过 捕获,处理, 冒泡 一系列流程处理完成后, 才回去触发click事件。 而移动端的click事件会延时300ms执行,所以触发底层元素。
解决:

  • 引入github的fastclick.js文件
  • click事件全换为touch事件

HTTP缓存又叫浏览器缓存

HTTP主要控制缓存的字段有

  • Expires: 表示资源过期的日期
  • Cache-control: 指的是从文档被访问后的存活时间,这个时间是个相对值(比如:3600s)
  • Last-Modified: 表示最后一次更新资源的时间

HTTP缓存分为强制缓存和协商缓存

  • 对于强制缓存,服务器返回一个过期时间,过期时间内,下次请求,直接用缓存,过期后执行协商缓存
  • 带上缓存的头部字段,服务器验证资源是否改变,返回304,代表资源未改变。返回200,就重新请求资源。

浏览器的渲染过程

  1. 解析HTML生成DOM树
  2. 解析CSS生成CSS规则树
  3. 将DOM树和CSS规则树合并生成渲染树
  4. 遍历渲染树开始布局,计算每一个节点的位置信息,将渲染树中每个节点绘制到屏幕上。

回流与重绘

回流: 当渲染的一部分元素更改自己的宽高等,导致重新构建页面

猜你喜欢

转载自blog.csdn.net/qq_40646960/article/details/88071104