缩小样式表和脚本文件可以提高站点的性能。
但是,有时您可能希望使文件的非缩小版本可用 - 可能是为了遵守 GPL 或实现可选的按需代码 REST 约束。
有没有标准化的方法来做到这一点?我能想到的唯一方法是使用命名约定:
http://example.com/css/styles.min.css
- 缩小版
http://example.com/css/styles.css
- 非缩小版
这种方法的问题在于它依赖于带外约定。有没有更严格的方法来实现非缩小的按需代码?
缩小样式表和脚本文件可以提高站点的性能。
但是,有时您可能希望使文件的非缩小版本可用 - 可能是为了遵守 GPL 或实现可选的按需代码 REST 约束。
有没有标准化的方法来做到这一点?我能想到的唯一方法是使用命名约定:
http://example.com/css/styles.min.css
- 缩小版
http://example.com/css/styles.css
- 非缩小版
这种方法的问题在于它依赖于带外约定。有没有更严格的方法来实现非缩小的按需代码?
您可以为 .css 文件提供某种形式的处理程序(例如 .NET 处理程序),默认情况下提供缩小版本,但如果在查询字符串中找到某个参数(例如 debug=true),则提供非缩小版本版本。
这样,您始终可以参考 .css 版本,如果有可用的缩小版本,则可以优先使用。
建议:使用超媒体。好处:您选择的 URI 并不重要。
如果以可见的方式向您的最终用户提供源,在他们正常使用您的 Web 应用程序的过程中:
<a target="_blank" href="http://www.example.com/css/styles.css"
rel="sourcecode" title="The non-minified CSS source.">
Click here for CSS source code. </a>
<a target="_blank" href="http://www.example.com/scripts/buttons.js"
rel="sourcecode" title="The non-minified JavaScript source.">
Click here for JavaScript source code. </a>
如果向开发人员用户提供源,在他们正常使用 Web 应用程序的过程之外,在源的不可见部分中引用它们可能是有意义的:
<link rel="sourcecode" type="text/css"
href="http://www.example.com/css/styles.css"
title="The non-minified CSS source." />
<link rel="sourcecode" type="text/javascript"
href="http://www.example.com/scripts/buttons.js"
title="The non-minified JavaScript source." />
这些链接仅对查看 HTML 源代码的开发人员或真正欺骗用户代理的人可用。
同样,您可以将未缩小的 CSS(但不是 JS)源代码作为备用样式表。
注意:rel="sourcecode"
不是标准(我只是编造的),但我很确定它不违反规范;并且与title
它一起有助于传达链接的目的。