所以http://cdnjs.com/和我的一些同行都推荐我们使用//
前面的资源。这个术语或技术叫什么?据我了解,目的是这样http
或被https
保留。但是,当我想在谷歌上说yepnope
与它的兼容性时,我该怎么称呼它?
问问题
70 次
1 回答
3
它是一个“相对 URL”——在这种情况下,一个没有协议部分的 URL(因此它使用其父文档中的协议),就像/foo.html
一个没有协议或服务器名称部分的相对 URL(因此使用协议和服务器其父文档)。
协议相关 URL 的目的是它们可以在文档之间移植(http
并且https
短一点)。因此,如果您有:
<link rel="stylesheet" href="//cdnjs.cloudflare.com/etc.css">
...在页面上http://example.com
,URL 扩展为
http://cdnjs.cloudflare.com/etc.css
...但如果它在页面上https://example.com
,它会扩展为
https://cdnjs.cloudflare.com/etc.css
...并且您不会从浏览器中收到“混合的安全和不安全内容”警告。
一个轻微的缺点是,如果您使用直接从文件系统打开的文件进行一些快速而肮脏的本地测试,它们的协议是file:
,因此 URL 最终是
文件://cdnjs.cloudflare.com/etc.css
...这可能不是指您计算机上的有效资源(并导致关于 SO 的问题)。
更多关于我的博客:跳过协议
于 2013-03-11T14:45:58.313 回答