CSSだけでカードギャラリーを作ろう

💻 この課題はPCで実際にコードを書いて取り組みましょう
1

HTMLの骨組みを作ろう

index.htmlstyle.css を作成し、3枚のカードのHTML構造を書きましょう。

  • <div class="gallery"> で全体を囲む
  • 中に <div class="card"> を3つ
  • 各カードに絵文字アイコン・<h2>タイトル・<p>説明文
💡 ヒント
2

カードの基本スタイルを作ろう

カードに白い背景・角丸・影・内側余白を設定して、カード風のデザインにしましょう。

body にはグラデーション背景(background: linear-gradient(135deg, #667eea, #764ba2))を設定すると映えます。

💡 ヒント
background: #fff, border-radius: 16px, box-shadow: 0 4px 12px rgba(0,0,0,0.1), padding: 24px を設定します。

参考: CSS レッスン3: 背景と枠線

3

Flexboxで横並びにしよう

親要素 .gallery に Flexbox を設定して、3枚のカードを横並びに配置しましょう。

flex-wrap: wrap を追加すると、画面が狭いときに自動で折り返されます。

💡 ヒント
.gallery に display: flex, gap: 24px, justify-content: center を設定。各カードに width: 280px を指定します。

参考: CSS レッスン5: Flexbox

4

文字とアイコンをデザインしよう

アイコンを大きく表示し、タイトルと説明文のフォントスタイルを整えましょう。

ページタイトル(h1)は白色にして、グラデーション背景の上で読みやすくします。

💡 ヒント
アイコンは font-size: 3rem, text-align: center。タイトルは font-weight: bold, color: #333。説明文は color: #666, line-height: 1.6。

参考: CSS レッスン2: 文字のスタイル

5

ホバーで浮き上がるアニメーションを追加しよう

カードにマウスを乗せると、少し上に浮き上がって影が大きくなるアニメーションを追加して完成です!

transition でアニメーションの速度を設定し、:hover で変化後のスタイルを書きます。

💡 ヒント
.card に transition: transform 0.3s, box-shadow 0.3s を設定。.card:hover に transform: translateY(-8px), box-shadow: 0 8px 24px rgba(0,0,0,0.15) を設定します。

参考: CSS レッスン3: 背景と枠線

🎯

📚 使う技術を学ぶ

⚠️ つまずいたら