찾다
웹 프론트엔드CSS 튜토리얼CSS 로딩이 페이지 로딩 속도에 영향을 미치나요?

CSS 로딩이 페이지 로딩 속도에 영향을 미치나요?

Feb 18, 2024 pm 09:52 PM
표현비동기 로딩차단하다CSS 로딩

CSS 로딩이 페이지 로딩 속도에 영향을 미치나요?

CSS 로딩이 페이지 렌더링을 차단할지 여부는 일반적인 질문입니다. 이 기사에서는 CSS 로딩이 페이지 렌더링에 미치는 영향을 자세히 살펴보고 데모용 특정 코드 예제를 제공합니다.

먼저 CSS 로딩이 페이지 렌더링에 어떤 영향을 미치는지 알아야 합니다. 브라우저가 HTML을 구문 분석할 때 외부 CSS 파일을 발견하면 브라우저는 HTML 구문 분석을 일시 중지한 다음 CSS 파일 다운로드를 시작합니다. 브라우저가 CSS 파일을 다운로드하고 구문 분석한 후에만 브라우저가 HTML 구문 분석을 계속합니다. 이는 CSS 로딩이 페이지 렌더링을 차단한다는 것을 의미합니다.

이를 보여주기 위해 외부 CSS 파일과 자리 표시자 요소가 포함된 간단한 HTML 파일을 만들 수 있습니다. CSS 파일에서 배경색을 정의하고 HTML의 자리 표시자 요소에 이 스타일을 적용하겠습니다. 그런 다음 개발자 도구를 사용하여 페이지의 렌더링 프로세스를 살펴보겠습니다.

HTML 코드는 다음과 같습니다.

<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="styles.css">
</head>
<body>
  <div class="placeholder"></div>
  <script>
    console.log("This is a placeholder element.");
  </script>
</body>
</html>

CSS 코드(styles.css로 저장됨)는 다음과 같습니다.

.placeholder {
  width: 200px;
  height: 200px;
  background-color: red;
}

HTML 파일을 열고 콘솔 출력을 보면 가 다음과 같습니다. 자리 표시자 요소입니다. code>는 CSS 파일이 로드된 후에만 출력됩니다. 이는 CSS 로딩이 페이지 렌더링을 차단한다는 것을 보여줍니다. <code>This is a placeholder element.会在CSS文件加载完成后才输出。这表明CSS加载确实会阻塞页面的渲染。

然而,有一种情况下CSS加载不会阻塞页面渲染。如果我们将CSS文件放在HTML的标签中,并且使用<link>标签的rel属性值设置为preload,CSS文件将会以异步方式进行加载,而不会阻塞页面的渲染。以下是修改后的HTML代码示例:

<!DOCTYPE html>
<html>
<body>
  <div class="placeholder"></div>
  <link rel="preload" href="styles.css" as="style">
  <link rel="stylesheet" href="styles.css">
  <script>
    console.log("This is a placeholder element.");
  </script>
</body>
</html>

在这个示例中,我们将CSS文件的链接放在了标签中,并使用了<link>标签的rel属性来异步加载CSS文件。如果我们再次打开这个HTML文件并查看控制台输出,我们会注意到This is a placeholder element.会在CSS文件加载之前输出。这意味着页面的渲染不会被CSS文件的加载阻塞。

总结起来,CSS加载会阻塞页面的渲染,除非我们使用异步加载的方法。异步加载CSS文件可以通过将<link>标签放在标签中,并使用rel属性的preload

그러나 CSS 로딩이 페이지 렌더링을 차단하지 않는 상황이 있습니다. HTML의 태그에 CSS 파일을 배치하고 <link> 태그의 rel 속성 값을 사용하면 미리 로드하려면 페이지 렌더링을 차단하지 않고 CSS 파일이 비동기적으로 로드됩니다. 다음은 수정된 HTML 코드의 예입니다.

rrreee

이 예에서는 CSS 파일에 대한 링크를 태그에 넣고 <link> code> 태그의 rel 속성을 ​​사용하여 CSS 파일을 비동기적으로 로드합니다. HTML 파일을 다시 열고 콘솔 출력을 보면 This is a placeholder element.가 CSS 파일이 로드되기 전에 출력된다는 것을 알 수 있습니다. 이는 CSS 파일 로드로 인해 페이지 렌더링이 차단되지 않음을 의미합니다. 🎜🎜요약하자면, 비동기 로딩 방법을 사용하지 않는 한 CSS 로딩은 페이지 렌더링을 차단합니다. CSS 파일의 비동기 로딩은 태그 내에 <link> 태그를 배치하고 rel 속성을 ​​사용하여 수행할 수 있습니다. 달성할 preload 값. 🎜🎜 따라서 웹페이지 성능을 최적화할 때 주요 CSS 코드를 HTML에 인라인하는 것을 고려할 수 있습니다. 이렇게 하면 CSS 로딩으로 인해 페이지 렌더링이 차단되는 것을 방지할 수 있습니다. 그런 다음 중요하지 않은 CSS를 비동기식으로 로드하여 페이지 렌더링 속도를 향상시킬 수 있습니다. 🎜

위 내용은 CSS 로딩이 페이지 로딩 속도에 영향을 미치나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
너무 많은 색상 링크너무 많은 색상 링크Apr 13, 2025 am 11:36 AM

최근에 색상에 대한 도구, 기사 및 리소스가 많이있었습니다. 당신의 즐거움을 위해 여기에 반올림하여 몇 개의 탭을 닫을 수 있습니다.

Flexbox에서 자동 마진이 작동하는 방법Flexbox에서 자동 마진이 작동하는 방법Apr 13, 2025 am 11:35 AM

Robin은 이전에 이것을 다루었지만 지난 몇 주 동안 그것에 대해 약간의 혼란을 듣고 다른 사람이 설명하는 데 찌르는 것을 보았습니다.

움직이는 무지개가 강조합니다움직이는 무지개가 강조합니다Apr 13, 2025 am 11:27 AM

나는 샌드위치 사이트의 디자인을 절대적으로 좋아합니다. 많은 아름다운 특징 중에는 무지개가있는이 헤드 라인이 스크롤 할 때 움직이는 밑줄이 있습니다. 그것은 아닙니다

새해, 새 직업? 그리드 구동 이력서를 만들자!새해, 새 직업? 그리드 구동 이력서를 만들자!Apr 13, 2025 am 11:26 AM

많은 인기있는 이력서 디자인은 그리드 모양으로 섹션을 배치하여 사용 가능한 페이지 공간을 최대한 활용하고 있습니다. CSS 그리드를 사용하여 레이아웃을 만듭니다

너무 많이 재 장전하는 습관에서 사용자를 해소하는 한 가지 방법너무 많이 재 장전하는 습관에서 사용자를 해소하는 한 가지 방법Apr 13, 2025 am 11:25 AM

페이지 새로 고침은 일입니다. 때로는 반응이 없다고 생각하거나 새로운 콘텐츠를 사용할 수 있다고 생각할 때 페이지를 새로 고침합니다. 때때로 우리는 단지 화가났습니다

React를 사용한 도메인 구동 설계React를 사용한 도메인 구동 설계Apr 13, 2025 am 11:22 AM

React 세계에서 프론트 엔드 애플리케이션을 구성하는 방법에 대한 지침은 거의 없습니다. (“옳은 느낌”이 될 때까지 파일을 움직여도 롤). 진실

비활성 사용자 감지비활성 사용자 감지Apr 13, 2025 am 11:08 AM

대부분의 경우 사용자가 응용 프로그램에 적극적으로 참여하거나 일시적으로 비활성화되어 있는지에 대해 신경 쓰지 않습니다. 비활성, 의미, 아마도 그들

Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufoo는 항상 통합으로 훌륭했습니다. 캠페인 모니터, MailChimp 및 Typekit과 같은 특정 앱과 통합이 있지만

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기