Joh*_*han 7 url fragment-identifier
我偶然发现了一个在其网址中使用多个片段标识符的网站,例如http://www.ejeby.se/#newprodukt#produkt#1075#1(不,它不是我的网站,但我链接到它,给我带来麻烦).
但这真的是对的吗?它似乎确实导致Safari和可能还有Internet Explorer的问题(传闻,我自己没有尝试过IE).
片段标识符不应该唯一标识文档中的一个位置吗?这是Safari中的一个错误,还是www.ejeby.se以错误的方式使用片段标识符?
编辑:似乎Safari的问题是它逃脱了所有#但是URL中的第一个#.其他浏览器不这样做.是否正确行为?
从规范的角度来看,片段可以包含以下字符(我已经扩展了产品):
fragment = *( ALPHA / DIGIT / "-" / "." / "_" / "~" / "%" HEXDIG HEXDIG / "!" / "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "=" / ":" / "@" / "/" / "?" )
Run Code Online (Sandbox Code Playgroud)
所以,不,该片段不得包含平原#; 它必须用%23.编码.
但有些浏览器可能会以不同的方式显示它,就像百分比编码的八位字节序列一样,它们代表有效的UTF-8字符会被它们所代表的字符所取代.
| 归档时间: |
|
| 查看次数: |
2556 次 |
| 最近记录: |