2012年10月10日
LESSからSCSSへ乗り換えか? @ ウェブ
スタイルシートの記述に関して、LESSを使っていたのですが、SCSSへ乗り換えようかと思ってます。
その最大の理由が継承(@extend)です。今まで特に不自由を感じてなかったのですが、それはLESSなりの書き方をしていた為。LESSの場合、SCSSよりもCSSをそのまま書く記述に近い為、共通する部分の記述はCSSを書いていた時と同じ様な感覚で書いていましたが、管理が面倒。
公式サイトの例でも書かれてありますが、SCSSで以下の様に書くと
.error {
border: 1px #f00;
background: #fdd;
}
.badError {
@extend .error;
border-width: 3px;
}
CSSは以下の様になります。
.error, .badError {
border: 1px #f00;
background: #fdd;
}
.badError {
border-width: 3px;
}
ちょっとした事ではあるのですが、数が増えた場合にはこの差は大きくなると思います。最初から.error, .badErrorと書けば良いのですが、上記の様に近くに記述されているとは限らないので、.badError{...}側を消してしまった場合に、.error, .badErrorの部分に残ってしまう場合もある。これはLESSを書く場合も同様。@extend .error;の様に継承を使えば、.badError{...}を消した場合、当然中の@extend .error;も無くなるので、余計な記述が残る事も無い。
ただ、SCSSの場合、@mixin の記述がちょっと気になるかな。明記する事で分りやすいとも言えますが、記述が増えるのはちょっと嫌かな。
まだ何とも判断しかねているのですが、取りあえず、SassとTextMateのバンドルはインストールしました。SCSSを暫く使ってみて、判断しようかと思います。
Sass - Syntactically Awesome Stylesheets
>>関連リンク
kuroir/SCSS.tmbundle
>>関連リンク
12:01追記
SCSS.tmbundleだとコマンドの使い勝手が悪かったので、SCSSファイルをCSSへコンバートするコマンドを作ってみた。コマンドファイルはGistに置いておいたけど、内容はこんな感じ。
#!/bin/sh
SASS_OPTS="-t expanded --scss"
cd ${TM_PROJECT_DIRECTORY}
sass ${SASS_OPTS} "${TM_FILEPATH}":"css/${TM_FILENAME%.*}.css"
echo "exported css/${TM_FILENAME%.*}.css"
オプションは適当に変更してください。CSSファイルを開いて読む必要も無いけど、SCSSの勉強中ってこともあるので、取り合えず、可読性を考えてexpandedにしてます。実際に運用する時は、compressedで良いと思います。
それからコマンドファイルでは.scssファイルを保存する時に自動的に変換する様にしてあります。
TextMate Command "Compile SCSS to CSS" ― Gist
>>関連リンク
関連日記
- 2009年10月12日 CSS : -webkit-border-imageを試してみた (8788)@ ウェブ
- 2007年10月22日 ファイルが大量に消えた(T_T) (7040)@ Mac
- 2008年10月17日 CSS Nite in HIROSHIMA powered by Webさわり会議 (6430)@ 広島
- 2008年02月21日 テキストエリアの自動拡張 (5731)@ ウェブ
- 2008年01月16日 auのパケット通信料 (5369)@ 携帯電話
- 2006年08月19日 Google Wireless Transcoder (4994)@ 携帯電話
- 2010年02月10日 ウェブページ制作ツール「Flux」 (4893)@ Mac
- 2008年02月21日 テキストエリアのリサイズ (4798)@ ウェブ
- 2009年05月16日 CSSレイアウト作成ツール「YAML Builder」 (4627)@ ウェブ
- 2007年09月19日 YSlowでウェブページのパフォーマンスチェック (4342)@ Mac
- 2008年12月13日 Javascirpt製マークアップ・エディター「SmartMarkUP」 (4337)@ ウェブ
- 2008年10月04日 Adobe ACE、不合格(T_T) (4224)@ Mac
- 2012年04月26日 Dreamweaver CS6 の可変グリッドレイアウト (4213)@ ウェブ
- 2007年01月08日 FireBug (4141)@ Mac
- 2005年06月24日 Adobe Creative Suite 2 (4072)@ Mac
- 2009年12月07日 IntelliJ IDEA 9 Beta (4050)@ Flash
- 2005年08月08日 Macromedia - Studio 8 (3933)@ ウェブ
- 2007年05月06日 タグH1の中の画像 (3867)@ ウェブ
- 2007年09月18日 jQueryでテーブルをシマシマに (3830)@ ウェブ
- 2009年10月11日 CSS : -webkit-border-image (3763)@ ウェブ
- 2009年06月28日 Fireworksのガイドラインをスクリプトで作る (3725)@ Mac
- 2009年06月04日 Boks - A Visual Grid Editor (3700)@ ウェブ
- 2007年10月19日 明日はDreamweaver CS3勉強会 (3638)@ Mac
- 2009年11月20日 HTML5のセクションアウトラインを見るブックマークレット (3607)@ ウェブ
- 2012年04月24日 Adobe CS6(ウェブ関連) (3565)@ ウェブ
- 2006年04月07日 音声ブラウザ用にメニューを追加 (3533)@ ウェブ
- 2009年04月16日 iPhone版Max/MSP?「Jasuto」 (3517)@ 音楽
- 2011年08月22日 TwitterのGridデザインCSS「Bootstrap」 (3516)@ ウェブ
- 2011年02月16日 Wordpressに外部CSSやJSファイルを読み込む (3474)@ ウェブ
- 2006年04月22日 Dreamweaver 8のページプロパティ (3449)@ Mac
アマゾン広告
この日記ページは閲覧数などの条件に応じて、閲覧制限を行っています。他からリンクしていただいても、そのリンクから辿った閲覧者が当ページの内容をご覧頂けない場合があります。ご了承下さい。