把 css文件和 js文件放在 Github 里,可以在寫網頁的時候直接調用嗎?

請問一下可不可以把css 文件 和 js 文件直接放在Github 裡面,然後寫網頁的時候

&

&

&

&

&&

&

這樣就不用把css 文件放在虛擬主機上了,改起來就會十分方便?

【請大家最好給個例子,我嘗試了好久都沒有成功,但是我以前發現:

& 這個是成功的, 我可以把這個放在 html 文件中作為層疊樣式表,但是我自己傳到Github去的css文件 不知道應該放在哪裡,用什麼地址引用】


有些人說直接用 Github Raw 瀏覽器不執行是因為返回的 content-type 是 text/plain,這麼說不準確。

實際上瀏覽器對 MIME 類型並沒有強制檢查,只是 Github 返回的 Header 加上了 X-Content-Type-Options: nosniff 強制瀏覽器執行 MIME 類型檢查,於是就會報錯。

這都能吵起來?

看 MSDN 怎麼說的:https://msdn.microsoft.com/library/gg622941(v=vs.85).aspx

所以正確的方法應該是使用 http://rawgit.com/ 或者使用 Github Pages。上面幾個答案都說了,不再重複。


http://johnpolacek.github.io/scrollorama/css/style.css

一個叫 johnpolacek 的 GitHub 用戶,建立了一個叫 scrollorama 的 repo,其中的 gh-pages 這個分支中包含 css/style.css,那麼上面這個文件就能通過你給出的路徑訪問。

可以參考這裡的內容:https://help.github.com/categories/20/articles

除此之外,即使不使用 GitHub Pages,也可以在 GitHub 打開任何文件,點擊右上角的 raw 按鈕,把得到的路徑中 raw.github 的那個點去掉得到可外鏈的路徑。不過這個不是官方的服務,穩定性不一定有保證。建議只拿來做演示、開發,生產環境中用可能被該服務作者「作惡」哦。

參考:https://rawgithub.com


有一種方法叫RawGit…

https://rawgit.com/

貼你github上的文件地址,就能自動變成CDN地址(而且是SSL的)

左邊是開發環境用的,有流量限制,但文件更新快,右邊是生產環境用的,沒有流量限制,但更新慢。


還記得12306插件把Github搞掛掉的事情么,不建議在Github上Host文件


樓上各位提到使用github pages的方法託管是可以的。但是那些說使用raw的真的有測試過么?

那些鏈接返回的content-type都是text/plain,瀏覽器會拒絕執行這樣的js和css的。


前兩天說的的方法只能得到純文本格式的數據,並不能被script 和 link這些標籤識別,我當時確實是隨便寫了一下,並沒有自己試試,所以可能有些誤導,這裡要給大家道個歉。

其實想正常工作的思路也很簡單,就是把人家的text/plain格式的資源通過自己的伺服器中轉一下,在後端把Content-Type設置成text/css的然後再訪問自己的伺服器。

RawGit其實就是這個原理。

最後,這樣做我只是在回答題主的問題,在生產環境中還是選擇靠譜的cdn服務商做資源處理比較好。

再次為前兩天盲目回答的答案道歉!

下面的方法錯誤!!

來更新一下,前面說的都已經過期,現在github訪問靜態資源很簡單。

看圖說話:

在github上打開你的文件,點擊右上角的Raw

好了,現在上面的地址就已經可以作為你想要的靜態資源了。

github還是很有心的


https://unpkg.com/
https://rawgit.com/
http://raw.githack.com/

分享來自

「 知乎網的什麼鬼編輯器啊擦」


真想給回答問題的鍵盤俠程序員們一巴掌,只有virusdefender @CeleryL 說對了

瀏覽器在解析資源文件的時候會判斷content-type頭,這個http頭定義了設備如何處理將要載入的資源,比如text/html就是讓瀏覽器加在解析html,其中text/plain是純文本,瀏覽器設備不會做任何處理,而只有application/javascript或者application/x-javascript(JavaScript 腳本)text/css(CSS樣式表)這樣表明是資源文件的瀏覽器設備才會做相應處理加在

回答中@浪子 這樣的嘴炮程序員真尼瑪誤人子弟


在項目的 Settings 裡邊,有個地方可以設置Github Pages的。

可以如圖一樣,創建一個gh-pages分支,這裡選擇該分支,然後點擊Save保存就看創建該項目的訪問站點,會生成http://域名/項目名稱,的網址,當然你可以在gh-pages分支裡邊添加CNAME綁定域名。比如我的

http://ife.giscafer.com域名就是項目:giscafer/ife-course-demogiscafer/ife-course-demo 的自定義域名

然後很多靜態文件都可以上傳到分支,頁面引入正確地址就可以直接訪問了。更多github使用,可以參考Github與git的使用 · front-end-manual


可以,但是你需要建立一個 github page 分支 把項目文件 host 起來。

但是不建議這麼做。

http://heroku.com 每月 750 小時的免費使用,單 CPU / 512M

足夠做這些事了。支持 GIT,支持域名綁定。


推薦閱讀:

剛開始學編程,看別人的代碼感覺高山仰止,開始喪失信心怎麼辦?
前端工程師懂設計對工作是否有用?
web前端開發工程師,年過30,崗位最多升到前端經理。如何規劃前景?
各位師兄師姐好,自學Web前端可以給點建議嗎?
關於網站前端開發在各個客戶端如何布局的問題?

TAG:前端開發 | CSS | GitHub |