遅くなりました。
すべてが書かれていませんがおよその原因はわかりました。
・IE6のもっとも有名なバグですが、ブロックのサイズをpadding辺の内側でなく、border辺の内側で解釈することによるものです。
いずれ勧告されるHTML5では、DOCTYPEからすべてのブラウザが標準モードで動作しますから--HTML5ではすべてのブラウザが標準モードで起動するためだけの目的でDOCTYEが使われます。
[確認]
1) DOCTYPEを下記のように書き換えてください。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
これでIEでも、他のブラウザと同じような表示になるはずです。
2) はみ出す要素のpaddingの値を0にしてください。
これで誤差の原因となるpaddingはなくなるので、IEも他のブラウザと同じ表示になるはずです。
[対策]
HTMLをウェブ標準に直す。
DOCTYPEとHTMLのマークアップを変更します。
HTML4.01transitinalですが、さすがに12年も前から「HTML文書を作る場合には、この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/conform.html#h-4.1 )」と言われ続けていることですから、折角ならstrictにしておくべきでしょう。HTMLにプレゼンテーションに関わるタグや要素が含まれませんから、とってもスリムでわかりやすいものになります。
(strictを身につければ、将来のHTML5への対応も「HTML5 における HTML4 からの変更点 ( http://standards.mitsue.co.jp/resources/w3c/TR/html5-diff )」だけを学べばすみます)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
また、たくさんのエラーがあります。これも直しておきましょう。なぜなら
『CSSスタイルシートを意図した通りに機能させるには、正しい文書解析木が必要です。つまり、正当なHTMLを用いるべき ( http://jigsaw.w3.org/css-validator/#validate_by_input )』だからです。HTMLにエラーがあると、HTML5未満の場合、ブラウザによって文書構造の解釈が異なり、それが原因で表示のずれが出てくるからです。
・Another HTML-lint 5 ( http://www.htmllint.net/html-lint/htmllint.html )
・Another HTML-lint gateway ( http://cetus.sakura.ne.jp/htmllint/htmllint.html )
HTML5未満のHTMLでしたら、後者で十分です。
[主な間違い]--重要なものから
・<a></a>内に<div>は入れられません。行内要素以外は入りません。
・空要素は/>ではなく、>で閉じます。
・<input type="image" や<img>にはaltで代替テキストが必須です。
・改行は<br>を使うべきではありません。
・内容のない<div></div>があります。--これは省かれているだけとは思いますが
・画像にはデフォルトのwidth,heightを書いておきましょう。
・いくつか綴りが間違ってます。</storong>,<input type="passwold"・・
これらを直さないと、ブラウザ間の誤差を完全に消すことは不可能です。
[ついでに]
class名は、文書構造がわかるものにしましょう。これは将来のメンテナンスで絶対に重宝します。もちろん強力な検索エンジン対策にもなります。後から見直すのもとっても楽です。
また、あんなにclassは不要です。あくまでDIVは複数の要素をグループ化するためのものです。そのDIVの子孫セレクタをうまく使えばDIVスープにしなくてすみます。画像しかないのでしたら<p><img src="" width="" height="" alt=""></p>です。
★HTML4.01strict(Shift_JIS) + CSS2.1 です。
★タブは_に置換してあります。
★Another HTML Lintでチェックしてありますが、accesskeyやtabindexはなくても良いでしょう。
★どのブラウザでも、ほとんど差なく表示されるでしょう。
★<!doctype html>にして、
<div class="header"></div>→<header></header>
<div class="article"></div>→<article></article>
<div class="section"></div>→<section></section>
<div class="footer"></div>→<footer></footer>
にしたら、(しなくても)HTML5になります。
※文書構造がわからないので一部しか手をつけていませんが、概略はわかると思います。
なお、リキッドデザインですから、そのままスマホや幅広ディスプレイで利用できます。
<!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">
<!--
html,body{margin:0;padding:0;}
body{background-color:gray;}
h1,h2,h3,p{margin:0;line-height:1.6em;}
div.header,div.article{width:80%;margin:0 auto;background-color:white;min-width:640px;}
div.article{position:relative;min-height:600px;}
div.article div.section{margin-left:200px;}
h1{font-size:1.2em;text-align:center;}
div.loginForm,div.footer{width:194px;position:absolute;}
div.loginForm{top:56px;}
div.footer{bottom:0;}
div.loginForm h2{text-indent:-100em;background:url("image/top_log.png");margin-left:12px;height:65px;width:170px;overflow:hidden;}
div.loginForm form{font-size:14px;width:170px;background-image:url("image/line.png");padding:12px;}
div.footer address{position:relative;}
div.footer address:after{
content:url("image/bottom.png");
poition:absolute;bottom:-40px;left:12px;}
}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>ページタイトル</h1>
_</div>
_<div class="article">
__<div class="section">
___<h2>本文記事</h2>
___<p>ここには本文の記事を書く</p>
__</div>
__<div class="section">
___<h2>本文記事</h2>
___<p>ここには本文の記事を書く</p>
__</div>
__<div class="loginForm">
___<h2>ログイン</h2>
___<form action="./">
____<p><input type="t
補足
教えていただいた方法を試したのですが全く直っていません。 っと言うよりも表示され方が以前よりもおかしくなりました。 確かにどのブラウザでも同じように見えるようになるのは魅力的かもしれませんが、自分がこのように見えるようにしたいと思って、見せれないのは問題だと思います。 そもそも <<これでIEでも、他のブラウザと同じような表示になるはずです。 このように言われますが私は何度も言うようにIEで見たいのではなくネットスケープで見たいのです。 一番問題となっていた、はみ出た部分を自動拡大されて見えるように