レスポンシブがよくわからない

このQ&Aのポイント
  • レスポンシブに変更する方法として、多くの解説サイトで@media screen and (min-height: 600px)を使用することが説明されていますが、なぜこのCSSで端末の振り分けができるのでしょうか?
  • 横解像度の違いによって、端末ごとに文章の折り返しが異なることは仕方がありません。改行や右端での折り返しに関して取引先から怒られた場合、文字をremで指定することやフォント自体の幅の違いを考慮することで見やすさを向上させることができます。
  • レスポンシブデザインを実現する方法として@media screen and (min-height: 600px)が一般的に利用されています。スマートフォンの横解像度が1024pxでも、スケールによって@media screen and (min-height: 600px)に収まるようになっている可能性があります。しかしこの点について詳しく説明しているサイトは少なく、単純に@media screenを使用するとのみ説明されています。
回答を見る
  • ベストアンサー

レスポンシブがよくわからない

■質問1 PC、タブレット、スマホで一つのhtmlとcssでレスポンシブに変更する場合、 @media screen and (min-height: 600px) を使って変更すると説明している解説サイトが多いです。 しかし端末は年々高解像度になっていますし、解像度は端末毎にみんなバラバラですよね? 解像度が低いとスマホ、中位だとタブレット、高解像度だとPCみたいな別け方ですが、 最近のスマホはかなり高解像度でPC並だと思うのですが、なぜこのcssで 振り分けができるのでしょうか? 自分が思うのは、スマホの横解像度が1024pxだったとしてもスケールが影響して @media screen and (min-height: 600px)に収まるようになっているとかでしょうか? このへんを説明しているサイトがなく、単に@media screeを使うとしか解説していないので教えて もらえると助かります。 ■質問2 端末によって横解像度が違うのでdivブロック内の文章がどの文字でdivの右端で折り返されるかは 端末毎に変わるのは仕方のないことですよね? 取引先の担当者に、改行や右端での折り返しが端末ごとに異なると怒られたのですが、なるべく見やすく 文字をremで指定しているし、そもそもフォント自体の幅が端末毎に違うので折り返しがまちまちなのは仕方のないことなのでしょうか? それとも同じにできるのでしょうか? どうぞよろしくお願い致します。

  • suffre
  • お礼率76% (2013/2633)
  • CSS
  • 回答数4
  • ありがとう数11

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.4

No.2です。 >iPhone、iPadだけでもこれだけの種類に別けなくてはならないのですね。 >・・・【中略】・・・ >実際に皆さんはかなり多くの解像度振り分けをされているのでしょうか?  そんな無茶はできません。今後も益々増えていきますし・・  viewportをつかってデバイスの解像度で振り分けています。  viewportを使うと、逆に文字数との指定は楽になります。 >取引先の言い分は、「スマホでも文字を見やすい大きさにしつつ、1行に収まるように、もし<br>を使っていたらきちんと改行も正しくなるようにしろ」  ここは整理したほうが良いですね。 <br>を使う場面と言うと <address> 株式会社ABC<br> 東京都品川区<br> ・・・・町・丁目・番<br> </address> などでしょうが、その場合に 株式会社ABC 東京都品川 区 ・・・・町・ 丁目・番 と改行されてはまずいのはわかります。しかし、 <p>取引先の言い分は、<q>スマホでも文字を見やすい大きさにしつつ、1行に収まるように、もし&lt;br&gt;を使っていたらきちんと改行も正しくなるようにしろ</q>という感じでした。</p> が、  取引先の言い分は、「スマホでも文字を見やすい大きさにしつ つ、1行に収まるように、もし<br>を使っていたらきちんと改行も 正しくなるようにしろ」という感じでした。 だろうが、  取引先の言い分は、「スマホでも文字を見やすい大 きさにしつつ、1行に収まるように、もし<br>を使って いたらきちんと改行も正しくなるようにしろ」という 感じでした。 と表示されようと構わないというか、そうあるべきです。  あなたが言われるように、  これはテストサイトです。これはテストサイトで  す。  これはテストサイトです。これはテストサイトで  す。 がまずい状況と言うのが思い浮かばない。 ★ウェブページをまるでカタログや印刷物のようなイメージで捉えているクライアントも存在します。その方には、実例を上げて説明して納得してもらう。それも請けた側の仕事の一つですね。  端末によってと言われる方は、「携帯電話、モバイル機器、音声入出力機器、点字端末、プリンターはどうされますか??」と問いかければ(^^)  

suffre
質問者

お礼

ありがとうございます! >viewportを使うと、逆に文字数との指定は楽になります。 そうなのですね。デバイスが多くて逆に面倒なのかと勝手に思ってしまいました。 ちょっといろいろ調べて勉強してみようと思います。 >ウェブページをまるでカタログや印刷物のようなイメージで捉えているクライアントも存在します。その方には、実例を上げて説明して納得してもらう。それも請けた側の仕事の一つですね。 ああ、やはりそうですよね・・・。画面を見せながら説明しているのですが なかなかご理解いただけなくてかなりお怒りです・・・。 自分の努力と知識が足りていないので当たり前なのですが。 とりあえず皆さまにアドバイス頂きまして現状がわかってきましたのでもう少し調べてみようと思います。 どうもありがとうございました。

その他の回答 (3)

  • t_ohta
  • ベストアンサー率38% (5070/13246)
回答No.3

> 取引先が両方に対応しろ(文字の大きさが見やすくて、端末によって全て同じ見え方にしろ)と言っているので悩むところです・・・。 そういった要望を究極に実現したのがページ全体が画像で出来ているページでしょう。 もしくはPDF化して読ませるとか... 基本的な発想は紙媒体であってWebの利点を理解していない人の発想ですよね。 どんな環境でも同じように見えるというのは見せる側の自己満足でしかなく、見ている人の利便性を無視した愚かな行為です。 デバイスの種類が多様化した今の時代、そんな考え方がナンセンスだと言うことを教えてあげるのもWeb制作に携わる人間の仕事だと思いますよ。

suffre
質問者

お礼

ありがとうございます! >そういった要望を究極に実現したのがページ全体が画像で出来ているページでしょう。 はい、画像と同じように文字もどの端末でも同じように見えるようにしろとのご命令でして・・・。 >デバイスの種類が多様化した今の時代、そんな考え方がナンセンスだと言うことを教えてあげるのもWeb制作に携わる人間の仕事だと思いますよ。 そう言われるとその通りですね^^; もう一回きちんとご説明しようと思います。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

質問1に関しては  ⇒CSS3 Media Queries を使って、Webサイトをスマートフォンに対応させるときの注意書き  の「4. スマートフォンならではの Viewport」  ( http://webdesignrecipes.com/web-design-for-mobile-with-css3-media-queries/ ) にとても詳しく書かれているので譲るとします。 質問2に関しては、  もともとHTMLは、 【引用】____________ここから HTMLは、どんな環境からもWebの情報を利用できるようにすべきだという方針の下に開発されている。例えば、様々な解像度や色深度のグラフィックディスプレイを持つPCや、携帯電話、モバイル機器、音声入出力機器、帯域が広いコンピュータや狭いコンピュータ、等の環境である。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Introduction to HTML 4 (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )]より  なのですから、大事な事は『どんな環境からもWebの情報を利用できるようにすべき』であって、「改行や右端での折り返しが端末ごとに異なると怒られた」はある程度視片がないのですが、ひょっとしてHTMLそのものに問題があるのじゃないかと・・  ちゃんと段落は<p></p>でマークアップされていていますか?。<br>を代用するなどしているのでは??  『divブロック内の文章がどの文字でdivの右端で折り返されるかは端末毎に変わるのは』 の意図がわからないのですが・・。divの使い方そのものが???    

suffre
質問者

お礼

ありがとうございます! 質問1に関して 自分でもちょっと調べてみましたら以下のサイトが見つかりました。 http://www.entereal.co.jp/blog/entry_media-queries-for-iOS-devices.html iPhone、iPadだけでもこれだけの種類に別けなくてはならないのですね。 これにandroidが加わればデバイスの振り分けがかなり厳しいのではないかと思います。 実際に皆さんはかなり多くの解像度振り分けをされているのでしょうか? 私は html {font-size: 62.5%;} div {  font-size: 14px; /* rem未対応ブラウザ用 */  font-size: 1.4rem; } このようにしています。 なのでMedia Queriesでの振り分けやmetaタグにviewportは設定していません。 これでも一応androidとiPhone5はいい感じで表示されています。 (boilerplate.cssというのは導入しています) 作っているサイトが1カラムなのでスマホでも対応させやすいのでこの簡単な方法 しか採用していません。 自分がやっているこの方法でいいのか悩むところですが、Media Queriesを使った場合 やはりいろんなデバイスで確認しないとダメですよね? 自分はandroidしか持っていないのでなかなか確認ができません。 質問2に関して >ちゃんと段落は<p></p>でマークアップされていていますか?。<br>を代用するなどしているのでは?? >『divブロック内の文章がどの文字でdivの右端で折り返されるかは端末毎に変わるのは』 >の意図がわからないのですが・・。divの使い方そのものが??? たとえばヘッダー用divに以下のような文章を入れたとします。  <div><p>これはテストサイトです。これはテストサイトです。これはテストサイトです。</p></div> PCでは横幅800pxに1行で収まるとします。 しかしスマホでは、  これはテストサイトです。これはテストサイトで  す。これはテストサイトです。 このように2行で表示されてしまいます。文字の大きさをremで指定しているためです。 これをpxで指定してしまうと今度は文字が小さくなって見づらくなってしまいます。 取引先の言い分は、「スマホでも文字を見やすい大きさにしつつ、1行に収まるように、もし<br>を 使っていたらきちんと改行も正しくなるようにしろ」という感じでした。 改行を使っている場合(<p>でもいいですが)  <div>   <p>これはテストサイトです。これはテストサイトです。</p>   <p>これはテストサイトです。これはテストサイトです。</p>  </div> これをスマホで表示すると  これはテストサイトです。これはテストサイトで  す。  これはテストサイトです。これはテストサイトで  す。 となってしまいます。 文字の大きさを見やすい大きさに調整しつつ、文章が適切な表示に収めることにかなり苦労して いますが、皆さんはどのようにしているのでしょうか? 長文失礼しました。どうぞよろしくお願い致します。

  • t_ohta
  • ベストアンサー率38% (5070/13246)
回答No.1

回答1 スマホやタブレットのブラウザにはviewportと言う概念があります。 これは、ディスプレイの解像度とは別にブラウザが便宜上表示領域の解像度をいくつと認識するかと言うものです。 なので、各々の機器のディスプレイの解像度を気にすることなくページの解像度を指定できます。 スマホだと短辺は320~360px、長辺が480~570pxくらい、 タブレットだと短辺が600~780px、長辺が960~1024pxくらいに設定されています。 (多少幅があるものの、端末・メーカーが異なってもだいたい同じサイズに決まってます) レスポンシブはこのサイズをベースにデバイスを判定するよう考えられています。 回答2 DIVの幅とフォントサイズをpx指定すると折り返し位置は大概揃いますが、あまり意味の無いことだと思います。 文字は人によって、端末によって見やすいサイズが異なるので、見る人が見やすいサイズに拡大・縮小しても漏れなく情報を表示できるよう作ることの方が大事なのではないでしょうか。

suffre
質問者

お礼

ありがとうございます! 回答1ですが、便宜上の解像度だったのですね。 デバイスの種類、ちょっと調べて見ようかと思います。 回答2ですが、px指定だとスマホで文字が小さくなってしまいますよね。 折り返しを意識しなくてもいいデザインにすればいいのでしょうけど、取引先が 両方に対応しろ(文字の大きさが見やすくて、端末によって全て同じ見え方にしろ)と 言っているので悩むところです・・・。

関連するQ&A

  • レスポンシブのコーディングについて

    初めまして。 初心者ながらレスポンシブサイトを作っていて、 つまづいてしまった箇所があるので教えて頂きたいです。 1:左右中央寄せのcss記述について   iPhone(320px)とAndroid(推定360px)の実機で表示確認をしながら   Media Queriesのcssを記述を書いてたのですが、画面サイズが異なる為か   cssの書き方が悪いのか、画面の左右中央寄せにしたくて   片方のスマホサイズに合わせると、片方ずれてしまいます。   cssでどの画面サイズでも左右中央に寄る書き方はありますか? 2:Media Queriesについて   1のcssの書き方がわからないので、画面サイズによって   Media Queriesを書き分ければ早いかなと思い、   iPhone用とAndroid用で別で記述してみたのですが、   画面サイズを指定してるにも関わらず、片方のMedia Queriesが   両方のスマホに反映してしまいます。   下記、Media Queriesの記述内容です。   iPhone用(幅320px)   @media screen and (max-width: 320px) {   Android用(幅:360px)   @media screen and (max-width: 360px) and (min-width: 321px) {   上記の書き方は間違っておりますでしょうか。 以上、2点について教えて頂けると助かります。 初心者なため、これで何時間も調べたり試行錯誤してしまっています。。  ちなみに、実機はiPhoneはiPhone4S、AndroidはF-01F です よろしくお願いします。 よろしくお願いします。

    • 締切済み
    • CSS
  • レスポンシブ 横1080px高解像度スマートフォン

    レスポンシブに挑戦しようとしていますが、 ちょっとよく分からくなってきたので質問させてください。 レスポンシブWEBデザインは、 例えば、次のようにデバイスの横幅によって異なるデザインのサイトを表示させるわけですよね。  @media screen and (min-width: 769px){PC向け}  @media screen and (max-width: 768px){タブレット向け}  @media screen and (max-width: 640px){スマートフォン向け} しかし、横幅が1080pxもあるスマートフォンが発売されてきましたので、 もはや、横幅ではどんなデバイスなのか分からなくなってきたと思います。 また、スマートフォンが高解像度になっても、 画面自体は小さいので、 スマートフォン用にサイトデザインを最適化する必要は変わりません。 そうすると、ユーザーエージェントで切り分ける旧式のやり方を少なくも併用しなければ、 結局、うまくいかないような気もするのですが、どうなんですかね? そのあたりについて、どのようにお考えでしょうか? ご意見お聞かせいただきたくお願い申し上げます。

    • ベストアンサー
    • CSS
  • レスポンシブWEBデザインのメディアクエリについて

    いつもお世話になります。 レスポンシブWEBデザインでサイト制作を行っています。 メディアクエリについて詳しい方、いらっしゃいましたら教えてください。 フルHD(1080×1920)のスマホのビューポイントをどのように設定するのが適当か悩んでいます。 @media screen and (min-width:480px)and(max-width:1080px) のように設定しようかと思いましたが、iPadminiのように、解像度が1024×768だと かぶってしまい、適当じゃない表示になるのを危惧しています。 実機で試せば良いのですが、どのようにビューポイントを設定しているのか、 是非、参考にさせて頂ければ幸いです。 よろしくお願いします。

    • ベストアンサー
    • CSS
  • レスポンシブデザイン

    スマホとPCで同一URLにして レスポンシブデザインでcssを変えたいのですが それぞれどのサイズにすればいいのでしょうか? 現在は @media screen and (max-width: 499px) { * { font-size: 1.0em; } } @media screen and (min-width: 500px) { * { font-size: 2.0em; } } の様にしていて 500以上だと大きく表示されるようにしています。 私のスマホ(アンドロイド)・PCなら問題ないのですが 一般的な幅を教えてください。

    • ベストアンサー
    • CSS
  • PCとスマホでの解像度でのCSS振り分け

    現在以下の方法でスマホ表示へ振り分けています。 <meta name = "viewport" content = "width = 501" /> <link href="/styel.css" rel="stylesheet" type="text/css" /> <link media="only screen and (max-device-width:410px)" href="/smart.css" type="text/css" rel="stylesheet" /> <link media="screen and (min-device-width:481px)" href="/styel.css" type="text/css" rel="stylesheet" /> 疑問なのですがこのコーディングでiphone4ではsmart.cssで表示されます しかしiphone4は620pxなのに何故最大解像度で振り分けられるのでしょう? styel.cssで表示されると思うのですが。 またドコモの最新のスマホではstyel.cssで表示されます、それは720pxなのですが 上記の指定でmax-device-width:720pxとかすればいいのでしょうか? よく分からなくなって来ました。解像度での振り分けは不確定なのでしょうか UAで行うにしても機種は膨大にあるので容易ではないと思うのですが スマホでの振り分け方法についていい方法があれば教えていただきたいのですが よろしくお願いします。

    • 締切済み
    • CSS
  • google mapのサイズのcssによる変更

    現在webページをスクリーンサイズによってPCとスマホにCSSを切り替えることによって 振り分けています、この場合google mapのサイズを切り替えたいのですがうまくいきません。 google mapは <div id="map" style="width:606px; height:420px;"> のように指定しています。 やってみたのはPC用CSSをpc.css、スマホ用CSSをsm.cssとすると <div id="pcmap"> <div id="map" style="width:606px; height:420px;"> </div> <div id="smmap"> <div id="map" style="width:406px; height:420px;"> </div> と記述し、それぞれのCSSでdisplay:none;したのですが無条件で2件目のmapが表示されないためうまくいきません、CSSに関わらず二重設置になるからだと思います。 なにかいい方法はないでしょうか?

    • ベストアンサー
    • CSS
  • レスポンシブWeb 右側の表示が切れてます

     レスポンシブWebデザインのサイトを作っています。  スマホの画面では右側の表示がきれてしまいます。 marginとpaddingは左に効いても、右には効きません。  PCの画面では想定どおりに表示します。 <meta name="viewport" content="width=device-width"> <link rel="stylesheet" href="css/common-l.css"> <link rel="stylesheet" href="css/common-s.css" media="only screen and (max-width:599px)">  PC用のcommon-l.cssを使わずスマホ用のcommon-s.cssだけを使うと表示は正常 でmarginとpaddingも効きます。common-l.cssが影響しているのはわかりました。 ためしにPC用のwidthを削るとスマホ画面の表示は正常になりました。当然PC用 画面の表示はおかしくなりますが。  なお「width: 650px;」を「width: 72.22%;」にしても結果は同じです、 //// PC用 common-l.css ////////////////// #content{ float: left; width: 650px;  ←この行を削るとうまくいきます background-color: #FFFFFF; } //// スマホ用 common-s.css ////////////////// p{width: 100%;} #content{ width: 100%; background-color: #FFFFFF; margin: 10px 50px 10px 10px; }  原因まではわかりましたが、対策がわかりません。PC用とスマホ用の両方の表示を まともにするにはどうすればいいでしょうか? 心当たりがあればお答えください。

    • ベストアンサー
    • CSS
  • 画像メインの1カラムのリキッドデザインができません

    画像をメインにした1カラムのリキッドデザインを作成したいのですが、画像の縦横比が崩れて縦長になりながら可変してしまいます。どのようにcssを設定したらよろしいでしょうか?いろいろ検索したりしましたが、うまくできません。 また、こちらの質問機能じたい初めてさせていただいています。至らないことがあるかもしれませんが、ぜひともよろしくお願い致します。急ぎで解決したいです。^^; ---------------- <html> <head> <meta charset="UTF-8" > <meta name="viewport" content="width=device-width,maximum-scale=1.0,minimum-scale=0.5,user-scalable=yes,initial-scale=1.0"/> <link rel="stylesheet" href="css/a3.css" type="text/css" > <title></title> </head> <body> <div id="wall" > <div id="box"> <img src="css/images/main.jpg"> </div> </div> <div id="footer"><img src="css/images/foot.jpg"></div> </body> --------------------------- body{ width:100%; height:100px; max-height:720px; } #wall{ display:block; width:100%; height:100%; margin:0 auto; min-width:720px; min-height:325px; max-width:1440px; max-height:650px; background-image:url(images/G1.jpg); background-size: 100% 100%; } #box{ width:100%; height:100%; min-width:720px; min-height:325px; max-width:1440px; max-height:650px; } #footer { width:100%; margin:0 auto; min-width:720px; min-height:35px; max-width:1440px; max-height:70px; }

    • ベストアンサー
    • CSS
  • レスポンシブデザインにする方法、参考サイト

    現在作成しているサイトをレスポンシブにしようと色々サイトを調べているのですが、一部はしょってあったりなかなかいいサイトがありません。 こちらのスキルとしては通常のサイト制作は仕事で請け負っています。 現在レスポンシブサイトの案件が増えているので、自分のサイトを勉強用にしています。 例えばつまずいているのは基本的な部分なのですが、 htmlの<head>部分に <link rel="stylesheet" media="screen and (min-width:1024px)" type="text/css" href="css/layout.css"> <link rel="stylesheet" media="screen and (min-width:768px)" type="text/css" href="css/tabletcss"> <link rel="stylesheet" media="screen and (min-width:480px)" type="text/css" href="css/smart.css"> と記述し、cssを3種類用意し、各cssに @media screen and (min-width:480px) { img{ max-width: 100%; height: auto; width /***/:auto;  }・・・以下各要素省略 } とそれぞれ記述すると、<head>部分で一番下にリンクしたsmart.cssの内容が1024pxで設定してあるはずのPCでの表示に影響してしまいます。 リンクの貼り方はコリスさんのところで参考にしたと思うのですが、どこが問題でしょうか? それ以外の画像や要素の%表示のことはわかるのですが、ここが肝心だと思うので..恐らく一番基本的なことなので調べても省略してあるサイトもあるのかもしれません。 一度覚えてしまえば使い回し出来ると思うのですが、この質問への答えでなくても、参考になるサイトがありましたらご教示下さい。ちなみに省略してるだけでreset.css等は設定してあります。

    • ベストアンサー
    • CSS
  • webレスポンシブ 

    新たに問題が出てきまして、 iphoneの表示で確認した所、 footerの画像が消えてくれません。 [問題の箇所] Media QueriesにてCSS /*=============================================== 画面の横幅が320pxまで ===============================================*/ @media screen and (max-width:320px){ footer{ background-image: url(images/footer/footer_wood.jpg); display:none; } どうぞ宜しくお願いします。

専門家に質問してみよう