88

gh-pagesGitHub で取り組んでいるプロジェクトのブランチを作成しました。

Sublime テキストを使用して Web サイトをローカルで作成していますが、これが GitHub にプッシュされると、javascrips、画像、および css ファイルへのすべてのリンクが無効になるという問題があります。

たとえば、head セクションにこれがあります。

<link href="assets/css/common.css" rel="stylesheet">

これはローカルではうまく機能しますが、URL の一部としてリポジトリ名を使用してリンクが解決されないため、GitHub からは機能しません。

次のことを求めます。

http://[user].github.io/assets/css/common.css

次のことを要求する必要があった場合:

http://[user].github.io/[repo]/assets/css/common.css.

もちろん、URL の一部としてリポジトリ名を入れることもできますが、そうすると、開発中にサイトがローカルで機能しなくなります。

これに対処する方法はありますか?

4

7 に答える 7

15

どのブラウザを使用していますか? これが起こると確信していますか?すべきではないからです。リンクに相対 URL を含めると、リンクを含むドキュメントの URL に対して相対的に解決されます。つまり、含めると

<link href="assets/css/common.css" rel="stylesheet">

の HTML ドキュメントでhttp://www.foo.com/bar/doc.htmlは、 へのリンクassets/css/common.cssは、パスの最後の部分 ( なしdoc.html)なしで HTML ドキュメントの URL のプレフィックスに追加することによって解決http://www.foo.com/bar/assets/css/common.csshttp://www.foo.com/assets/css/common.cssれます。

たとえば、Twitter Bootstrap Web ページのソースを表示します: http://twitter.github.io/bootstrap/。として指定されている上部のスタイル リンクに注目してください<link href="assets/css/bootstrap.css" rel="stylesheet">。そのリンクは に正しく解決されhttp://twitter.github.io/bootstrap/assets/css/bootstrap.cssます。つまり、リポジトリ名が含まれています。

于 2013-05-01T20:10:44.683 に答える