レスポンシブ対応やインターネット環境の向上で、img属性にwidth,height属性をつける必要性がないと感じていますが
みなさんは、どうしていますか?
理由も書いていただければ幸いです。
私は、下記のメリット・デメリットを認識していますがレスポンシブ対応を考えると
メリット部分が弱いかと考え、width属性などをつけていません。
■メリット
インターネット回線が遅い環境でもレイアウト崩れがなくなる
■デメリット
コーディングが長くなる
画像差し替えの際に手間が増える
よろしくおねがいします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答5件
0
ベストアンサー
単位が%とかvwとか相対的な単位になるimgにはつけないです
理由:widthを指定したところで正解の配置サイズにならない
画像サイズによらずにcssで配置サイズを統一したいimgにはつけません
理由:widthを指定したところで正解の配置サイズにならない
inline-blockやflexのアイテムの中にあって
そのアイテムのサイズに影響するimgにはつけます
理由:読み込みの時レイアウトがガタガタするのがイヤ
画像サイズがバラバラの画像をいくつも配置する場合
cssでは書かずにそれぞれwidthで書きます
理由:画像の追加・削除の度にcssも更新しなきゃいけないとか面倒
投稿2018/06/11 14:26
総合スコア7834
0
つけないとlinterで100点取れなくなる・・・っていうのはもう古いかもしれませんね。
ブラウザが計算しやすいので、レスポンスよかったり、
(現在ではわずかな差ではありますが)
Retinaディスプレイにおいて、表示より大きい画像を表示していても、
CSSで大きさを決めなくて済むなど、
利点はけっこうありますよ。
ただ、おっしゃる通り、レスポンシブデザインで大きさを決めたくないって時は、少々わずらわしかったりはしますけどね。
(そういう時は、widthに100%とか入れてます。
↑ただしこの書き方はIE9だと、横幅が認識されません 笑)
上記取り消し部分について、<img width="100%" height="auto">と入れるやり方の際とのつもりでしたが、
width、heightには、autoという値がないとのご指摘をいただきましたので、
取り消します。
あと、SEOにも影響があります。
というのも、ユーザビリティ(パフォーマンスが高いということ)が高く、HTMLとして正しい構文で記述され、エラーがないページの方が、SEOにおいての評価が高くなるからです。
といってもこれは古い知識かもしれませんが。(今は違うかも)
なので、僕は、いまだに、スマホのページのHTMLだったとしても、必ずwidthとheightはつけております。
(スマホの場合は、画像の実寸を入れている)
その上で、スマホやレスポンシブの場合はCSSで大きさをコントロール、ってやってますね。
また、最近では、Retinaディスプレイ対応のために、srcsetを使用しております。
html
1<!-- 原寸(1xの画像)は、200px × 200px、そのサイズで表示させたい場合 --> 2<img src="test.jpg" srcset="test.jpg 1x,test@2x.jpg 2x" width="200" height="200" alt="テスト画像">
srcも同時に定義すれば、srcsetがきかないブラウザに関してもsrcで定義した画像が表示されるので、
安心です。
この場合でも、必ず、width、heightは入れるようにしております。
投稿2018/06/12 09:29
編集2018/06/14 02:37総合スコア9555
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ブログをやってます。
色んな祭や街並の写真をアップしてます。
基本width height 指定は必ずしてます。max-widthを100%以下にしてしておかないとまずいんじゃないでしょうか。
で、当然heightはautoになります。
画像が表示画面からはみだすとレスポンシブの意味が無くなりませんか?
私は記事部分の全体サイズの中での一枚の写真の納まりを95%にしていることが多いです。
写真は基本3:2のアスペクト比なのですが、これを横位置で普通は撮りますが、状況によっては縦位置になります。
縦位置の写真のwidth指定をそれなりの指定をしないと横位置の写真との大きさのバランスが崩れるので、縦位置の写真はwidthを小さくしてしますね。
記事内での画像の大きさを指定するって普通です。
最大で必ず表示されるって。
表現の仕方ですよね。
投稿2018/06/12 14:31
編集2018/06/12 14:39総合スコア52
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/13 05:00
2018/06/13 06:34
2018/06/13 08:33
2018/06/13 08:46
2018/06/13 08:49
2018/06/13 09:22
2018/06/13 09:23
2018/06/13 09:29
2018/06/13 09:57

0
誤読で hgforteratail さんへのコメントになってしまいましたので、本回答は無視して下さい。
img要素の width, height 属性
https://momdo.github.io/html/embedded-content-other.html#dimension-attributes
著者要件:img、iframe、embed、object、videoおよび、type属性がImage Button状態にある場合のinput要素上のwidthおよびheight属性は、その要素の視覚コンテンツの次元(出力媒体の名目上の方向に対するそれぞれの幅および高さ)をCSSピクセルで与えるために指定してもよい。属性が指定される場合、妥当な非負整数である値を持たなければならない。
すなわち、次のHTMLは文法違反です。
HTML
1<img src="foo.jpg" width="auto" height="auto">
heightにauto入れると、IE9だと、サイズが認識されなくなりますが、
width, height 属性に auto という値はありません。
picture要素
x_xさん、<img width="100%" height="auto">みたいなことです。
それはimg要素である必要がありますか。
一つの画像で拡大すればボケボケになり、縮小すれば余計なトラフィックが発生します。
私なら、picture要素、source要素を使う方向で考えます。
(2018/06/14 08:05追記)
miyabi_takatsuk さんより「IE11 は picture 要素をサポートしていない」という指摘を頂きました。確かに対応していませんでした。
Re: towatatsu12 さん
投稿2018/06/13 10:53
編集2018/06/13 23:08総合スコア18194
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/13 11:01
2018/06/13 15:13
2018/06/14 00:01

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。