質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

3回答

5748閲覧

img要素の謎を解決してほしい

Hedgehog9

総合スコア11

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2020/11/16 03:58

編集2020/11/16 05:39

imgはインライン要素なのに、display: inline-block;などを指定しないで
height / widthを設定できる意味がよくわかりません。

また画像は、height / widthどちらかを指定すれば、勝手に縮んでくれたりするのですがそれは何故ですか?

MDN見てもちょっとよくわかりませんでした。
わかりやすく教えていただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

img属性

img属性なるものは、HTMLの世界に存在しません。
正しく理解するために正しい用語を覚えて下さい。

img要素

また画像は、height / widthどちらかを指定すれば、勝手に縮んでくれたりするのですがそれは何故ですか?

img要素置換要素なので、width,heightを指定出来ます。
input要素/textarea要素も同様です。

HTMLとCSSの用語を混在させて理解しようとしているようなので、両者を明確に区別して下さい。
width指定で幅が変化するのはCSSの影響です。
「インライン要素」のようなHTMLの用語は忘れて下さい。

width, height プロパティ

項目説明
名前width, height
適用対象すべての要素 — ただし,置換されない行内【すなわち行内ボックス】は除く。

従って、置換要素は「適用対象」に含まれます。

Re: Hedgehog9 さん

投稿2020/11/16 04:31

編集2020/11/16 10:31
think49

総合スコア18170

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hedgehog9

2020/11/16 05:39 編集

img要素の件間違えて記憶していました。ご指摘ありがとうございます。 HTMLの用語を覚えなくて良い理由がいまいちよくわかりません。 今後使うことはないからという認識て良いでしょうか?
maisumakun

2020/11/16 10:04

「インライン要素」はHTML 4時代の用語です。HTML 5では消滅しています。
think49

2020/11/16 10:20

HTMLも学習すべきですが、本質問を解決するにあたってはCSSのみで完結する(HTMLは不要)という意味です。 ちなみに、インライン要素とインラインボックスの関係性を過去ログで触れています。 https://teratail.com/questions/301688#reply-424665
guest

0

画像は、height / widthどちらかを指定すれば、勝手に縮んでくれたりするのですがそれは何故ですか?

それは「内在サイズ(intrinsic size)」によるものです。

If 'height' and 'width' both have computed values of 'auto' and the element also has an intrinsic height, then that intrinsic height is the used value of 'height'.

Otherwise, if 'height' has a computed value of 'auto', and the element has an intrinsic ratio then the used value of 'height' is:

(used width) / (intrinsic ratio)

10.6.2 Inline replaced elements, block-level replaced elements in normal flow, 'inline-block' replaced elements in normal flow and floating replaced elements | Visual formatting model details

(勝手訳)
もし 'height' と 'width' の両方の計算値が 'auto' で、かつその要素が内在高さを持っている場合、内在高さは 'height' の使用値になります。
そうではなければ、もし 'height' の計算値が 'auto' で、かつその要素が内在アスペクト比を持っている場合、'height' の使用値は以下の通りです:
(width の使用値)/(内在アスペクト比)


ここでいう「内在アスペクト比」は、画像の実際のアスペクト比と考えて通常は問題ないと思います。
ただ、将来的にはaspect-ratio プロパティの影響を受ける可能性があるのではないかと思います。

投稿2020/11/16 10:02

編集2020/11/16 10:23
Lhankor_Mhy

総合スコア36158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hedgehog9

2020/11/16 11:18

ご回答ありがとうございます。 とても分かり易かったです、ありがとうございます!
guest

0

ちょっと意味合いは違いますが
文字列だってフォントサイズを変更すれば縮んだり広がったりしますよね?
inputやtextareaなどもサイズが可変ですがインライン要素です

投稿2020/11/16 04:09

編集2020/11/16 04:12
yambejp

総合スコア115010

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hedgehog9

2020/11/16 11:27

なるほど!わかりやすい説明ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問