我可以将所有的http://链接改为//吗?
戴夫沃德说,
这并不是轻量阅读,但RFC 3986第4.2节规定了完全合格的URL,它们完全省略了协议(HTTP或HTTPS)。 当URL的协议被省略时,浏览器会使用底层文档的协议。
简而言之,这些“无协议”的URL允许像这样的引用在您尝试使用的每个浏览器中工作:
//ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js
起初看起来很奇怪,但是这个“无协议”URL是引用通过HTTP和HTTPS提供的第三方内容的最佳方式。
这肯定会解决我们在HTTP页面上看到的一系列混合内容错误 - 假设我们的资产可通过HTTP和HTTPS获得。
这完全是跨浏览器兼容? 还有其他警告吗?
我在发布前彻底测试过它。 在Browsershots可用的所有浏览器中,我只能找到一个不能正确处理协议相对URL的浏览器:一个叫做Dillo的模糊的* nix浏览器。
我收到的反馈有两个缺点:
考虑到是否应该这样做的问题,是否可以将其所有链接改为与协议相关的问题可能是没有意义的。 据爱尔兰保罗说:
2014.12.17:既然SSL受到了所有人的鼓励,并没有性能方面的担忧,这种技术现在是一种反模式。 如果您需要的资产在SSL上可用,请始终使用https://资产。
如果您使用无协议URL来加载样式表,则IE 7和8将下载它们两次:http://www.stevesouders.com/blog/2010/02/10/5a-missing-schema-double-download/
所以,如果你喜欢高性能的话,这是为了避免CSS。
链接地址: http://www.djcxy.com/p/42215.html