【问题标题】:what is purpose of this type of css? [duplicate]这种CSS的目的是什么? [复制]
【发布时间】:2014-04-17 18:23:39
【问题描述】:

我想知道下面这种类型的 css 和 js 文件的用途是什么

<link rel="stylesheet" type="text/css" media="all" href="http://example.com.pk/lib/css/fancybox.style.css?v=1.4">

什么是 css?v=1.4 有段时间我发现 js?v=1.3 为什么要给出这些参数?

【问题讨论】:

    标签: javascript css


    【解决方案1】:

    它用于 JS、CSS 版本控制以在文件更改时更新浏览器缓存

    【讨论】:

      【解决方案2】:

      它们用于检索给定资源的特定版本(例如 CSS 文件)。

      【讨论】:

        【解决方案3】:

        这是一个加载 css 文件的链接。 href 属性向我们展示了位置(在本例中为 url)。

        css?v=1.4 是查询字符串的一部分,并且可能是这个特定 css 版本的一部分。

        这主要是在查询字符串中添加以避免缓存(浏览器缓存 css\js 文件),如果您更改 url,它不会在缓存中找到文件。

        【讨论】:

          【解决方案4】:

          这是一个文件版本指示器。很可能它在链接路径中用于控制文件的缓存。 使用此变量,站点管理员可以更改文档标题中指定的样式表的 URL,而无需实际更改文件名。 缓存资源的路由器、浏览器等会看到一个新的 url,并向服务器发出完整的文档请求,返回更新的文件而不是缓存的版本。

          【讨论】:

            【解决方案5】:

            首先,如果链接中的文件以 .css 结尾,则不一定必须是指向指定文件的直接链接。服务器内部可以将此链接重写为某些服务器端脚本(asp、php、...),然后根据查询参数(v=4)决定要提供哪个文件。

            此外,谷歌使用这些来决定要加载哪个库的 api。这基本上回到了我之前已经写过的段落。

            此外,这还可用于确保浏览器加载新版本的脚本。例如,如果您总是加载style.css,浏览器倾向于缓存那些以加快加载速度(除非另有明确说明),这可能会在以后干扰更改。您可能会更改 .css 文件中的某些内容而在浏览器中看不到它,因为浏览器提供的是缓存版本而不是实时版本。因此,您添加 ?v=X 其中 X 是从上一个版本(或全新的版本)递增的,以确保浏览器不会从缓存中加载。

            这真的取决于服务器端查询参数的实现。也有可能它什么都不做,只是作为 html 中开发人员的参考。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2020-03-17
              • 1970-01-01
              • 2018-07-09
              • 1970-01-01
              • 2020-11-23
              • 1970-01-01
              • 2012-07-13
              • 2013-11-19
              相关资源
              最近更新 更多