我在看Compass-Sinatra starter file on GitHub。有没有办法在Sinatra中为scss文件设置output_style
?理想情况下,我希望在开发时将样式设置为:expanded
。
我认为我无法理解sass(:"stylesheets/#{params[:name]}", Compass.sass_engine_options )
如何运作以及我可以在哪里设置这些选项。
答案 0 :(得分:0)
我发现将output_style设置添加到compass.config文件可用于更改output_style。它可以放在if defined?(Sinatra)
块中,也可以放在compass.config文件底部的配置块中。
# compass-sinatra-starter/config/compass.config
if defined?(Sinatra)
# This is the configuration to use when running within sinatra
project_path = Sinatra::Application.root
environment = :development
output_style = :expanded # This is where you can set the output_style
else
# this is the configuration to use when running within the compass command line tool.
css_dir = File.join 'static', 'stylesheets'
relative_assets = true
environment = :production
end
# Or if you wanted to have the output_style set for all environments(?)
# This is common configuration
output_style = :compressed
sass_dir = File.join 'views', 'stylesheets'
images_dir = File.join 'static', 'images'
http_path = "/"
http_images_path = "/images"
http_stylesheets_path = "/stylesheets"
注意:如果您没有看到更改,请停止/启动服务器。
例如,我在styles.scss
中有一个views/stylesheets/styles.scss
文件,如果我转到http://localhost:4567/stylesheets/styles.css
,我会在浏览器中将.scss文件编译为.css。更改output_style
,启动/停止服务器.css output_style
更改。我不知道使用重新加载器是否可行,但它可能会避免停止/启动?
我找到了其他一些好的资源。 Andrew Stewart有一个blog post和一个GitHub template
最初我试图通过Sinatra了解Sass(scss)中的媒体查询,并找到了great video Ben Schwarz posted,但它并未涉及设置的细节。它更多的是媒体查询。 Ben也有source on GitHub。
但似乎AssetPack是提供资产的最佳方式。