作者hijkxyzuw (i,j,k) ×(x,y,z)
看板Web_Design
标题[问题] 使用 // 取代 http:// 或 https:// ?
时间Sat May 7 17:30:21 2016
在一些网站会看到用 // 开头取代用 http:// 或 https:// 开头。
像是 flickr 的内嵌分享连结就是用 //embedr.filckr.com/xxxx.js
google 也建议使用这样的语法,原因是因为网站可能改用 http 或 https 。
https://google.github.io/styleguide/htmlcssguide.xml#Protocol
这种写法的接受度如何?
我的 firefox 44 还 45 认不出来......,
会去找根目录上的档案;当然是找不到啦。
windows XP 上不再被支援的 chrome 也不支援。
====================================================
题外话,
其实是在查 URL 中用来指明协议开头的双斜线
有什麽意义时无意间看到的。
而伯纳李 ( Berners-Lee ) 也为这件事公开道歉了 XD
http://www.sitepoint.com/sir-tim-berners-lee-http-slashes/
在这串 slackoverflow 有人引用了他的看法:
http://superuser.com/questions/465565/in-a-url-what-is-for
大意是双斜线有引人注目的作用;
就像看到 @ 会直觉想到 email ,看到 // 会想到 URL 。
但单斜线也可以啊!
--
作者 sky226778 (青蛙呱呱呱) 看板 Gossiping
标题 [问卦] 碗粿和萝卜糕的差别
时间 Tue Oct 6 21:04:06 2015
→ r89556: 萝卜糕是用萝卜做的 碗糕是用碗做的 10/06 21:05
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.116.207.237
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Web_Design/M.1462613427.A.CCA.html
1F:→ jmlntw: 你是在本机上测试吧,那当然认不出来 05/07 17:36
意思是如果用了 file:// ,浏览器才会将她解析为相对路径吗?
※ 编辑: hijkxyzuw (140.116.207.237), 05/07/2016 17:43:30
2F:推 LPH66: 你把它理解成「对协议那一层的『相对』路径」 05/07 17:46
3F:→ jmlntw: 省略的话浏览器会去找跟它来源一样的 scheme, 05/07 17:47
4F:→ LPH66: 也就是说取代掉原网址 // 後的部份 05/07 17:47
5F:→ jmlntw: http 找 http、https 找 https、file:// 就找 file:// 05/07 17:47
两位推文混在一起了 :目
大概是用了 file:// 就会把没写协议视为 file:// 。
而另一个使用双斜线的理由就是避免和根目录的单斜线搞混。
像 /path/to/file.js 和 //server.name/path/to/file.js
就是用双斜线来区分是主机名或路径名。
但使用 :/ 甚至是 : 也可以啊!就变成
:server.name/path/file.js 或 :/server.name/path/file.js 。
※ 编辑: hijkxyzuw (140.116.207.237), 05/07/2016 17:59:05
6F:→ ssccg: 你说的这两个不可以,因为authority那段是optional的 05/07 22:08
7F:→ ssccg: scheme:[//[user:pwd@]host[:port]][/]path[?query][#frag] 05/07 22:09
8F:→ ssccg: 以你的写法server.name也直接是path的一部分 05/07 22:09
9F:→ ssccg: 当然当初设计URI时可以不要设计成这样,不要用// 05/07 22:12
10F:→ ssccg: 但是现况已经是这样,要表达之後的部分是authority就必须// 05/07 22:13
11F:→ hijkxyzuw: 大概懂了。都忘了还有 port 和登入的栏位。 05/08 17:21