【发布时间】:2014-02-13 02:34:16
【问题描述】:
为什么在域名前使用<link href="//something.com/style.css" rel="stylesheet"> 而不是http:// 或https://?
如果我们使用href=//,它会随着链接而改变吗?就像在 SSL 模式下会自动更改为https://?
【问题讨论】:
标签: html uri protocol-relative
为什么在域名前使用<link href="//something.com/style.css" rel="stylesheet"> 而不是http:// 或https://?
如果我们使用href=//,它会随着链接而改变吗?就像在 SSL 模式下会自动更改为https://?
【问题讨论】:
标签: html uri protocol-relative
正如您所猜测的那样:使用 href="//..." 而不指定 URI 方案可以动态匹配用于访问资源的任何协议,例如 http 或 https。
这实际上只是一个相对路径的示例,但它是相对于协议的。
来源:IETF 的 URI syntax documentation,第 3.1 节(方案)和第 4.2 节(相对参考)
【讨论】:
是的,它将使用当前协议。
即如果当前页面是https,它将使用https 访问href。
如果http 则通过普通http 访问链接。
如果主机页面是 https,这将防止浏览器警告,并且比普通的 http 链接更安全。
【讨论】: