Css url import: @import — CSS: Cascading Style Sheets

Избегайте CSS @import | GTmetrix

Это специальный аудит GTmetrix Lighthouse. Узнать больше.

CSS @import — это процесс вызова таблиц стилей/файлов CSS из другого файла CSS.

Этот метод заставляет браузер загружать каждый файл CSS последовательно, а не параллельно. Поскольку CSS по умолчанию блокирует рендеринг, это может повлиять на производительность страницы.

Избегайте использования CSS @import , чтобы ускорить загрузку вашей страницы и улучшить ее работу с посетителями.

Какова оценка вашего сайта в этом аудите?

Как использование CSS @import влияет на производительность страницы?

По умолчанию файлы CSS блокируют рендеринг, потому что они блокируют основной поток . Когда это происходит, браузер не может продолжить процесс рендеринга, пока эти файлы не будут загружены, проанализированы и выполнены.

CSS @import вызывает загрузку файлов последовательно , а не параллельно. Это означает, что ваш браузер должен обработать каждый отдельный файл CSS

, прежде чем он сможет начать отображать контент на вашей странице.

Например, если у вас есть файл CSS с именем style1.css и вы хотите импортировать другой файл CSS style2.css в исходный файл CSS, вы должны использовать следующий код внутри style1.css:

URL-адрес импорта ("style2.css")

В приведенном выше примере браузер загрузит, проанализирует и выполнит style1.css, обнаружит, что ему необходимо импортировать style2.css, а затем продолжит загрузку, анализ и выполнение style2.css.

Это требует дополнительных запросов и сетевых циклов, увеличивая потребляемую пропускную способность и, вероятно, замедляя время загрузки вашей страницы.

Избегайте использования CSS @import и используйте другие методы, такие как теги ссылок, встраивание CSS или комбинирование CSS, чтобы позволить браузеру быстрее загружать вашу страницу, а также значительно улучшить взаимодействие с посетителями.

Как GTmetrix запускает этот аудит?

GTmetrix оценивает код вашей страницы и помечает любой CSS @импорт звонок. Этот аудит запускает , если есть хотя бы один такой вызов.

Это пользовательский аудит GTmetrix

Lighthouse не рассматривает использование CSS @import ни в одном из своих аудитов; однако мы в GTmetrix по-прежнему считаем, что они играют важную роль в эффективности вашей веб-страницы.

Мы всегда рекомендуем разработчикам и веб-мастерам устранять блокировку рендеринга на веб-сайтах в интересах повышения производительности и использования CSS 9.0005 @import противоречит этому принципу.

CSS @import заставляет браузер последовательно загружать таблицы стилей, вызывая дополнительные сетевые запросы, дольше блокируя основной поток и увеличивая общее время загрузки страницы.

Следовательно, мы считаем важным продолжить проверку использования CSS @import и указать на лучшие альтернативы.

Как исправить этот аудит?

Как отмечалось выше, есть несколько стратегий, которые вы можете использовать вместо использования CSS 9.0005 @import , например:

1) Использование тегов ссылок

Здесь вы можете использовать теги ссылок двумя способами, например:

а) Использование
 
 

где «style2.css» — это связанный файл CSS, а атрибут media указывает, на каком устройстве будет отображаться связанная таблица стилей.

б) Использование
 
 

где «style2.css» — это импортируемый файл CSS, а тег async означает, что эта таблица стилей загружается асинхронно.

Обратите внимание,

, что атрибуты async следует добавлять только к некритическим таблицам стилей, т. е. к тем, которые не требуются для загрузки критического (или верхнего) содержимого.

2) Комбинирование или встраивание CSS

Объединение и встраивание файлов CSS — это методы, позволяющие уменьшить общее количество файлов CSS.

Узнайте больше об этих оптимизациях в нашей статье о том, как устранить ресурсы, блокирующие рендеринг.

Два способа загрузить только тот CSS, который вам нужен

CSS, что означает каскадные таблицы стилей, — это язык стилей, используемый для представления контента на веб-сайте.

Таблица стилей может быть включена в веб-страницу различными способами; Вы можете вставить , который ссылается на внешний файл CSS, вы можете встроить стили внутри или внутри блока