0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

レスポンシブデザインは容易に追加すべきではない

Posted at

はじめに

スマートフォンの普及をきっかけに、Web制作において
必須のスキルとなっているレスポンシブデザイン。
今回css記述の際に気をつける点を記述する。

参考文献

CSSシークレット ―47のテクニックでCSSを自在に操る

※kindle版は英語表記しか見つけれませんでした。

考え方

様々な解像度の下でWebサイトを表示させ、問題が生じたらメディアクエリを記述する。
→しかし、後々変更が必要になった場合、手間は倍となる。

メディアクエリを追加するたびにCSSのコードは不安定さを増す。
よって、ビューポートによって完全にデザインを切り替えたいなどの
最終手段としてメディアクエリを使うべきである。

以下に、
メディアクエリを回避するためのヒントを記述

※メディアクエリが悪いわけではなく、正しく使うべきという考え方。

①Widthは固定値ではなく、%を使う

学習初期では、よく固定値を多用して他のデザインに影響を与えてハマっていた。

・できる限りpaddingやmarginで表す。
・width: 〇〇px;ではなくwidth: 〇〇%;
・相対値(vw, vh, vmin,vmax)を使う。

②widthではなくmax-widthを使う

max-widthを使用することによって、メディアクエリを使用せずとも小さな画面に対応できる。

③置換要素ではmax-width: 100%;を忘れずに

置換要素→img,object,video,iframeなど

④background-size: cover;

背景画像がコンテナ全体を覆う必要がある場合にコンテナのサイズを記述する必要がなくなる。
※モバイル向けのデザインにて、大きな画像を縮小する場合は不具合も。

⑤column-widthを指定する

段組を使ってテキストを配置する場合に小さな画面では1段組みで表示する。

結論

大量のメディアクエリの記述が必要となった場合には
一歩戻ってコードの構造を見直すことが重要。
2,3個の簡単なメディアクエリでレイアウトをレスポンシブにできるように意識する。

cssは奥が深くもっともっと学習が必要であると感じた。
もう少し具体的に記述できるよう随時アップデートしていきたい。

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?