- ベストアンサー
サイトが崩れてしまう。
サイトを作ったのですが、 リンク、自己紹介などを position:relativeをつかって上に引き上げたのですが、下の方に余白が出来てしましました。 position:relativeでボックスを移動すると余白がどうしても出来てしまうのでしょうか?余白が出来ない方法などがありましたら教えてください。 また、ナイーブメイクオフローションの広告を張った所、下の線が広がらずに崩れてしましました。なぜなのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
position:relative 【引用】____________ここから ボックスの位置はまず通常フローにて計算され(この計算で得られた位置を通常位置と呼ぼう)、その通常位置から相対的に配置される。 なお、あるボックスBが相対配置される場合、それに後行するボックスの位置は、Bが相対配置されていないかのように計算される。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[視覚整形モデル( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/visuren.html#choose-position )]より 前後のHTMLや文書構造、およびどのように表現したいかがわかりませんが、通常はposition:absoluteを使います。下記見本では、続く<address>の上に隙間は開いていませんね。 [例]HTML4 いずれもタブは_に置換してあるので戻すこと。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> _<meta http-equiv="content-type" content="text/html; charset=Shift_JIS"> _<title>サンプル</title> _<meta name="author" content="ORUKA1951"> _<meta http-equiv="Content-Style-Type" content="text/css"> _<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" > _<link rel="START" href="../index.html"> _<style type="text/css"> <!-- body,html{margin:0;padding:0;} div.header,div.section,div.footer{width:70%;margin:0 auto;} div.header{background-color:aqua;height:100px;} div.section{background-color:yellow;min-height:300px;} div.footer{background-color:silver;} h1,h2,h3,p{margin:0;line-height:1.6em;} div.section div.section{width:90%;background-color:lime;min-height:0;} #AuthorProfile,div.footer div.nav{position:absolute;top:100px;width:13%;background-color:fuchsia;min-height:0;} #AuthorProfile{left:5px;} div.footer div.nav{right:5px;} --> _</style> </head> <body> _<div class="header"> __<h1>サンプル</h1> _</div> _<div class="section"> __<h2>本文見出し</h2> __<p>記事</p> __<div class="section"> ___<h3>項目見出し</h3> ___<p>記事</p> __</div> _</div> _<div class="footer"> __<h2>文書情報</h2> __<div class="section" id="AuthorProfile"> ___<h3>自己紹介</h3> ___<h3>自己紹介</h2> ___<p>私は・・・</p> __</div> __<div class="nav"> ___<ul> ____<li><a href="./">トップ</a></li> ____<li><a href="./books">著書</a></li> ____<li><a href="./Blog">ブログ</a></li> ___</ul> __</div> __<address>連絡先</address> _</div> </body> </html> [例}HTML5 <!doctype html> <head> _<meta charset="utf-8"> _<title>サンプル</title> _<meta name="description" content=""> _<meta name="author" content="IRUKA"> _<link rel="stylesheet" href="css/style.css"> <style media="screen"> <!-- body,html{margin:0;padding:0;} header,section,footer{width:70%;margin:0 auto;} header{background-color:aqua;height:100px;} section{background-color:yellow;min-height:300px;} footer{background-color:silver;} h1,h2,h3,p{margin:0;line-height:1.6em;} section section{width:90%;background-color:lime;min-height:0;} #AuthorProfile,footer div.nav{position:absolute;top:100px;width:13%;background-color:fuchsia;min-height:0;} #AuthorProfile{left:5px;} div.footer div.nav{right:5px;} --> </style> </head> <body> _<header> __<h1>サンプル</h1> _</header> _<section> __<h2>本文見出し</h2> __<p>記事</p> __<section> ___<h3>項目見出し</h3> ___<p>記事</p> __</section> _</section> _<footer> __<h2>文書情報</h2> __<section id="AuthorProfile"> ___<h3>自己紹介</h3> ___<h3>自己紹介</h2> ___<p>私は・・・</p> __</section> __<nav> ___<ul> ____<li><a href="./">トップ</a></li> ____<li><a href="./books">著書</a></li> ____<li><a href="./Blog">ブログ</a></li> ___</ul> __</nav> __<address>連絡先</address> _</footer> </body> </html>
お礼
ありがとうございます。難しいのでよく確認して再度質問させてください。