【问题标题】:Jekyll compile errorJekyll 编译错误
【发布时间】:2015-03-09 09:54:10
【问题描述】:

我在终端中启动以下命令后,Jekyll 似乎没有编译我的 css

jekyll serve --watch

这让我的页面没有应用任何样式,只是简单的旧标记

这是我的 css 图像位于 _site 目录中(注意没有编译的 css)

一旦我保存了 main.scss 文件,编译就会发生,我的 css 也被编译,在我的浏览器中快速刷新会应用这些样式。一旦我在我的项目中启动 Jekyll 服务器,这不应该立即发生吗?

版本

 ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
 jekyll 2.5.2

配置文件

 # Site settings
 title: example
 email: your-email@domain.com
 description: > # this means to ignore newlines until "baseurl:"
 url: "http://yourdomain.com" # the base hostname & protocol for your site

 # Build settings
 markdown: kramdown

 sass:
  sass_dir: assets/css
  style: :nested

【问题讨论】:

  • 你能出示你的_config.yml文件吗?
  • 我正在寻找一个 baseurl 变量。我想这就是问题所在。可以给_includes/head.html代码吗?
  • 哟山姆!您的存储库非常未完成。没有 _includes,没有 _posts... 你最好从一个新的 jekyll 开始,然后把它放在 gh-pages 分支上。
  • 我已将它们添加回来,但似乎仍然存在同样的问题@DavidJacquel
  • 抱歉,您的存储库 url 是什么?

标签: ruby compilation sass jekyll


【解决方案1】:

我在您的主分支中看到的是样式表的链接,即/assets/css/main.css。由您在 http://ssosina.github.io/sosina.me/ 的存储库提供,此解析为指向 http://ssosina.github.io/assets/css/main.css 的链接,目标是未命中。

我看到您已将其更改为 assets/css/main.css。这适用于您网站根目录的页面,但不适用于文件夹中的帖子或页面。

例如:http://ssosina.github.io/sosina.me/about/index.html 将把这个链接指向http://ssosina.github.io/sosina.me/about/assets/css/main.css,这又错过了他的目标。

最终的解决方案是在_config.yml 中使用baseurl: "/sosina.me" 并像这样构建您的链接:

<link rel="stylesheet" href="{{ site.baseurl }}/assets/css/main.css" />

这将始终指向您在任何页面上相对于域根目录的 css。

编辑:当您设置baseurl 变量时,jekyll serve 命令将相应地为您的站点提供服务。在您的情况下,该命令将输出

Server address: http://127.0.0.1:4000/sosina.me/

【讨论】:

  • 嘿,设置基本 url 会出现以下problem
  • 我也忘了提到我在本地工作时会发生这种情况
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-04
相关资源
最近更新 更多