地址栏输入URL浏览器会发生什么?

news2024/12/23 11:24:25

这个问题如果要展开讲的话,能讲个半小时,所以我们侧重于浏览器的渲染上。其他的点用一句话总结带过。

1.  输入URL =>

2. 浏览器分析域名结构 =>

3. 域名 转 IP (衍生问题  1 为什么要用IP,有多少位(网易)2 既然mac是唯一的,那为什么不用mac地址(字节)3  DNS递归详细讲讲, 使用到的网络协议(阿里)) =>

4. 三次握手   => ( 衍生问题  1 两次握手行吗,为什么  2.讲讲 HTTPS 在这之后多一次的 SSL握手 

5.  建立 HTTP连接  (衍生问题, 各大版本的http,1.0 , 1.1, 2.0  )

6. 服务器响应 

7. 四次挥手关闭 TCP 

8. 加载HTML,CSS,JS  

 渲染引擎把 html 字符串 转成 DOM树 与此同时 把 css 转为 CSSOM 树;

冷知识1: 当html 完全被解析 DOMContentLoaded事件调用

冷知识2: 解析 css 的时候 CSS选择器的读取顺序是从右向左

当解析html文件时候,遇到了js文件,会停止html文件的解析! (因为可能会改变dom结构)

如果script 标签有 async 和 defer 则不会停止。这两者的区别为,async 不会保持原脚本的顺序,适用于一些需要在首屏用到的script,则defer则会保持原脚本顺序。

解析完了html css js,也生成了dom树后,浏览器还干了什么呢??

下面几步:

样式计算

布局

绘制

光栅化

合成

各种事件 ...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2264207.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

腾讯云智能结构化OCR:以多模态大模型技术为核心,推动跨行业高效精准的文档处理与数据提取新时代

🎼个人主页:【Y小夜】 😎作者简介:一位双非学校的大三学生,编程爱好者, 专注于基础和实战分享,欢迎私信咨询! 🎆入门专栏:🎇【MySQL&#xff0…

内核执行时动态的vmlinux的反汇编解析方法及static_branch_likely机制

一、背景 在之前的博客里,我们讲到了tracepoint(内核tracepoint的注册回调及添加的方法_tracepoint 自定义回调-CSDN博客)和kprobe(获取任意一个进程的共享内存的fd对应的资源,增加引用,实现数据的接管——…

Burp与其他安全工具联动及代理设置教程

Burp Suite 是一款功能强大的 Web 安全测试工具,其流量拦截和调试功能可以与其他安全工具(如 Xray、Yakit、Goby 等)实现联动,从而提升渗透测试的效率。本文将详细讲解 Burp 与其他工具联动的原理以及代理设置的操作方法&#xff…

Git配置公钥步骤

GIt公钥的配置去除了git push输入账号密码的过程,简化了push流程。 1.生成SSH公钥和私钥 ssh-keygen -t rsa -b 4096 -C “your_emailexample.com” 遇到的所有选项都按回车按默认处理。获得的公钥私钥路径如下: 公钥路径 : ~/.ssh/id_rsa.pub 私钥路径…

【蓝桥杯选拔赛真题96】Scratch风车旋转 第十五届蓝桥杯scratch图形化编程 少儿编程创意编程选拔赛真题解析

目录 scratch风车旋转 一、题目要求 编程实现 二、案例分析 1、角色分析 2、背景分析 3、前期准备 三、解题思路 1、思路分析 2、详细过程 四、程序编写 五、考点分析 六、推荐资料 1、入门基础 2、蓝桥杯比赛 3、考级资料 4、视频课程 5、python资料 scratc…

未来 AI 在企业应用中的重心

1. LLM 中精度、参数、数据、性能、以及成本之间的权衡是什么? 在大型语言模型(LLM, Large Language Models)中,精度、参数数量、训练数据量、性能和成本之间的权衡是一个复杂且多维度的问题。以下是这些因素之间关系的简要分析&…

Docker 安装 禅道-21.2版本-外部数据库模式

Docker 安装系列 1、拉取最新版本(zentao 21.2) [rootTseng ~]# docker pull hub.zentao.net/app/zentao Using default tag: latest latest: Pulling from app/zentao 55ab1b300d4b: Pull complete 6b5749e5ef1d: Pull complete bdccb03403c1: Pul…

排序算法 (插入,选择,冒泡,希尔,快速,归并,堆排序)

排序:经常在算法题中作为一个前置操作,为了之后的贪心or else做个铺垫,虽然我们经常都只是调用个sort,但是了解一些排序算法可以扩充下知识库 排序的分类: 从存储设备角度: ✓ 内排序:在排序过程中所有数据元素都在内存中; ✓ 外排序&a…

web复习(五)

一、补零 二、打印出五行五列的星星 三、用户输入行数和列数并打印相应行数和列数的⭐ 四、打印倒三角星星(第一行一个,第二行两个...,以此类推) 五、用户输入秒数,可以自动转换为时分秒 六、随机点名

法规标准-C-NCAP评测标准解析(2024版)

文章目录 什么是C-NCAP?C-NCAP 评测标准C-NCAP评测维度三大维度的评测场景及对应分数评星标准 自动驾驶相关评测场景评测方法及评测标准AEB VRU——评测内容(测什么?)AEB VRU——评测方法(怎么测?)车辆直行与前方纵向行走的行人测试场景&…

XRP价格跌破2.20美元 1.94美元是否下一波牛市的关键支撑?

原文转自:XRP价格跌破2.20美元 1.94美元是否下一波牛市的关键支撑? - 币热网 - 区块链数字货币新闻消息资讯 XRP价格经历剧烈波动后强势反弹,$1.94或成新牛市关键支撑 在过去24小时内,XRP价格经历了一场过山车式的剧烈波动。价…

centos-stream9系统安装docker

如果之前安装过docker需要删除之前的。 sudo dnf -y remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine 安装yum-utils工具: dnf -y install yum-utils dnf-plugin…

H264编解码标准码流分析:SPS语法

H264编解码标准 SPS 语法解析 解释:H264编解码标准中的SPS(Sequence Parameter Set,序列参数集)是一组编码视频序列的全局参数,包含了视频编码序列的基本属性和配置信息。分析工具:elecard streamEye、elecard StreamAnalyzer、h264Visa 等elecard StreamAnalyzer 展示形…

使用 AI 辅助开发一个开源 IP 信息查询工具:一

本文将分享如何借助当下流行的 AI 工具,一步步完成一个开源项目的开发。 写在前面 在写代码时,总是会遇到一些有趣的机缘巧合。前几天,我在翻看自己之前的开源项目时,又看到了 DDNS 相关的讨论。虽然在 2021 年我写过两篇相对详细的教程&am…

门控循环单元(GRU):深度学习中的序列数据处理利器

目录 ​编辑 引言 GRU的诞生背景 GRU的核心机制 GRU的计算过程 GRU的数学公式 GRU的应用领域 代码示例:PyTorch中的GRU GRU与LSTM的比较 参数比较 GRU的技术发展 BiGRU(双向GRU) BiGRU的实现示例 GRU与CNN的结合 GRU的应用案例…

Sui 基金会任命 Christian Thompson 为新任负责人

Sui 基金会是专注于推动 Sui 蓬勃发展的生态增长与采用的机构。近日,基金会宣布任命 Christian Thompson 为新任负责人。在 Sui 主网发布的开创性一年里,Sui 凭借其无与伦比的速度、可扩展性和效率,迅速崛起为领先的 Layer 1 区块链之一&…

Vue2五、商品分类:My-Tag表头组件,My-Table整个组件

准备: 安包 npm less less-loader。拆分:一共分成两个组件部分: 1:My-Tag 标签一个组件。2:My-Table 整体一个组件(表头不固定,内容不固定(插槽)) 一&…

mysql运维篇笔记——日志,主从复制,分库分表,读写分离

目录 日志 错误日志 二进制日志 查询日志 慢查询日志 主从复制 概念: 优点: 原理: 搭建: 1,服务器准备 2,主库配置 3,从库配置 4,测试 分库分表: 介绍 问题分析 中心思想…

【JavaEE初阶】线程 和 thread

本节⽬标 认识多线程 掌握多线程程序的编写 掌握多线程的状态 一. 认识线程(Thread) 1概念 1) 线程是什么 ⼀个线程就是⼀个 "执⾏流". 每个线程之间都可以按照顺序执⾏⾃⼰的代码. 多个线程之间 "同时" 执⾏着多份代码. 还…

设计模式期末复习

一、设计模式的概念以及分类 二、设计模式的主题和意图 设计模式的主题是关于软件设计中反复出现的问题以及相应的解决方案。这些主题是基于长期实践经验的总结,旨在提供一套可复用的设计思路和框架,以应对软件开发中的复杂性和变化性。 三、面向对象程…