Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Vue.js を使って Grid System を実装した話

t0yohei
October 26, 2023

Vue.js を使って Grid System を実装した話

VueFes 2023 のセッション、「Vueを使ってGrid Systemを実装した話」の登壇資料です。

t0yohei

October 26, 2023
Tweet

More Decks by t0yohei

Other Decks in Technology

Transcript

  1. 自己紹介 • とよへい ( @t0yohei ) • 株式会社クラウドワークス ◦ Web

    エンジニア • アニメとコーヒーが好き • Vue.js / Ruby
  2. 実装における Grid System (Bootstrap 風) に必要な要素 • N 個(ex. 12

    個)のカラムで画面を分割できる • カラム数の指定で、縦・横のコンテンツレイアウトを制御 できる • M 段階(ex. 5 段階)のレスポンシブな画面にできる
  3. 手順 1. 初期状態の確認 2. 12 分割の Grid を作成し、エリアを横並びに 3. PC

    の画面サイズでは横 3 エリア、縦 2 エリアに 4. media query を使って、Tablet・SP 用の画面を表示する a. Tablet の画面サイズでは横 2 エリア、縦 3 エリアに b. SP の画面サイズでは横 1 エリア、縦 6 エリアに
  4. まとめ • Vue.js を上手く使うと、結構簡単に Grid System を作ることができる • 運用可能な Grid

    System を作ろうとすると、色々検討することがあってちょ い大変 • CSS Grid を使用した Grid System はまだ少なくて、今後に期待
  5. 運用可能な Grid System を作る上で検討が必要なこと • 画面サイズを何パターンにするか (Large, Medium, Small, etc…)

    ◦ それぞれ何 px を境界値(breakpoint)にするか • 各画面サイズにおいて ◦ 総カラム数は 12 カラムにするか、別にするか ◦ カラム間の間隔(Gutter)を縦横それぞれ何 px にするか。また可変にするかどうか。 • Grid のネストはどういう扱いにするか • 各種オプションの導入するか ◦ Order: カラムの順番を入れ替える ◦ Offset(Start): カラムの開始位置を指定できる • etc…