tailwind-responsive-ui について
Tailwind CSS プロジェクト向けに、レスポンシブデザインの実践方法をまとめたスキルです。ブレークポイントからタッチ操作やデータ表示まで、優先度別の 49 項目を 8 分野に分類しています。
主な機能
- 018 分野にわたる 49 項目
- 02優先度別のレスポンシブ設計指針
- 03ブレークポイントとレイアウトのパターン
- 04タイポグラフィと余白の指針
- 05ナビゲーションとタッチ操作のパターン
- 06メディアとデータの適応方法
活用シーン
- 01デスクトップ画面のモバイル対応
- 02レスポンシブな Tailwind CSS レイアウトの構築
- 03ブレークポイントや余白の見直し
- 04フォームやテーブルのタッチ端末対応
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ pproenca/ dot-skills --skill tailwind-responsive-uiインストール後、Claude Code で/tailwind-responsive-uiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
metadata.jsonassets/templates/_template.mdreferences/_sections.mdbp-avoid-device-widths.mdbp-consolidate-breakpoints.mdbp-content-driven-breakpoints.mdbp-debug-breakpoints.mdbp-min-width-over-max.mdbp-mobile-first-default.mddata-horizontal-scroll-table.mddata-list-density-mobile.mddata-responsive-data-grid.mddata-responsive-form-layout.mddata-table-to-cards.mddata-truncate-overflow.mdfluid-clamp-font-size.mdfluid-responsive-letter-spacing.mdfluid-responsive-line-height.mdfluid-responsive-measure.mdfluid-scale-headings-independently.mdfluid-type-scale.mdlayout-aspect-ratio-containers.mdlayout-fixed-to-relative.mdlayout-grid-column-reduction.mdlayout-holy-grail-responsive.mdlayout-sidebar-collapse.mdlayout-stack-to-row.mdlayout-sticky-to-static.mdnav-breadcrumb-collapse.mdnav-dropdown-to-fullscreen.md詳細
Tailwind CSS のレスポンシブ UI に関するコミュニティのベストプラクティス
Adam Wathan と Steve Schoger による Refactoring UI および最新のレスポンシブデザインパターンに基づく、Tailwind CSS アプリケーション向けの包括的なレスポンシブ対応ガイドです。8 つのカテゴリにわたる 49 のルールを収録し、自動リファクタリングやコード生成を支援するため、影響度の高い順に優先順位を付けています。
適用する場面
次のような場合に、これらのガイドラインを参照してください。
- 既存の UI をさまざまな画面サイズに対応させる場合
- Tailwind CSS で新しいレスポンシブレイアウトを構築する場合
- デスクトップ専用のインターフェースをリファクタリングしてモバイルに対応させる場合
- ブレークポイント、余白、タイポグラフィに関する問題について、レスポンシブコードを確認する場合
- ナビゲーション、フォーム、データテーブルをタッチデバイス向けに調整する場合
優先度別のルールカテゴリ
| 優先度 | カテゴリ | 影響度 | プレフィックス |
|---|---|---|---|
| 1 | ブレークポイント戦略 | CRITICAL | bp- |
| 2 | レイアウトの変換 | CRITICAL | layout- |
| 3 | レスポンシブな余白 | HIGH | rspac- |
| 4 | 流動的なタイポグラフィ | HIGH | fluid- |
| 5 | ナビゲーションパターン | MEDIUM-HIGH | nav- |
| 6 | タッチとインタラクション | MEDIUM | touch- |
| 7 | レスポンシブメディア | MEDIUM | rmedia- |
| 8 | データの調整 | LOW-MEDIUM | data- |
クイックリファレンス
1. ブレークポイント戦略 (CRITICAL)
bp-mobile-first-default- モバイルファーストのブレークポイント方向を使用するbp-content-driven-breakpoints- コンテンツが崩れる位置にブレークポイントを設定するbp-avoid-device-widths- デバイス固有のブレークポイント値を避けるbp-consolidate-breakpoints- ブレークポイントを 3 つまたは 4 つに統合するbp-min-width-over-max- ブレークポイントには max-width ではなく min-width を使用するbp-debug-breakpoints- 開発中に視覚的なブレークポイントインジケーターを使用する
2. レイアウトの変換 (CRITICAL)
layout-stack-to-row- モバイルでは要素を縦に並べ、デスクトップでは横に並べるlayout-sidebar-collapse- モバイルではサイドバーを上部または下部に折りたたむlayout-grid-column-reduction- ブレークポイントが狭くなるにつれてグリッドの列数を減らすlayout-holy-grail-responsive- Grid でレスポンシブなホーリーグレイルレイアウトを使用するlayout-sticky-to-static- モバイルではスティッキー要素を静的配置に変更するlayout-fixed-to-relative- モバイルでは固定配置を相対配置に置き換えるlayout-aspect-ratio-containers- レスポンシブコンテナーにアスペクト比を使用する
3. レスポンシブな余白 (HIGH)
rspac-scale-padding-per-bp- ブレークポイントごとにパディングを個別に調整するrspac-responsive-gap- Grid と Flex の間隔にレスポンシブな gap を使用するrspac-compact-mobile-generous-desktop- モバイルではコンパクトな余白、デスクトップではゆとりのある余白を使用するrspac-section-spacing- セクションの区切りの間隔をビューポートに応じて調整するrspac-inline-to-stack-spacing- モバイルではインラインの間隔を縦積みの間隔に変更するrspac-container-padding- レスポンシブなコンテナーパディングを使用する
4. 流動的なタイポグラフィ(高)
fluid-clamp-font-size- clamp() を使ってフォントサイズを流動的に調整するfluid-responsive-line-height- フォントサイズの拡大に合わせて行の高さを詰めるfluid-responsive-measure- 1 行の長さを 45~75 文字に制限するfluid-scale-headings-independently- ブレークポイントごとに見出しのサイズを個別に調整するfluid-responsive-letter-spacing- レスポンシブな見出しに合わせて文字間隔を調整するfluid-type-scale- レスポンシブな文字サイズのスケールを使う
5. ナビゲーションパターン(中~高)
nav-horizontal-to-hamburger- モバイルでは横並びのナビゲーションをハンバーガーメニューに切り替えるnav-tab-bar-mobile- モバイルの主要なナビゲーションに下部のタブバーを使うnav-breadcrumb-collapse- モバイルではパンくずリストを省略表示するnav-sidebar-drawer- モバイルではサイドバーのナビゲーションを画面外から開くドロワーに切り替えるnav-dropdown-to-fullscreen- モバイルではドロップダウンメニューを全幅に広げるnav-sticky-header-compact- モバイルではスクロール時にヘッダーをコンパクトにする
6. タッチとインタラクション(中)
touch-min-touch-target- モバイルではタッチターゲットを最低 44px 確保するtouch-hover-to-tap- ホバー操作をタップしやすい代替操作に置き換えるtouch-swipe-affordance- 横スクロールでスワイプできることを視覚的に示すtouch-scroll-snap-mobile- モバイルのカルーセル風インターフェースにスクロールスナップを使うtouch-input-sizing-mobile- iOS でのズームを防ぐため、フォーム入力欄のサイズを調整するtouch-focus-visible-touch- タッチ操作に適したフォーカススタイルに focus-visible を使う
7. レスポンシブメディア(中)
rmedia-responsive-images- object-fit を使って画像サイズをレスポンシブに調整するrmedia-video-aspect-ratio- ブレークポイントをまたいで動画のアスペクト比を維持するrmedia-icon-size-scaling- アイコンをフォントサイズではなくブレークポイントに応じて拡大縮小するrmedia-avatar-responsive- 用途とブレークポイントに応じてアバターのサイズを調整するrmedia-background-image-bp- ブレークポイントで背景画像を切り替えるrmedia-embed-responsive- コンテナーの制約を使って埋め込みコンテンツをレスポンシブにする
8. データの適応(低~中)
data-table-to-cards- モバイルではテーブルをカードに変換するdata-horizontal-scroll-table- 密度の高いデータテーブルに横スクロールを使うdata-responsive-data-grid- 画面サイズに応じてデータグリッドの密度を調整するdata-list-density-mobile- モバイルではリスト項目の密度を高めるdata-truncate-overflow- モバイルでははみ出したテキストを省略するdata-responsive-form-layout- モバイルではフォーム項目を縦に並べ、デスクトップではグリッドを使う
使用方法
詳細な説明とコード例については、各リファレンスファイルをお読みください。
参照ファイル
| ファイル | 説明 |
|---|---|
| references/_sections.md | カテゴリの定義と順序 |
| assets/templates/_template.md | 新しいルール用のテンプレート |
| metadata.json | バージョンと参照情報 |
コメント
Markdown 対応