将我编译的.scss文件设置为输出到config.rb中的根文件夹

时间:2013-08-18 10:40:39

标签: css ruby compass-sass

我正在尝试将我的css输出文件从config.rb文件设置到我的主目录的根级别,并命名为“style.css”。我遇到的问题是当我在config.rb中设置所有文件路径时,如下所示它一切正常。

http_path = "/"
css_dir = "assets/css"
sass_dir = "assets/sass"
images_dir = "assets/images"
javascripts_dir = "assets/js"
fonts_dir = "assets/fonts"
output_style = :compressed
environment = :development

但是我在本地开发了很多WordPress网站,需要将css_dir = "assets/css"设置为主目录的根目录并命名为style.css。如果我尝试css_dir = "/"之类的内容,它会中断并且不会将style.css输出到根目录。

请问我是如何做到这一点的,所以我不必坚持当前在部署时手动将我的输出从assets / css / style.css移动到根级别的方法(这是我的以前的解决方案)这不会在我的效率或工作流程中突破,但它看起来很简单,应该是一个选项,所以我不得不问社区。

我也在这里尝试了Chris Coyier的建议,这似乎不起作用http://css-tricks.com/compass-compiling-and-wordpress-themes/

1 个答案:

答案 0 :(得分:0)

也许这会有所帮助:

http_path中设置config.rb时,您告诉Compass当前目录的路径是什么。只有在打开绝对路径并使用Compass URL帮助程序时才会使用它。指南针不知道你的“真实”项目根目录是什么(例如,对于像WordPress或Drupal这样的PHP CMS)。

让我们采用以下文档结构:

project_root
- foo
-- bar
--- baz

baz将成为我们的主题文件夹。

现在,在编译CSS时,我不完全确定你在问什么,是否只想更改生产版本的CSS目录,并将其保留在assets/css开发,或只是更改目录。无论哪种方式,我都能帮到你。对于这两者,我们假设我们希望生成的CSS的Compass根目录外部是project_root

更改仅限生产构建的CSS目录路径

设置css_dir = (environment == :development) ? 'assets/css' : '../../../'以在开发版本(assets/css / compass compile)期间将CSS编译为compass watch,并在生产版本期间将project_root编译为compass compile -e production --force })。这里的关键是我们使用Unix样式目录更改将文件放在我们的主题目录之外。

更改所有编译的CSS目录路径

正常设置css_dir = "../../../" and simply run罗盘手表/罗盘编译。

无论哪种方式,都没有Compass重写您的文件名。将您的Sass文件命名为style.scss