Stylus
概要
編集Stylusは、効率的でエレガントなCSSの記述を可能にする動的スタイルシート言語です。Node.js環境で動作し、豊富な機能と柔軟な構文により、CSSの生産性を大幅に向上させます。
インストールと設定
編集Node.jsでのインストール
編集npm install stylus -g
基本的な使用方法
編集stylus input.styl -o output.css
基本構文
編集セレクタとプロパティ
編集Stylusは通常のCSSのような記法と、インデントベースの簡略記法の両方をサポートします:
// 通常の記法 .container { width: 100%; padding: 20px; } // 簡略記法 .container width 100% padding 20px
変数
編集変数を使用してスタイルを定義できます:
primary-color = #3498db .button background-color primary-color &:hover background-color darken(primary-color, 10%)
高度な機能
編集ミックスイン
編集再利用可能なスタイルブロックを定義できます:
border-radius(n) -webkit-border-radius n -moz-border-radius n border-radius n .button border-radius(5px)
演算子
編集数値の計算や色の操作が可能です:
.container width 100% - 20px margin (10px * 2) background lighten(#000, 50%)
制御構文
編集条件分岐
編集support-ie = true if support-ie .container zoom 1 else .container clear both
繰り返し
編集for i in 1..5 .col-{i} width (i * 20%)
関数とヘルパー
編集組み込み関数
編集- rgba()
- darken()/lighten()
- unit()
- type()
カスタム関数
編集calculate-width(columns) return columns * (100% / 12) .col-6 width calculate-width(6)
インポートとモジュール化
編集ファイルのインポート
編集@import 'variables' @import 'mixins' @import 'components/*'
モジュール構成
編集- base/
- components/
- layouts/
- utils/
ベストプラクティス
編集コード整理
編集- 変数名の命名規則
- ミックスインの適切な使用
- ファイル構成の最適化
パフォーマンス
編集- ネストの深さを制限
- 不要な演算の回避
- 効率的なセレクタの使用
デバッグとトラブルシューティング
編集デバッグ方法
編集- inspect()関数の使用
- コンパイルエラーの解釈
- ソースマップの活用
よくある問題
編集- スコープの問題
- 優先順位の衝突
- ブラウザ互換性
プラグインとツール
編集主要なプラグイン
編集- stylus-loader (webpack用)
- gulp-stylus
- grunt-contrib-stylus
エディタサポート
編集- VS Code拡張
- Sublime Text用パッケージ
- WebStorm/IntelliJ IDEA統合
メディアクエリ =
編集レスポンシブデザイン
編集$tablet = 768px $desktop = 1024px @media (min-width: $tablet) .container width 750px @media (min-width: $desktop) .container width 970px
プリプロセッサ機能
編集ネスト
編集.article h1 font-size 2em &:hover color #000 p line-height 1.6
パフォーマンス最適化
編集コンパイルオプション
編集- 圧縮
- ソースマップ生成
- キャッシュの活用
バージョン互換性
編集破壊的変更
編集主要なバージョン間の変更点と移行ガイド
コミュニティリソース
編集ドキュメント
編集- 公式ガイド
- チュートリアル
- サンプルプロジェクト
サポート
編集- GitHubイシュー
- コミュニティフォーラム
- Stack Overflow