Critical Rendering Path
- 8. Converting HTML to the DOM
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="style.css" rel="stylesheet">
<title>Critical Path</title>
</head>
<body>
<p>Hello <span>VlbgWebDev</span> people!</p>
<div><img src="awesome-photo.jpg"></div>
</body>
</html>
- 12. Characters
Tokens
Nodes
DOM
Bytes
3C 62 6F 64 79 3E 48 65 6C 6C 6F 2C 20 3C 73 70 61 6E 3E 77 6F 72 6C
64 21 3C 2F 73 70 61 6E 3E 3C 2F 62 6F 64 79 3E
<html><head>…</head><body><p>Hello <span>VlbgWebDev</span>…
- 13. Characters
Tokens
Nodes
DOM
Bytes
3C 62 6F 64 79 3E 48 65 6C 6C 6F 2C 20 3C 73 70 61 6E 3E 77 6F 72 6C
64 21 3C 2F 73 70 61 6E 3E 3C 2F 62 6F 64 79 3E
<html><head>…</head><body><p>Hello <span>VlbgWebDev</span>…
StartTag: html StartTag: head EndTag: head… StartTag: body StartTag: p Hello …
- 14. Characters
Tokens
Nodes
DOM
Bytes
3C 62 6F 64 79 3E 48 65 6C 6C 6F 2C 20 3C 73 70 61 6E 3E 77 6F 72 6C
64 21 3C 2F 73 70 61 6E 3E 3C 2F 62 6F 64 79 3E
<html><head>…</head><body><p>Hello <span>VlbgWebDev</span>…
StartTag: html StartTag: head EndTag: head… StartTag: body StartTag: p Hello …
html head meta body p Hello
- 15. Characters
Tokens
Nodes
DOM
Bytes
3C 62 6F 64 79 3E 48 65 6C 6C 6F 2C 20 3C 73 70 61 6E 3E 77 6F 72 6C
64 21 3C 2F 73 70 61 6E 3E 3C 2F 62 6F 64 79 3E
<html><head>…</head><body><p>Hello <span>VlbgWebDev</span>…
StartTag: html StartTag: head EndTag: head… StartTag: body StartTag: p Hello …
html head meta body p Hello
html
body
meta link p
div
img
span
head
Hello
VlbgWebDev
people!
- 18. <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="style.css" rel="stylesheet">
<title>Critical Path</title>
</head>
<body>
<p>Hello <span>VlbgWebDev</span> people!</p>
<div><img src="awesome-photo.jpg"></div>
</body>
</html>
- 19. <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="style.css" rel="stylesheet">
<title>Critical Path</title>
</head>
<body>
<p>Hello <span>VlbgWebDev</span> people!</p>
<div><img src="awesome-photo.jpg"></div>
</body>
</html>
- 20. body { font-size: 16px }
p { font-weight: bold }
span { color: red }
p span { display: none }
img { border: 1px solid red }
- 26. Characters
Tokens
Nodes
CSSOM
Bytes
3C 62 6F 64 79 3E 48 65 6C 6C 6F 2C 20 3C 73 70 61 6E 3E 77 6F 72 6C
64 21 3C 2F 73 70 61 6E 3E 3C 2F 62 6F 64 79 3E
body {font-size: 16px} p {font-weight: bold} p span {display: none} …
- 27. Characters
Tokens
Nodes
CSSOM
Bytes
3C 62 6F 64 79 3E 48 65 6C 6C 6F 2C 20 3C 73 70 61 6E 3E 77 6F 72 6C
64 21 3C 2F 73 70 61 6E 3E 3C 2F 62 6F 64 79 3E
body {font-size: 16px} p {font-weight: bold} p span {display: none} …
body
p img
span
font-size: 16px
font-weight: bold
font-size: 16px
font-weight: bold
color: red
display: none
font-size: 16px
border: 1px solid red
font-size: 16px
- 40. body
p
img
span
font-size: 16px
font-weight: bold
color: red
display: none
font-size: 16px
font-weight: bold
font-size: 16px
border: 1px solid red
font-size: 16px
CSSOM
Render Tree
body
p
font-size: 16px
Hello
html
body
meta link p
div
img
span
head
Hello
VlbgWebDev
people!
DOM
- 41. body
p
img
span
font-size: 16px
font-weight: bold
color: red
display: none
font-size: 16px
font-weight: bold
font-size: 16px
border: 1px solid red
font-size: 16px
CSSOM
Render Tree
body
p
font-size: 16px
Hello
font-size: 16px
font-weight: bold
html
body
meta link p
div
img
span
head
Hello
VlbgWebDev
people!
DOM
- 42. body
p
img
span
font-size: 16px
font-weight: bold
color: red
display: none
font-size: 16px
font-weight: bold
font-size: 16px
border: 1px solid red
font-size: 16px
CSSOM
Render Tree
body
p
font-size: 16px
Hello
font-size: 16px
font-weight: bold
people!
html
body
meta link p
div
img
span
head
Hello
VlbgWebDev
people!
DOM
- 43. body
p
img
span
font-size: 16px
font-weight: bold
color: red
display: none
font-size: 16px
font-weight: bold
font-size: 16px
border: 1px solid red
font-size: 16px
CSSOM
Render Tree
body
p
font-size: 16px
img
font-size: 16px
border: 1px solid red
div
Hello
font-size: 16px
font-weight: bold
people!
html
body
meta link p
div
img
span
head
Hello
VlbgWebDev
people!
DOM
- 47. <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Critial Path: Hello world!</title>
</head>
<body>
<div style="width: 50%">
<div style="width: 50%">Hello world!</div>
</div>
</body>
</html>
Layout
- 48. <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Critial Path: Hello world!</title>
</head>
<body>
<div style="width: 50%">
<div style="width: 50%">Hello world!</div>
</div>
</body>
</html>
Layout
- 49. <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Critial Path: Hello world!</title>
</head>
<body>
<div style="width: 50%">
<div style="width: 50%">Hello world!</div>
</div>
</body>
</html>
Layout
viewport size =
device-width
- 50. div (50%)
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Critial Path: Hello world!</title>
</head>
<body>
<div style="width: 50%">
<div style="width: 50%">Hello world!</div>
</div>
</body>
</html>
Layout
viewport size =
device-width
- 51. div (50%)
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Critial Path: Hello world!</title>
</head>
<body>
<div style="width: 50%">
<div style="width: 50%">Hello world!</div>
</div>
</body>
</html>
Layout
viewport size =
device-width
div (50%)
Hello world!
- 82. <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="style.css" rel="stylesheet">
<link href="style.css" rel="stylesheet" media="orientation:landscape">
<link href="style.css" rel="stylesheet" media="screen and (max-device-height: 799px)">
<link href="style.css" rel="stylesheet" media="only screen and (color)">
<link href="style.css" rel="stylesheet" media="all and (min-color-index: 256)">
<link href="style.css" rel="stylesheet" media="print">
<title>Critical Path</title>
</head>
</html>