我想使用蓝图CSS框架与Yesod。有什么最佳实践吗?
因为Yesod使用模板的CSS,它看起来我不能直接使用。CSS文件?我必须将它们重命名为。lucius-files吗?
如何添加CSS到defaultLayout?
一种方法是将它们重命名为.lucius文件,这样应该可以很好地工作。(如果没有,这是Lucius中的一个bug,你应该报告它。)但你也可以将CSS存储在静态文件夹中,并通过addStylesheet调用引用它;例如,这就是我在Yesod Wiki上采用的方法。
yesod wiki上有一篇关于这个的文章。解决方案基本上是将蓝图的副本放在静态文件夹中,然后您可以以类型安全的方式引用蓝图(在templates/default-layout-wrapper.hamlet
中,在^{pageHead pc}
之前):
<link rel=stylesheet media=screen href=@{StaticR blueprint_screen_css}>
<link rel=stylesheet media=print href=@{StaticR blueprint_print_css}>