はじめに
Sleyt CSS Frameworkをプロジェクトにインストールして使用する方法を学びましょう。
NPMインストール
npm install sleyt
その後CSSでインポート:
@import 'sleyt/dist/css/index.css';
CDN使用
<link rel="stylesheet" href="https://unpkg.com/sleyt@latest/dist/css/index.css">
HTMLのheadセクションに含めてください。
基礎
CSSリセット、テーマ、デザイントークンを含む基礎スタイル。
リセット
モダンなCSSリセットでブラウザのデフォルトを正規化。ブラウザ間での一貫した表示のための基本要素スタイリングを含みます。
- • ボックスサイズ: border-box
- • マージンとパディングのリセット
- • 最適化されたフォントレンダリング
- • モーション軽減のサポート
テーマ
システム設定に基づく自動ダークモードサポート。CSS変数でシームレスなテーマ切り替えを実現。
- • 自動ダークモード検出
- • スムーズなトランジション
- • 一貫したカラー
- • 透明度の向上
変数
カラー、スペーシング、タイポグラフィなどのCSSカスタムプロパティ。デザイントークンによる簡単なカスタマイズ。
- • カラーパレット
- • スペーシングスケール
- • タイポグラフィシステム
- • シャドウとエフェクト
カラーパレット (CSS変数)
base/variables.css
で定義された完全なカラーシステム
ニュートラルグレースケール (Slate)
slate-50
98%
slate-100
96%
slate-200
90%
slate-300
83%
slate-400
64%
slate-500
45%
slate-600
32%
slate-700
25%
slate-800
15%
slate-900
9%
slate-950
4%
セマンティックカラー (控えめなトーン)
注: ダークモードでは視認性向上のため、自動的に明るく鮮やかな色に調整されます
Success (グリーン)
success-500
Light: hsl(150, 35%, 40%)
Dark: hsl(150, 40%, 45%)
success-600
Light: hsl(150, 35%, 35%)
Dark: hsl(150, 40%, 40%)
success-700
Light: hsl(150, 35%, 30%)
Dark: hsl(150, 40%, 35%)
Danger (レッド)
danger-500
Light: hsl(355, 50%, 45%)
Dark: hsl(355, 60%, 50%)
danger-600
Light: hsl(355, 50%, 40%)
Dark: hsl(355, 60%, 45%)
danger-700
Light: hsl(355, 50%, 35%)
Dark: hsl(355, 60%, 40%)
Warning (イエロー)
warning-400
Light: hsl(40, 70%, 50%)
Dark: hsl(40, 80%, 55%)
warning-500
Light: hsl(40, 70%, 45%)
Dark: hsl(40, 80%, 50%)
warning-600
Light: hsl(40, 70%, 40%)
Dark: hsl(40, 80%, 45%)
Info (ブルー)
info-500
Light: hsl(215, 45%, 45%)
Dark: hsl(215, 50%, 50%)
info-600
Light: hsl(215, 45%, 40%)
Dark: hsl(215, 50%, 45%)
info-700
Light: hsl(215, 45%, 35%)
Dark: hsl(215, 50%, 40%)
テーマカラーマッピング
Primary:
var(--color-slate-900)
Secondary:
var(--color-slate-700)
Success:
var(--color-success-600)
Danger:
var(--color-danger-600)
Warning:
var(--color-warning-500)
Info:
var(--color-info-600)
Light:
var(--color-slate-100)
Dark:
var(--color-slate-900)
すべての色はテーマ設定とダークモードサポートを容易にするためHSL値で定義されています。
レイアウト
コンテナ、フレックスボックス、グリッドユーティリティを備えた柔軟なレイアウトシステム。
コンテナ
自動センタリングとmax-widthブレイクポイントを持つレスポンシブコンテナ。
<div class="container">
コンテンツ
</div>
ブレイクポイント: 640px, 768px, 1024px, 1280px, 1536px
フレックスボックス
柔軟なレイアウトのための包括的なFlexboxユーティリティ。
例: 横並びレイアウト
<div class="flex justify-between items-center">
<div>ロゴ</div>
<div>メニュー</div>
<div>ボタン</div>
</div>
例: 縦並び中央揃えレイアウト
<div class="flex flex-col items-center justify-center">
<div>タイトル</div>
<div>コンテンツ</div>
</div>
例: 間隔のあるカードグリッド
<div class="flex gap-4 flex-wrap">
<div class="flex-1">カード 1</div>
<div class="flex-1">カード 2</div>
<div class="flex-1">カード 3</div>
</div>
Display:
.flex, .inline-flex
Direction(方向):
.flex-row, .flex-row-reverse, .flex-col,
.flex-col-reverse
Wrap(折り返し):
.flex-wrap, .flex-nowrap, .flex-wrap-reverse
Flexプロパティ:
.flex-1, .flex-auto, .flex-initial, .flex-none
.flex-grow, .flex-grow-0, .flex-shrink,
.flex-shrink-0
Justify Content(主軸):
.justify-start, .justify-end, .justify-center
.justify-between, .justify-around, .justify-evenly
Align Items(交差軸):
.items-start, .items-end, .items-center, .items-baseline,
.items-stretch
Align Content(複数行):
.content-start, .content-end, .content-center,
.content-between, .content-around
グリッド
レスポンシブカラムとギャップユーティリティを備えたCSS Gridシステム。
例: 3カラムグリッド
<div class="grid grid-cols-3 gap-4">
<div>アイテム 1</div>
<div>アイテム 2</div>
<div>アイテム 3</div>
</div>
例: レスポンシブグリッド
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4">
<div>カード 1</div>
<div>カード 2</div>
<div>カード 3</div>
<div>カード 4</div>
</div>
モバイル: 1カラム、タブレット: 2カラム、デスクトップ: 4カラム
クイックリファレンス
よく使うレイアウトクラスのクイックアクセス。
コンテナ
.container, .container-fluid
フレックスボックス(よく使う)
.flex, .flex-row, .flex-col
.justify-center, .justify-between
.items-center, .gap-{'{1-12}'}
グリッド(よく使う)
.grid, .grid-cols-{'{1-12}'}
.gap-{'{1-12}'}, .md:grid-cols-{'{1-12}'}
コンポーネント
モダンなガラスモーフィズム効果を持つ完全なUIコンポーネントライブラリ。
ボタン
複数のバリアント、サイズ、状態を持つインタラクティブボタン。
バリアント
アウトラインバリアント
サイズ
状態
利用可能なクラス:
.btn, .btn-{'{variant}'} (primary, secondary, success,
danger, warning, info, light, dark)
.btn-outline-{'{variant}'}, .btn-link
.btn-sm, .btn-lg
フォーム
バリデーション状態を持つ包括的なフォームコントロール。
テキスト入力
セレクト & テキストエリア
チェックボックス & ラジオ
バリデーション状態
利用可能なクラス:
.form-group, .form-label, .form-control
.form-check, .form-check-input, .form-check-label
.is-valid, .is-invalid, .invalid-feedback
カード
ガラスモーフィズム効果を持つ柔軟なコンテナ。
ヘッダー付きカード
ヘッダーセクション付きのカードコンテンツ。
シンプルカード
ボディのみのカード、ヘッダーなし。
利用可能なクラス:
.card, .card-header, .card-body, .card-footer
アラート
ユーザーアクションのためのコンテキストフィードバックメッセージ。
利用可能なクラス:
.alert, .alert-{'{variant}'} (primary, secondary, success,
danger, warning, info)
バッジ
小さなステータスインジケーターとカウントラベル。
使用例
利用可能なクラス:
.badge, .badge-{'{variant}'} (primary, secondary, success,
danger, warning, info, light, dark)
テーブル
様々なスタイルを持つ構造化データ表示。
基本テーブル
名前 | メール | ステータス |
---|---|---|
田中太郎 | tanaka@example.com | アクティブ |
佐藤花子 | sato@example.com | 保留中 |
テーブルバリエーション
# | アイテム | 価格 |
---|---|---|
1 | 商品 A | ¥1,999 |
2 | 商品 B | ¥2,999 |
利用可能なクラス:
.table - 基本テーブル
.table-sm - コンパクトテーブル
.table-bordered - ボーダー付きテーブル
.table-striped - ストライプ行
.table-hover - ホバー効果
チャート
バーチャート、折れ線チャート、ドーナツチャートを含むデータ可視化コンポーネント。
バーチャート
折れ線チャート
ドーナツチャート
利用可能なクラス:
.chart, .chart-sm, .chart-lg - チャートコンテナ
.bar-chart, .bar-chart-item - バーチャート
.line-chart, .line-chart-svg, .line-chart-path -
折れ線チャート
.donut-chart, .donut-chart-svg, .donut-chart-segment -
ドーナツチャート
.chart-legend, .chart-legend-item - チャート凡例
data-variant="{'{variant}'}" (primary, success, warning,
danger, info)
ナビバー
モバイルハンバーガーメニューをサポートするレスポンシブナビゲーションバー。
利用可能なクラス:
.navbar - ナビゲーションコンテナ
.navbar-brand - ブランド/ロゴセクション
.navbar-nav - ナビゲーションリスト
.navbar-item - ナビゲーションリンク
.navbar-toggle-checkbox, .navbar-toggle-label -
モバイルメニュートグル
.active - アクティブ状態
アコーディオン
スムーズなアニメーション付きのCSS のみで実装された折りたたみコンテンツパネル。
これは第1セクションのコンテンツです。スムーズに展開・折りたたみされます。
これは第2セクションのコンテンツで、より詳細な情報が含まれています。
これは第3セクションのコンテンツです。
利用可能なクラス:
.accordion - アコーディオンコンテナ
.accordion-item - 個別アコーディオンアイテム
.accordion-toggle - トグル用の非表示チェックボックス
.accordion-label - クリック可能なヘッダー
.accordion-content - 折りたたみ可能なコンテンツ
コード
シンタックスハイライトをサポートするコードブロック表示。
function example() {
const message = "こんにちは、世界!";
console.log(message);
return true;
}
利用可能なクラス:
.code-preview - コードブロックコンテナ
ショーケース & スウォッチ
デモ表示とカラーサンプル用のユーティリティコンポーネント。
ショーケース
コンポーネントの例とデモを表示するためのショーケースコンテナです。
スウォッチ
利用可能なクラス:
.showcase - デモ表示コンテナ
.swatch - カラーサンプル表示 (100x100px)
ユーティリティ
迅速なスタイリングとカスタマイズのための包括的なユーティリティクラス。
スペーシング
マージンとパディングユーティリティ。値: 0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 16, 20, 24, 32
マージン
.m-{'{0-32}'} - 全方向
.mx-{'{0-32}'}, .mx-auto - 水平
.my-{'{0-32}'}, .my-auto - 垂直
.mt-{'{0-32}'}, .mt-auto - 上
.mr-{'{0-32}'}, .mr-auto - 右
.mb-{'{0-32}'}, .mb-auto - 下
.ml-{'{0-32}'}, .ml-auto - 左
パディング
.p-{'{0-32}'} - 全方向
.px-{'{0-32}'} - 水平
.py-{'{0-32}'} - 垂直
.pt-{'{0-32}'} - 上
.pr-{'{0-32}'} - 右
.pb-{'{0-32}'} - 下
.pl-{'{0-32}'} - 左
スペーシングスケール(rem単位):
0: 0 | 1: 0.25 | 2: 0.5 | 3: 0.75 | 4: 1 | 5: 1.25 | 6: 1.5
| 8: 2 | 10: 2.5 | 12: 3 | 16: 4 | 20: 5 | 24: 6 | 32:
8
カラー
完全なスレートスケールを持つ背景とテキストカラーユーティリティ。
セマンティックカラー
.bg-primary
.bg-secondary
.bg-success
.bg-danger
.bg-warning
.bg-info
.bg-light
.bg-dark
スレートスケール (.bg-slate-{'{50-950}'})
.bg-slate-50
.bg-slate-100
.bg-slate-200
.bg-slate-300
.bg-slate-400
.bg-slate-500
.bg-slate-600
.bg-slate-700
.bg-slate-800
.bg-slate-900
.bg-slate-950
テキストカラー
.text-primary - プライマリテキストカラー
.text-secondary - セカンダリテキストカラー
.text-disabled - 無効テキストカラー
.text-success - 成功カラー
.text-danger - 危険カラー
.text-warning - 警告カラー
.text-info - 情報カラー
利用可能な全クラス
背景:
.bg-body, .bg-surface, .bg-card, .bg-elevated
.bg-primary, .bg-secondary, .bg-success, .bg-danger,
.bg-warning, .bg-info
.bg-light, .bg-dark
.bg-slate-{'{50-950}'}
テキスト:
.text-primary, .text-secondary, .text-disabled
.text-primary-color, .text-secondary-color
.text-success, .text-danger, .text-warning,
.text-info
.text-slate-{'{50-950}'}
タイポグラフィ
サイズ、ウェイト、配置、行高を含む完全なタイポグラフィシステム。
フォントサイズ
.text-xs (0.75rem)
.text-sm (0.875rem)
.text-base (1rem)
.text-lg (1.125rem)
.text-xl (1.25rem)
.text-2xl (1.5rem)
.text-3xl (1.875rem)
.text-4xl (2.25rem)
.text-5xl (3rem)
フォントウェイト & 配置
.font-light (300)
.font-normal (400)
.font-medium (500)
.font-semibold (600)
.font-bold (700)
.text-left, .text-center, .text-right,
.text-justify
行高
.leading-none (1) | .leading-tight (1.25) | .leading-snug
(1.375) | .leading-normal (1.5) | .leading-relaxed (1.625) |
.leading-loose (2)
ボーダー
ボーダーとborder-radiusユーティリティ。
ボーダー方向
.border - 全方向
.border-0 - ボーダーなし
.border-t - 上
.border-r - 右
.border-b - 下
.border-l - 左
角丸
.rounded-none (0)
.rounded-sm (0.375rem)
.rounded (0.5rem)
.rounded-lg (0.75rem)
.rounded-xl (1rem)
.rounded-full (9999px)
エフェクト
深度とエレベーションのためのシャドウユーティリティ。
.shadow-none, .shadow-sm, .shadow, .shadow-md, .shadow-lg,
.shadow-xl
ガラスモーフィズム
透明度とバックドロップブラー効果を持つ完全なガラスモーフィズムシステム。
ガラススタイル
.glass - 標準ガラス (ブラー: 8px)
.glass-light - ライトガラス (ブラー: 12px)
.glass-heavy - ヘビーガラス (ブラー: 16px)
.frosted - グラデーション付きフロストガラス
.shadow-glass - ガラスシャドウ効果
.shadow-elevated - エレベーションシャドウ
バックドロップブラー
.backdrop-blur-none
.backdrop-blur-sm (4px)
.backdrop-blur (8px)
.backdrop-blur-md (12px)
.backdrop-blur-lg (16px)
.backdrop-blur-xl (24px)
ディスプレイ & サイズ
ディスプレイプロパティ、幅、高さ、オーバーフローユーティリティ。
ディスプレイ
.block, .inline-block, .inline, .hidden
幅
.w-full, .w-auto
.w-1/2, .w-1/3, .w-2/3, .w-1/4, .w-3/4
高さ
.h-full, .h-auto, .h-screen
オーバーフロー
.overflow-auto, .overflow-hidden
.overflow-x-auto, .overflow-y-auto
ポジション
ポジションユーティリティと配置ヘルパー。
ポジションタイプ
.relative, .absolute, .fixed
.sticky, .static
配置
.inset-0 - 全方向を0に
.top-0, .right-0, .bottom-0, .left-0