为什么要使用 - 而不是在网址中关闭_? 包含'_'的网址似乎没有不良影响。
答案 0 :(得分:45)
主机名中不允许使用下划线。因此,some_place.com不是有效的URL,因为主机名无效。 URL中允许使用下划线。因此some-place.com/which_place/是完全合法的,其他问题放在一边。
来自RFC 1738:
宿主
[...] Fully qualified domain names take the form as described in Section 3.5 of RFC 1034 [13] and Section 2.1 of RFC 1123 [5]: a sequence of domain labels separated by ".", each domain label starting and ending with an alphanumerical character and possibly also containing "-" characters. The rightmost domain label will never start with a digit, though, which syntactically distinguishes all domain names from the IP addresses.
答案 1 :(得分:30)
当您阅读a_long_sentence_with_many_underscores时,因为您正在通过字母或单词识别来阅读它,您的眼睛沿着线条的中间跟踪,但是当您到达下划线时,您的眼睛更有可能追踪并备份下一个词。
当你阅读长篇大论时,你的眼睛会沿着同一个地平线追踪,通过视觉,你的大脑更容易尝试忽略它们。
另一个很好的理由是,当单词分隔符为短划线时,Google和其他搜索引擎会将与搜索字词匹配的网址排名更高。
答案 2 :(得分:4)
顺便说一下......在使用下划线时,似乎有几个Java网络库无法正确解释URL:
URI uri = URI.create("http://www.google-plus.com/");
System.out.println(uri.getHost()); // prints www.google-plus.com
URI uri = URI.create("http://www.google_plus.com/");
System.out.println(uri.getHost()); // prints null
答案 3 :(得分:3)
一个主要原因是大多数锚标签都有text-decoration:underline
,这有效地隐藏了你的下划线
并且,非技术精明的用户不会自动假设有下划线:)
答案 4 :(得分:1)
更容易输入(至少在我的德语键盘上)并查看。