Задать вопрос
dmlogv
@dmlogv
Универсальный человек

Что означает вопросительный знак после имени css-файла?

Как-то так:
<link href="/bitrix/cache/css/s1/text/kernel/<b>kernel.css?1384438461</b>" type="text/css" rel="stylesheet">

Что означает «?»? В CSS ведь не могут передаваться параметры. Или могут?
  • Вопрос задан
  • 8979 просмотров
Подписаться 4 Оценить 2 комментария
Решения вопроса 1
HDApache
@HDApache
PHP программист
антикэш, видимо эта цифра после каждого релоада страницы меняется. Некоторые разработчики делают это для того что бы браузер не кэшировал стили и можно было их править и мгновенно видеть результат. Возможно меняется не каждый раз автоматом, а в ручную как только меняется файл стилей.

Цифра 1384438461 это похоже unix time stamp = 11 / 14 / 13 @ 2:14:21pm UTC видимо это дата и время последней модификации файла kernel.css
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
akashtrih
@akashtrih
По умолчанию браузер кеширует css- и js-файлы.
Когда разработчик что-то меняет в этих файлах, пользователи должны получить их заново. Чтобы это сделать, разработчик просит пользователя очистить кеш браузера или нажать Ctrl+F5, чтобы произвести полное обновление страницы. Короче, чтобы избавить пользователя от этих действий, но обеспечить их актуальными версиями файлов, к урлу дописывают такой параметр, который меняясь, провоцирует браузер перекачивать файлы.
В данном случае, скорее всего, добавляется время последней модификации файла в виде времени в секундах от начала эпохи UNIX. Это обеспечивает кеширование файлов и, в то же время, обновление кеша, когда требуется.

Upd: ответы в соседнем вопросе: Обход кэширования js/css
Статья по теме: Умное кеширование и версионность css/js
Ответ написан
в css они(параметры) и не передаются, и в данном случае, вы имеете не прямую ссылку на css файл, а на скрипт, который согласно переданному параметру отдаст вам соответствующий файл.
а что этот параметр означает, дело десятое.
Ответ написан
Комментировать
Stillborn
@Stillborn
web-developer, web-designer
Присоединюсь к ответу @Zakhar0v :
Как вариант! Либо это "антикеш", либо css на которых ссылается сайт является скриптом выдачи нужного по заданному параметру. Я так делаю выдачу картинок определнных размеров по имени запрошенного файла(small|medium|big.jpg), если хостинг у клиента не особо велик.
Ответ написан
Комментировать
Это временная метка - дата последнего изменения исходных файлов стилей (не сжатых) , скриптов, картинок.
Как делаю я:
www.sitename.ru/1388075788/style.css
Где 1388075788 время/дата последнего изменения одного из файлов стилей (тот который был изменён последним)
В результате любые изменения в оформлении сайта моментально отображаются на стороне клиента и, соответственно, обновляется кэш.
Главное не забывать указывать максимальный срок хранения кэша браузером, в рамках заботы о посетителе :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы