CSSの margin プロパティで要素間のマージンの大きさを指定できます。
スタイルシート属性 margin は、マージンの大きさを指定します。マージンとは枠線 (border) と他の要素との余白のことです。
margin: all
margin: topbottom rightleft
margin: top right bottom left
<div style="margin: 0; background-color: aquamarine">foo</div>
<div style="margin: 0; background-color: aquamarine; display: inline-block">bar</div>
<div style="margin: 0; background-color: aquamarine; display: inline-block">baz</div>
<div style="margin: 8px; background-color: aquamarine">foo</div>
<div style="margin: 8px; background-color: aquamarine; display: inline-block">bar</div>
<div style="margin: 8px; background-color: aquamarine; display: inline-block">baz</div>
<div style="margin: 8px 0; background-color: aquamarine">foo</div>
<div style="margin: 8px 0; background-color: aquamarine; display: inline-block">bar</div>
<div style="margin: 8px 0; background-color: aquamarine; display: inline-block">baz</div>
<div style="margin: 0 8px; background-color: aquamarine">foo</div>
<div style="margin: 0 8px; background-color: aquamarine; display: inline-block">bar</div>
<div style="margin: 0 8px; background-color: aquamarine; display: inline-block">baz</div>
要素間のマージンは重複しない。
たとえば、下側マージン 10px の要素と上側マージン 20px の要素が上下に並んでいる場合、その間隔は合計値の 30px ではなく、大きい方の 20px となる。
<div style="margin: 20px 10px 10px 10px; border: 1px solid;">
1
</div>
<div style="margin: 20px 10px 10px 10px; border: 1px solid;">
2
</div>
<div style="margin: 20px 10px 10px 10px; border: 1px solid;">
3
</div>
スタイルシート属性 margin-top は、マージンの大きさを指定します。マージンとは枠線 (border) と他の要素との余白のことです。
要素間のマージンは重複しない。たとえば、下側マージン 10px の要素と上側マージン 20px の要素が上下に並んでいる場合、その間隔は合計値の 30px ではなく、大きい方の 20px となる。
margin-top: margin
スタイルシート属性 margin-top の使用例と表示サンプルを次に示します。表示結果はブラウザによって異なることがあります。
<div style="display: flex">
<div style="margin-top: 0; flex: auto; background-color: aquamarine">0</div>
<div style="margin-top: 10px; flex: auto; background-color: aquamarine; margin-left: 2px">10px</div>
<div style="margin-top: 20px; flex: auto; background-color: aquamarine; margin-left: 2px">20px</div>
<div style="margin-top: 30px; flex: auto; background-color: aquamarine; margin-left: 2px">30px</div>
</div>
<div style="display: flex">
<div style="margin-top: 0; flex: auto; background-color: aquamarine">0</div>
<div style="margin-top: 1rem; flex: auto; background-color: aquamarine; margin-left: 2px">1rem</div>
<div style="margin-top: 2rem; flex: auto; background-color: aquamarine; margin-left: 2px">2rem</div>
<div style="margin-top: 3rem; flex: auto; background-color: aquamarine; margin-left: 2px">3rem</div>
</div>
スタイルシート属性 margin-right は、マージンの大きさを指定します。マージンとは枠線 (border) と他の要素との余白のことです。
要素間のマージンは重複しない。たとえば、右側マージン 10px の要素と左側マージン 20px の要素が左右に並んでいる場合、その間隔は合計値の 30px ではなく、大きい方の 20px となる。
margin-right: margin
スタイルシート属性 margin-right の使用例と表示サンプルを次に示します。表示結果はブラウザによって異なることがあります。
<p style="margin-right: 10px; background-color: aquamarine">10px</p>
<p style="margin-right: 20px; background-color: aquamarine">20px</p>
<p style="margin-right: 30px; background-color: aquamarine">30px</p>
10px
20px
30px
<p style="margin-right: 1em; background-color: aquamarine">1em</p>
<p style="margin-right: 2em; background-color: aquamarine">2em</p>
<p style="margin-right: 3em; background-color: aquamarine">3em</p>
1em
2em
3em
<p style="margin-right: 10%; background-color: aquamarine">10%</p>
<p style="margin-right: 20%; background-color: aquamarine">20%</p>
<p style="margin-right: 30%; background-color: aquamarine">30%</p>
10%
20%
30%
CSS プロパティの margin-right に auto を指定すると、ブラウザが自動的にマージンを設定する。margin-left と margin-right に auto を指定すると、中央寄せになる。
<p style="margin-right: auto; background-color: aquamarine">auto</pv>
<p style="margin-right: auto; background-color: aquamarine; width: 200px">auto</pv>
<p style="margin-right: auto; background-color: aquamarine; width: 200px; margin-left: auto">auto</p>
auto
auto
auto
スタイルシート属性 margin-bottom は、マージンの大きさを指定します。マージンとは枠線 (border) と他の要素との余白のことです。
要素間のマージンは重複しない。たとえば、下側マージン 10px の要素と上側マージン 20px の要素が上下に並んでいる場合、その間隔は合計値の 30px ではなく、大きい方の 20px となる。
margin-bottom: margin
スタイルシート属性 margin-bottom の使用例と表示サンプルを次に示します。表示結果はブラウザによって異なることがあります。
<div style="display: flex">
<div style="margin-bottom: 0; flex: auto; background-color: aquamarine">0</div>
<div style="margin-bottom: 10px; flex: auto; background-color: aquamarine; margin-left: 2px">10px</div>
<div style="margin-bottom: 20px; flex: auto; background-color: aquamarine; margin-left: 2px">20px</div>
<div style="margin-bottom: 30px; flex: auto; background-color: aquamarine; margin-left: 2px">30px</div>
</div>
<div style="display: flex">
<div style="margin-bottom: 0; flex: auto; background-color: aquamarine">0</div>
<div style="margin-bottom: 1rem; flex: auto; background-color: aquamarine; margin-left: 2px">1rem</div>
<div style="margin-bottom: 2rem; flex: auto; background-color: aquamarine; margin-left: 2px">2rem</div>
<div style="margin-bottom: 3rem; flex: auto; background-color: aquamarine; margin-left: 2px">3rem</div>
</div>
スタイルシート属性 margin-left は、マージンの大きさを指定します。マージンとは枠線 (border) と他の要素との余白のことです。
要素間のマージンは重複しない。たとえば、右側マージン 10px の要素と左側マージン 20px の要素が左右に並んでいる場合、その間隔は合計値の 30px ではなく、大きい方の 20px となる。
margin-left: margin
スタイルシート属性 margin-left の使用例と表示サンプルを次に示します。表示結果はブラウザによって異なることがあります。
<p style="margin-left: 10px; background-color: aquamarine">10px</p>
<p style="margin-left: 20px; background-color: aquamarine">20px</p>
<p style="margin-left: 30px; background-color: aquamarine">30px</p>
10px
20px
30px
<p style="margin-left: 1em; background-color: aquamarine">1em</p>
<p style="margin-left: 2em; background-color: aquamarine">2em</p>
<p style="margin-left: 3em; background-color: aquamarine">3em</p>
1em
2em
3em
<p style="margin-left: 10%; background-color: aquamarine">10%</p>
<p style="margin-left: 20%; background-color: aquamarine">20%</p>
<p style="margin-left: 30%; background-color: aquamarine">30%</p>
10%
20%
30%
CSS の margin-left プロパティに auto を指定すると、ブラウザが自動的にマージンを設定する。margin-left と margin-right に auto を指定すると、中央寄せになる。
<p style="margin-left:auto; background-color: aquamarine">auto</p>
<p style="margin-left:auto; background-color: aquamarine; width: 200px">auto</p>
<p style="margin-left:auto; background-color: aquamarine; width: 200px; margin-right: auto">auto</p>
auto
auto
auto
World Wide Web Consortium (2022) CSS Box Model Module Level 3