浏览器如何渲染页面

浏览器如何渲染页面

这个涉及到的知识点好多 记不下来 写几条简化版本的留有印象吧
简述步骤

  1. 处理HTML标记并构建DOM树
  2. 处理CSS标记并构建CSSOM树
  3. 讲DOM与CSSOM合并成一个渲染树
  4. 根据渲染树来布局,以计算每个节点的几何信息
  5. 将各个节点绘制到屏幕上

如果DOM或CSSOM被修改,则需要在执行一遍以上所有步骤 以确定那些像素需要在屏幕上进行重新渲染

阻塞渲染的css

默认情况下css被视为阻塞渲染的资源,这意味着浏览器将不会渲染任何已处理的内容 直至CSSOM构建完成.

  • 优化 精简 CSS 样式 并利用媒体查询来标记一些不需要的css样式为不阻塞渲染
    • 例如 横屏样式 在竖屏时 就不应该阻塞渲染

阻塞渲染的JS

当HTML解析器遇到一个script 标签时,它会暂停构建dom 将控制权移交给javascript引擎 等JS引擎运行完毕,浏览器会从终端的地方回复DOM构建. 这也是在js中获取元素为null的原因

前端权限管理

大致分为四种方式

HTTP Basic Authentication

用户在浏览器输入账号密码通过base64加密后上传 加密过程可逆 已不推荐使用 了解即可

session-cookie

常见于稍老的网页端. 由于http请求是无状态的 服务器不知道你是否来过,为了验证这一点 服务端会创建一个session对话来存储请求信息
  1. 服务端被客户端首次访问时创建session 给session 生成一个唯一标志符 然后在响应头中设置这个标识符
  2. 浏览器收到请求会解析响应头,然后存储到cookie中 浏览器的特点 会在请求中带伤cookie信息
  3. 服务端在收到请求会解析cookie 的标识符 判断是否合法

TOKEN

使用token验证可以不需要cookie的配合 应用终端多样化,时效性上 token每过一段时间都可以动态改变,扩展性更高更方便的做多级验证
  1. 客户端登录 服务端收到后验证账号密码 成功后返回一个token
  2. 客户端收到token后 存储起来
  3. 客户端每次发送请求 都会携带token
  4. 服务端收到请求 验证token 合法即放行

OAuth(开放认证)

是一个开放标准 允许用户授权第三方网站 访问存储在他们服务器上的用户数据,而不需要提供账号密码给第三方网站,为了保证安全这种验证一般都是显示的提示用户是否要使用第三方登录 最常见的 例如 qq 微信 支付宝
  1. 网站设置第三方登录入口 会进入一个第三方授权页面
  2. 用户在第三方授权页面进行授权 成功后会返回一个code
  3. 成功后就是后台的事情了 他们需要根据 返回的数据去向授权服务器去获取信息
    网站想要获取更多用户这种授权方式无疑是一个很棒的方式 可以大大减少用户的注册繁琐程度 提高体验
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,539评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,594评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,871评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,963评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,984评论 6 393
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,763评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,468评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,357评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,850评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,002评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,144评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,823评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,483评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,026评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,150评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,415评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,092评论 2 355

推荐阅读更多精彩内容

  • 大家好,我是IT修真院上海分院第01期学员,一枚正直善良的web程序员。 今天给大家分享一下,修真院官网 CSS任...
    爱猫先森阅读 446评论 0 0
  • 1. CSS和JS在网页中的放置顺序是怎样的? CSS放置在HTML的head标签里。 JS放在网页的底部body...
    曾祥辉阅读 607评论 0 0
  • 发送 & 接收信息 数据是以“数据包”的形式通过互联网发送,而数据包以字节为单位。当你编写一些 HTML、CSS ...
    mongofeng阅读 919评论 0 0
  • 大家好,我是IT修真院深圳分院第01期学员,一枚正直纯洁善良的web程序员。 今天给大家分享一下,修真院官网CSS...
    嘴角那抹温柔阅读 1,872评论 0 5
  • 以前在微信上经常看到这样的词语,心里的感觉就是无论做什么事情都要有一个远大的目标。但那是可望而不可及的。只是一个形...
    前婷后院阅读 982评论 1 5