在处理Magento项目时,我发现了最新的web响应Magento主题(rwd)及其所涉及的SASS-COMPASS概念。为了从rwd构建我自己的自定义主题,我尝试用这种方式设置Netbeans 8:
这是我的项目树:
Project root (local path C:myproject)
|
---skin
|--- frontend
|---my_rwd
|---default
|---css
| |---styles.css
|---scss
|---core
| |---_corepartial1.scss
| |---_corepartial2.scss
|---framework
| |---_fwpartial1.scss
| |---_fwpartial2.scss
|---styles.scss
|---_core.scss
|---_framework.scss
按照通常的方式,主样式.scs导入部分:
@import "framework.scss"
@import "core.scss"
和_核心scs…
@import "core/corepartial1.scss"
@import "core/corpartial2.scss"
和_framework.scss ares导入"子部件":
@import "framework/fwpartial1.scss"
@import "framework/fwpartial2.scss"
在项目根目录中,我放置了一个COMPASS配置文件,如下所示:
project_path = 'C:my_projectskinfrontendmy_rwddefault'
css_dir = "css"
sass_dir = "scss"
images_dir = "images"
javascripts_dir = "js"
relative_assets = true
output_style = :expanded
environment = :development
我设置了这样的Netbeans CSS预处理:
x Compile Sass files on save
Input: /skin/frontend/my_rwd/default/scss
Output: /skin/frontend/my_rwd/default/css
Compiler options: --compass --debug-info --style compressed
SASS path: C:Ruby200binsass.bat
最大的问题是:当编辑main styles.scss、_framework.scss或任何框架子部分(即css文件在保存时编译)时,一切都运行得很好。但是,当我编辑_core.scss或其任何子部分时,保存时不会发生重新编译!这使我深感困惑。任何帮助都将不胜感激。
我知道这个问题有点老了,但我想我会发布我的发现,以防对其他人有帮助。
我也遇到过类似的问题,发现Netbeans更喜欢相对路径。
我有:
---css
|--- styles.css
|--- scss
|--- styles.scss
|---components
|---_header.scss
|---_footer.sscs
|---config
|---components.scss
包含css/scss/config/components.scss
:
@import "components/header";
@import "components/footer";
在css/scss/components/
中编辑任何文件都不会在保存时触发Netbeans编译。然而,编辑css/scss/config/components.scss
或css/scss/styles.scss
将触发编译,并且sas将成功编译。
我发现,虽然没有第一个/的绝对路径在sass中有效,但Netbeans不喜欢它们。使用相对路径适用于sass和Netbeans
因此将css/scss/config/components.scss
更改为
@import "../components/header";
@import "../components/footer";
为我修复了