用Jekyll设置背景图像
我搜索了文档,堆栈溢出,Google,并尝试了每个我能想到的CSS变体,并且无法确定将图像设置为使用CSS的div或元素标记(如body)的背景的方法。 应该很简单吧?
尝试包括:
#element { background-image: url(<% asset_path "image.jpg" %>); }
#element { background: url(<% asset_path "image.jpg" %>); }
#element { background-image: url({% asset-path "image.jpg" %}); }
#element { background-image: {% asset-path "image.jpg" %}; }
#element { background-image: url("image.jpg"); }
还有很多。 基本上,我已经尝试过所有可能的变化,我可以想到包括许多我没有期望工作,我努力找到答案已经用尽。
有人对杰基尔和杰基尔资产有所了解吗?可以为我自己和将来的杰基尔澄清如何完成这项任务?
我想我有你的问题。 如果您的CSS文件位于您站点的根文件夹中,则可以使用此表达式
#element { background-image: url(images/image.jpg); }
如果它在一个文件夹中很深,就好像CSS文件在CSS文件夹中就像_CSS/Style.CSS
那么您需要相应地更改URL
#element { background-image: url(../images/image.jpg); }
如果它在两个文件夹中深度使用此表达式
#element { background-image: url(../../images/image.jpg); }
我也被这个难住了。 我在其中一个回购问题中找到了来自插件作者的解决方案:
由jekyll资产处理的资产不会通过Jekyll的正常StaticFiles流程管道传递。 因此他们不处理YAML的前端事宜。 另外jekyll资产不是液体的过程文件。 如果您需要asset_path helper,并且您不想使用SASS,则可以使用ERB。 只需在styles.css.erb中重命名您的styles.css,您就可以在其中起诉ERB:
#header { background-image: url(<%= asset_path "mybackground.png" %>); > }
ERB是Ruby stdlib的一部分,因此不需要额外的宝石来使用它。 关于ERB,Jekyll资产中的SASS的详细信息,请参考jekyll-assets介绍。
尝试#element { background: url(asset_path("image.jpg")); }
#element { background: url(asset_path("image.jpg")); }
。 这个对我有用。
上一篇: Setting background image with Jekyll
下一篇: gzip compression not working even though allowed in applicationHost.config