回答編集履歴

2

訂正

2022/04/28 02:55

投稿

Lhankor_Mhy
Lhankor_Mhy

スコア36852

test CHANGED
@@ -42,7 +42,7 @@
42
42
 
43
43
   `iframe`の`display`はデフォルトで`inline`のところ、`display:table`により`block`になり、そのために右マージンが計算されなくなり、オーバフローしなくなっています。
44
44
 
45
-  なぜ、ブロックになると右マージンが消えるのかについてですが、これはCSS仕様では over-constrained(過剰制限)と説明されているものです。詳しく説明すると長くなりますが、ブロックの「左マージン+左ボーダー+左パディング+横幅+右パディング+右ボーダー+右マージン」が親要素より大きい時は、**右マージンを無視して親要素の幅に合わせなさい**、という仕様です。これにより右マージンが0として扱われています。
45
+  なぜ、ブロックになると右マージンが消えるのかについてですが、これはCSS仕様では over-constrained(過剰制限)と説明されているものです。詳しく説明すると長くなりますが、ブロックの「左マージン+左ボーダー+左パディング+横幅+右パディング+右ボーダー+右マージン」が親要素の幅と異なる時は、**右マージンを無視して親要素の幅に合わせなさい**、という仕様です。これにより右マージンが0として扱われています。
46
46
 
47
47
  ---
48
48
 

1

強調

2022/04/28 02:27

投稿

Lhankor_Mhy
Lhankor_Mhy

スコア36852

test CHANGED
@@ -42,7 +42,7 @@
42
42
 
43
43
   `iframe`の`display`はデフォルトで`inline`のところ、`display:table`により`block`になり、そのために右マージンが計算されなくなり、オーバフローしなくなっています。
44
44
 
45
-  なぜ、ブロックになると右マージンが消えるのかについてですが、これはCSS仕様では over-constrained(過剰制限)と説明されているものです。詳しく説明すると長くなりますが、ブロックの「左マージン+左ボーダー+左パディング+横幅+右パディング+右ボーダー+右マージン」が親要素より大きい時は、右マージンを無視して親要素の幅に合わせなさい、という仕様です。これにより右マージンが0として扱われています。
45
+  なぜ、ブロックになると右マージンが消えるのかについてですが、これはCSS仕様では over-constrained(過剰制限)と説明されているものです。詳しく説明すると長くなりますが、ブロックの「左マージン+左ボーダー+左パディング+横幅+右パディング+右ボーダー+右マージン」が親要素より大きい時は、**右マージンを無視して親要素の幅に合わせなさい**、という仕様です。これにより右マージンが0として扱われています。
46
46
 
47
47
  ---
48
48