
教えてください。
コーダー初心者です。
タイトルどおりフッターで指定したクリアーが聞きません。
上ヘッダーで、左にナビ、右にコンテンツ
右コンテンツ内に右幅いっぱいの文章をその下に右コンテンツを二段組した文章をいれました。
フッターは現在右コンテンツ側によってしまい。
左ナビしたまできてくれません。
右コンテンツを幅一列で組んでいたのですが、二段組のレイアウトを追加指定したあたりから
フッターがおかしくなりました。
原因は何でしょうか?
教えてください。
下記はhtmlです。
<div id="wrapper"><!--全体囲み -->
<div id="head">ヘッド</div>
<div id="left">ナビ</div>
<div id="right">コンテンツ<!--右側 -->
<div id="section01">
<div class="section01" >
横一文章
</div>
<div class="section01" id="Benefits">
右文章
</div>
<div class="section01" id="Lose">
左文章
</div>
</div><!--右囲み終わり -->
<div id="footer"><!--フッター -->
</div><!--フッター終わり -->
</div><!--wrapper終わり -->
</body>
</html>
No.3ベストアンサー
- 回答日時:
たとえばちょっと複雑・・でも、よくありそうなHTML/CSSを考えて見ます。
右がHTMLを文書構造にしたがってマークアップしたもの。左がスクリーン用に見栄えを整えたもの。(印刷には適さないので、印刷用スタイルシートは別途用意するか、CSSのmediaをscreenに限定する。)
HTMLは(画像もスタイルシートも読まない)テキストブラウザや読み上げブラウザ、そして検索エンジンを想定してきちんと文書構造にしたがってマークアップします。
そのうえでスタイルシートでは横幅の広い(広すぎる?)ディスプレイの特性を生かして、左のようにデザインしていく。
floatを本文内で使用するとき・・結構多いと思う・・ので、他では使わないほうが無難です。

No.2
- 回答日時:
HTMLのマークアップでIDやCSS名に
id="wrapper",id="head",id="left",id="right,
id="section01",class="section01"なんて???不適切。先の回答でも書きましたが仕様書でも明確に
【引用】____________ここから
こういった使用法は避けるべきである。 文書作成者が定めたクラス名では、意味を理解してもらえない場合もある。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[セレクタ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2 … )]より
本題ですが、その文書の説明を聞く限りマークアップは
<h1>見出し</h1>
<div class="nav"></div>
<p>・・・</p>
<p>・・・</p>
<div class="two_columns">
<div class="column c1"></div><!-- class名の先頭は数字はだめ -->
<div class="column c2"></div>
</div>
<div class="footer"></div>
だけでよさそう。CSSも
div.nav{float:left;width:20%;min-height:400px;}
div.two_columns{position:relative;}
div.two_columns div.column{width:40%;}
div.twocolumns div.c2{position:absolute;top:0;right:0;}
div.footer{clear:left;}
だけでよい。
ありがとうございます。
もう一度組みなおしてみます。
独学なのですが、参考にした本がまずかったでしょうか?
基本はその本からなのですが、
どうしても、clear:bothの意味が飲み込みきれません。
(意味はわかるのですが)
No.1
- 回答日時:
独学でWEBサイトを作成している者です。
HTML階層よりもむしろCSSと合わせて公開して頂けるとありがたいですが、
1.(X)HTMLはどのタイプをお使いですか?
2.DTD(DOCTYPE宣言)は、正しく、システム識別子まで書いていますか?
1,2について
(例)HTML4.01 Strict:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">*1←この行が識別子
(例)XHTML1.0 Strict:
<?xml version="1.0" encoding="UTF-8"?>*2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt …
*1:HTMLに於いてはシステム識別子は省力出来るが色々と不具合が有るので
正式の記述をして下さい。
*2:XHTMLに於いてXML宣言を省ける条件は、XMLで基本文字コードである
UTF-8もしくはUTF-16を用いた場合のみ省略可ですが、
使用する事推奨されています。
*3:XHTMLに於いてはシステム識別子を省略できませんのでしっかり記述して
下さい。
3.XHTMLに於いては<html>にxml名前空間を宣言する。(X)HTMLでは
言語宣言をする。
<html lang="ja">*4
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">*5
*4:HTMLに於いてはこれです(日本語使用宣言)
*5:XHTMLでは、xmlns(xml name space:xml名前空間)とxml:langとlangを
併用する事を推奨されています。
4.CSSを使う場合は<head></head>内部の<title>の前で
<meta http-equiv="Content-type" content="UTF-8">*6
<meta http-equiv="Content-Style-Type" content="text/css">*7
*6:HTML、XHTMLどちらでも必要な文字コード宣言です。
(特にCSSとは無関係ですがXHTMLに於いてはXML宣言と合わせて必要です)
*7:これを宣言しないとCSS反映されませんので。
<link rel="StyleSheet" type="text/css" href="./***.css" media="all">*8
*8:これは外部スタイルシートを外部参照してHTMLに反映させるものです。
(XHTMLに於いては<head></head>内部での記述、タグへの直接のstyle=""記述は
非推奨ですので、外部参照しましょう)
基本事項はここまでです。まぁ普通に記述してある物として…
<div id="footer">でしっかりfloat解除してますか?
現在何をどうfloatしていて解除には何を使っているかが分かりません。
解除には
float: none;(このボックスをフロートしない)
clear: left or right or both;(leftのみ指定の場合はleft、rightのみ指定の場合はright
全解除(左右解除)はboth)ちなみにclear: none;は解除しないという命令
ちゃんとfooter要素にwidth: **;指定してますか?
width指定というのはしていないとfloat、clearの設定が出来ません。
恐らく解除も!?
どうでしょうか?とりあえず考えられる事は書いておきました。
どれにも当てはまらない場合はまた補足でも頂ければと思います。
回答ありがとうございます。
以下CSSですが長文になりますので
省略しています。
全体をwrapperで囲み
head
ナビがleft
コンテンツがright
です。
コンテンツのright部分の.section01を
横一の文章のところを途中レイアウト変更のため
#Benefitsと#Loseに分けて
二段組にしようとしてから。
フッターが変になりました。
xhtmlの基本事項は手打ちせず。既存のコーディングを使用しています。
フッターの幅の指定しているのですが…
なにがおかしいのでしょうか?
引き続きご教授いただけるとたすかります。
以下CSS-----------------------------------------------------
body { }
#wrapper { }
#head { }
#right { }
.section01 { }
#Benefits{
float:left;
width:273px
}
#Lose{
float:right;
width:273px
}
.section02 {
}
#left {
}
#footer {
clear: both;
width: 800px;
background-color: #000066;
padding:1px;
}
#footer p {
font-family: "MS Pゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
font-size: 1em;
font-weight: bold;
color: #FFFFFF;
text-align: center;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
【html&css】太さの違う2本線の...
-
hタグの右横に画像を表示
-
html の divとtable の役割
-
divを横に並べる方法
-
ヘッダーとフッターだけ背景を...
-
1時間30分を簡単に表したいで...
-
HTML属性での「""」 「''」違い
-
htmlの見出しタグ(<h1>)の次...
-
SEO的に最も良いh1~h3指定順位...
-
ローカルとWeb上で見え方が違う...
-
h1を親要素の縦中央、画像の横...
-
画面を拡大すると横幅が切れる
-
検索して出てくるHPのコメント...
-
htmlの文字が縦書きになる
-
CSSのクラス名・ID名の指定でワ...
-
含む含まないという概念自体の...
-
リンクを知らせる手のマークが...
-
FC2ショッピングカートのカスタ...
-
<h1>、<h2>と<p><div>の行間を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlのolやulなどlistにtitleや...
-
複数のボタンを等間隔に、かつ...
-
HTML属性での「""」 「''」違い
-
html の divとtable の役割
-
div要素が重なってします
-
ヘッダーとフッターだけ背景を...
-
スペースを使わず文字位置を揃...
-
ブログのサイドバーが下にくる
-
1時間30分を簡単に表したいで...
-
<div id="container">の使いか...
-
min-heightとheightの違いについて
-
h1のテキストサイズよりh2の方...
-
<!-- #BeginLibraryItemとは
-
body>div{}の意味を知りたい
-
画面を縮小するとカラムが落ち...
-
divとpの使いわけ
-
hタグの右横に画像を表示
-
ヘッダーを左右に二分割する方...
-
html divボックスの入れ子で中...
-
セクションをdivで囲むと見出し...
おすすめ情報