[解決済み] CSSでmarginとpaddingを使い分けるタイミング【終了しました
2022-03-18 09:51:10
質問
CSSを記述する際、どのようなルールやガイドラインで
margin
を使用し、いつ
padding
?
解決方法は?
TL;DR。 デフォルトでは、ボーダーや背景があり、その可視ボックス内のスペースを増やしたい場合を除き、どこでもマージンを使用しています。
私にとって、paddingとmarginの最大の違いは、垂直方向の余白は自動で折りたたまれ、paddingは折りたたまれないことです。
2つの要素が1つずつ上にあり、それぞれのパディングが
1em
. このパディングは要素の一部とみなされ、常に保存されます。
つまり、最初の要素のコンテンツ、その後に最初の要素のパディング、その後に2番目の要素のパディング、その後に2番目の要素のコンテンツが表示されることになるのです。
したがって、2つの要素のコンテンツは、最終的に
2em
を離す。
ここで、そのパディングを1emのマージンに置き換えてください。マージンは要素の外側とみなされ、隣接するアイテムのマージンは重なります。
つまり、この例では、最初の要素のコンテンツと、その後に続く
1em
の複合余白の後に、2番目の要素のコンテンツが続きます。つまり、2つの要素の内容は、あくまでも
1em
を離す。
ということが分かっているときに、とても便利です。
1em
のように、ある要素の周囲に間隔を空ける。
他の2つの大きな違いは、クリック領域と背景色/画像にはパディングが含まれるが、マージンには含まれないことである。
div.box > div { height: 50px; width: 50px; border: 1px solid black; text-align: center; }
div.padding > div { padding-top: 20px; }
div.margin > div { margin-top: 20px; }
<h3>Default</h3>
<div class="box">
<div>A</div>
<div>B</div>
<div>C</div>
</div>
<h3>padding-top: 20px</h3>
<div class="box padding">
<div>A</div>
<div>B</div>
<div>C</div>
</div>
<h3>margin-top: 20px; </h3>
<div class="box margin">
<div>A</div>
<div>B</div>
<div>C</div>
</div>
関連
-
[css3]css3アニメーションマウスが絵の上に置かれると徐々に大きくなり、マウスが絵から離れると徐々に縮む効果
-
[CSSチュートリアル]CSS気まぐれボーダーアニメーション効果
-
[css3]css3によるフレックスレイアウト幅の解決方法が有効でない件
-
[解決済み] CSSの親セレクタはありますか?
-
[解決済み] CSSでcellpaddingとcellspacingを設定する?
-
[解決済み] CSSのdisplayプロパティで遷移する
-
[解決済み] How do I style a <select> dropdown with only CSS?
-
[解決済み] javascript(またはjQuery)を使って::beforeや::afterなどのCSS疑似要素を選択し、操作する。
-
[解決済み] CSS 100% height と padding/margin の関係
-
[解決済み】HTML5入力のプレースホルダの色をCSSで変更する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
cssで背景色の半透明化を実現する2つの方法
-
[CSSチュートリアル]CSSは、2列のレイアウト、固定幅の左側、適応するためのさまざまな方法の右側を達成するために
-
[CSSチュートリアル】overflow:hiddenの役割を解説(overflow hidden、clear float、外周マージンの崩れを解決する)。
-
[CSSチュートリアル]css display table adaptive height, widthの問題解決
-
[CSSチュートリアル】パララックススクロールの効果を完成させるCSS
-
[CSSレイアウト例】CSSで中央揃えを実現する方法N種
-
[css3]Apple携帯電話のロック解除のためのCSS3サンプルフォントシャインエフェクト
-
[CSSチュートリアル】インタビュー必見!聖杯レイアウトとダブルウィングレイアウトの違いとは?
-
[解決済み] CSSでテキストを垂直方向にセンタリングするには?[重複しています]
-
[解決済み] ビューのパディングとマージンの違いについて