975 views
この記事は最終更新から 1498日 が経過しています。
1. 問題発生
divタグを上下に並べて書いた。
上側の divは白い背景で、中に画像を置いた。
下側の divは黒い背景だ。
すると…
両者の間に 謎の余白が出現してしまった…
この余白を消したい!
https://www.dogrow.net/hp/sample/00136/case1

コードは以下の通り。
空白領域など作るつもりはまったくないのだ。
index.html
<html lang="ja">
<head>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div class="d1"><img src="bg.jpg"></div>
<div class="d2"></div>
</body>
</html>
style.css
div.d1{
background-color: #fff;
}
div.d2{
background-color: #000;
height:300px;
}
2. 解決策
上側の divの下端に余白が出来てしまっていた。
これを line-height: 0 で消すことが出来る。
「line-heightとは?」は、こちらを参照されたい。
https://www.dogrow.net/hp/sample/00136/case2

style.css
div.d1{
background-color: #fff;
line-height: 0;
}
div.d2{
background-color: #000;
height:300px;
}
無理矢理下側の divを margin-top: -10px とかで上に移動させて、強引に消すのはやめたほうがよいかも…
アクセス数(直近7日): ※試験運用中、BOT除外簡易実装済2026-05-04: 0回 2026-05-03: 0回 2026-05-02: 0回 2026-05-01: 0回 2026-04-30: 0回 2026-04-29: 1回 2026-04-28: 1回