CSS-файл не обновляется в браузере - PullRequest
33 голосов
/ 15 февраля 2010

Когда я делаю какие-либо изменения в моем файле CSS, эти изменения не отражаются в браузере. Как я могу это исправить?

Ответы [ 12 ]

50 голосов
/ 15 февраля 2010

Для недель ? Попробуйте открыть саму таблицу стилей (введя ее адрес в адресную строку браузера) и нажав F5 . Если он все еще не обновляется, ваша проблема лежит в другом месте.

Если вы обновляете таблицу стилей и хотите, чтобы она обновлялась в кэше каждого посетителя, очень популярный способ сделать это - добавить номер версии в качестве параметра GET. Таким образом, таблица стилей обновляется при необходимости, но не чаще, чем это.

<link rel="stylesheet" type="text/css" href="styles.css?version=51">
26 голосов
/ 22 мая 2015

Исправление называется "жесткое обновление" http://en.wikipedia.org/wiki/Wikipedia:Bypass_your_cache

В большинстве браузеров Windows и Linux: удерживая нажатой клавишу Ctrl, нажмите F5.

В Apple Safari: Удерживайте ⇧ Shift и нажмите кнопку «Обновить» на панели инструментов.

В Chrome и Firefox для Mac: Нажмите и удерживайте обе клавиши ⌘ Cmd + ⇧ Shift и нажмите R.

16 голосов
/ 15 февраля 2010

Хороший способ перезапустить ваш CSS - это:

<link href='styles.css?version=1' rel='stylesheet'></link>

А затем просто увеличивайте номер версии, когда вы меняете свой CSS. Браузер будет подчиняться. Я считаю, что StackOverflow использует эту технику.

11 голосов
/ 15 февраля 2010

Я всегда использую Ctrl + Shift + F5 по привычке, оно должно вызывать полное обновление, включая обход любых http-прокси, которыми вы можете быть переживает.

6 голосов
/ 10 января 2017

Do Shift + F5 в Windows. Кеш действительно расстраивает в таких вещах

3 голосов
/ 11 апреля 2015

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

Оказывается, я полностью забыл, что у меня была настройка CloudFlare в домене, на котором я тестировался.

CloudFlare кэширует ваш JavaScript и CSS. Включил режим разработки и БАМ!

Серьезно ... два целых дня.

2 голосов
/ 22 сентября 2016

Имея эту проблему, прежде чем я нашел свое собственное ленивое решение (на основе предложений других людей). Это должно быть полезно, если ваше <head> содержимое проходит через интерпретатор php.

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

<link rel="stylesheet" type="text/css" href="styles.css?<?=filesize('styles.css');?>">

РЕДАКТИРОВАТЬ: Как предлагается в комментариях, filemtime() на самом деле является лучшим решением, если ваши файлы правильно обновили время модификации (я сам испытывал такие проблемы в прошлом, работая с удаленными файлами):

<link rel="stylesheet" type="text/css" href="styles.css?<?=filemtime('styles.css');?>">
0 голосов
/ 23 октября 2015

Я столкнулся с той же проблемой. Переименование файла сработало для меня.

0 голосов
/ 05 августа 2015

Если вы используете веб-формы ASP.NET, убедитесь, что вы используете правильную тему:

enter image description here

Я потратил около часа, пытаясь решить эту проблему!

0 голосов
/ 15 февраля 2010

Это локальный пользовательский файл CSS? Это ваш сайт? Может быть, вам следует очистить кеш.

Также последнее объявление CSS имеет приоритет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...