在url中使用连字符还是下划线是更好的惯例?

应该是/about_us还是/about-us?

从可用性的角度来看,我个人认为/about-us对最终用户来说要好得多,而谷歌和大多数其他网站(以及javascript框架)使用下划线命名模式。只是风格的问题吗?破折号有兼容性问题吗?


当前回答

我更喜欢破折号,因为下划线可能在一定程度上被链接下划线所掩盖。文本url主要是为了一眼就能识别出来,而不是为了语法正确,所以保留破折号用于连字符的论点是有限的。

文本URL的准确性很重要的是在将其读给某人时,在这种情况下,您不希望将下划线与空格混淆(反之亦然)。

我还发现破折号更美观,如果这有意义的话。

其他回答

不只是破折号和下划线:

带空格的文本 textwithoutspaces 编码% 20空间% 20 % 20的url underscore_means_space dash-means-space + +是+空间 camelCase PascalCase “带空格的引用文本”(以及单引号和双引号) 斜杠/手段/空间 dot.means.space

更好的利用。- /作为分隔符,因为_似乎不是分隔符。

http://www.sistrix.com/blog/832-how-long-may-a-linktext-be.html

对于最终用户视图,我更喜欢“about-us”或“about us”,而不是“about_us”

我认为从用户的角度来看,破折号更好,它不会干扰SEO。

不确定在哪里或为什么开始使用下划线。

更有知识的辩论

我过去一直使用下划线,现在我只在网站的一部分使用它们,我不希望任何人直接链接,js文件,css,…等。

从SEO的角度来看,破折号似乎是首选的处理方式,对于详细的解释,来自马嘴http://www.mattcutts.com/blog/dashes-vs-underscores/。

另一个常见的问题是,当一个带下划线的超链接被加下划线时,你看不到下划线。高级用户可以解决这个问题,但Joe Public可能不会。

在代码中仍然使用下划线而不是破折号——程序员理解它们,而大多数人不理解。