0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

フロントエンド入門:レスポンシブ対応って何?CSSで画面サイズに応じたデザインを作ったので紹介してみる

Last updated at Posted at 2025-03-24

はじめに

スマートフォンやタブレットなど、さまざまな画面サイズでWebサイトが閲覧される現代では、"レスポンシブ対応" が欠かせません。

個人の備忘録程度の走り書きとなっておりますが、温かい目で見守っていただければ幸いです。

本記事では、CSSのメディアクエリを使ったレスポンシブ対応の具体的な実装方法について、コードとあわせて解説します。

書こうと思ったきっかけ

自分で作ったWebサイトをスマホで確認したときに、ナビゲーションがはみ出していたり、メニューが見づらくなっていたりすることがありました。

「PCでは完璧なのに!」と思って調べた結果、メディアクエリを使ったレスポンシブ対応に行き着いたため、忘れないようにまとめておきます。

内容の説明(レスポンシブ対応のCSSコード)

以下は、画面幅が768px以下のときに適用されるスタイルです。主にナビゲーションメニューをスマホ向けに切り替えるための設定です。

@media (max-width: 768px) {
  .nav-menu {
    display: none;
    flex-direction: column;
    background-color: #fff;
    position: absolute;
    top: 70px;
    right: 20px;
    padding: 10px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    z-index: 1000;
  }

  .nav-menu.active {
    display: flex;
  }

  .menu-toggle {
    display: block;
  }

  .hamburger {
    display: flex;
  }
}

解説ポイント

  • .nav-menu:通常は非表示にし、メニューが開かれたときだけ表示。
  • .nav-menu.active:JavaScriptなどでクラスが付与されると表示される。
  • .menu-toggle.hamburger:PCでは非表示にし、スマホでは表示。
  • position: absolute を使用し、画面右上にナビゲーションが展開されるように設計。

このような仕組みで、限られた画面スペースを有効活用し、使いやすいUIを実現できます。

まとめ

レスポンシブ対応のCSSは、メディアクエリを活用することで簡単に実装できます。

特にナビゲーション周りはスマホでの使いやすさに直結するため、見落とさずに対応することが大切です。

今後は、レスポンシブだけでなく、アニメーションやARIA属性の付与なども取り入れながら、さらに洗練されたモバイルUXを目指していきたいと思います。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?