CSSのレイアウトをダウンロードしました。
初心者ながら調べてやっていたのですが、2点ほど分からない点があります。
・ヘッダー、フッター含め全ての幅を画面いっぱいにしたい。
widthを100%にしてみたのですが、レイアウトが崩れるだけで画面幅いっぱいにはなりませんでした。
・3カラムの真ん中を固定幅900pxにしたい。
ご存知の方いらっしゃいましたらご教示ください。よろしくお願いします。
以下がCSSのソースです。
* { padding: 0; margin: 0; }
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 13px;
}
#wrapper {
width: 922px;
}
#header {
color: #333;
width: 900px;
float: left;
padding: 10px;
height: 200px;
background: #E7DBD5;
}
#navigation {
float: left;
width: 900px;
color: #333;
padding: 10px;
margin: 0px 0px 0px 0px;
background: #BD9C8C;
}
#leftcolumn {
color: #333;
background: #E7DBD5;
margin: 0px 0px 0px 0px;
padding: 10px;
height: 350px;
width: 200px;
float: left;
}
#content {
float: left;
color: #333;
background: #F2F2E6;
margin: 0px 0px 0px 0px;
padding: 10px;
height: 350px;
width: 460px;
display: inline;
}
#rightcolumn {
color: #333;
background: #E7DBD5;
margin: 0px 0px 0px 0px;
padding: 10px;
height: 350px;
width: 200px;
float: left;
}
#footer {
width: 900px;
height: 200px;
clear: both;
color: #333;
background: #BD9C8C;
padding: 10px;
}
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
No.2です。
absoluteのつづり間違えてましたね。
単純に、asideを広くしてそれに見合うようにsection sectionの右を空けるだけです。
下記はHTML4.01strictです。
★Another HTML-lint 5 ( http://www.htmllint.net/html-lint/htmllint.html# )
にてチェック済み--ご確認ください。
文書構造しか書いてないので、内容を内容を追加するのは楽だと思います。なによりもスタイルシートで好きなようにデザインできますし、デザインの自由度も高くなります。またSEOとしても万全です。
1) HTMLを作成する段階でデザインを考えたらダメです。
2) HTMLさえきちんと書けていたら下記サイトや例のようにデザインは自由になります。
3) HTML/CSSがシンプルでわかり易くなり、いずれか一方を見るだけでメンテナンスできます。
表示させてウィンドウ幅を大きくしても小さくしても中央に表示されるはずですし、スマホの640px幅でもよいはず。
ナビゲーションなどはHTMLもデザインもしてありません。ナビゲーションリストを様々にデザインしてみよう。
<!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{color: #333;}
div.header,div.nav,div.section,div.footer{
width:90%;max-width:900px;min-width:640px;
margin:0 auto;
padding:10px;
}
div.header{background-color: #E7DBD5;}
div.nav,div.footer{background-color: #BD9C8C;}
div.section{position:relative;}
div.section div.section{margin:0 200px;width:auto;min-width:0;background-color: #F2F2E6;}
div.section div.contentTable,
div.section div.aside{position:absolute;top:0;width:200px;height:100%;background-color: #E7DBD5;}
div.section div.contentTable{left:0;}
div.section div.aside{right:0;}
/* わかりやすいように色と高さを指定してみる。 */
div.header{min-height:300px;}
div.nav{height:30px;}
div.section div.section{min-height:600px;}
/* 希望によりサイズを変更 */
div.section div.section{margin:0 40% 0 20%;width:auto;min-width:0;background-color: #F2F2E6;}
div.section div.contentTable,
div.section div.aside{position:absolute;top:0;height:100%;background-color: #E7DBD5;}
div.section div.contentTable{width:19%;}
div.section div.aside{width:38%;}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>ページタイトル</h1>
_</div>
_<div class="nav">
__ナビ
_</div>
_<div class="section">
__<div class="section">
___[本文]
__</div>
__<div class="contentTable">
___[目次]
__</div>
__<div class="aside">
___[付録]
__</div>
_</div>
_<div class="footer">
__[文書情報]
_</div>
</body>
</html>
No.2
- 回答日時:
HTMLもCSSもとてもまずいので大変ですね。
HTMLのclass名やidは「DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」とされて(1999年)いて久しいのに・・。
それでは、HTMLを見なくては解らないという悲劇的なことになります。
HTMLがちゃんと書かれていれば、
body{color: #333;}
div.header,div.nav,div.section,div.footer{
width:90%;max-width:900px;min-width:640px;
margin:0 auto;
padding:10px;
}
div.header{background-color: #E7DBD5;}
div.nav,div.footer{background-color: #BD9C8C;}
div.section{position:relative;}
div.section div.section{margin:0 200px;width:auto;min-width:0;background-color: #F2F2E6;}
div.section div.contentTable,
div.section div.aside{position:abslute;top:0;width:200px;height:100%;background-color: #E7DBD5;}
div.section div.contentTable{left:0;}
div.section div.aside{right:0;}
だけで期待された配置になるはずですし、HTMLを見なくても解りますよね。先で目次(contentTable)を右に置こうが、下に置こうが自由自在です。
それでいて、幅広のディスプレイにもスマホのような狭いディスプレイでも中央に表示されますね。HTMLもスタイルシートを見るだけで想像がつきます。
すなわち
<body>
<div class="header">
</div>
<div class="nav">
</div>
<div class="section">
<div class="section">
</div>
<div class="contentTable">
</div>
<div class="aside">
</div>
</div>
<div class="footer">
</div>
</body>
まもなく勧告のHTML5でしたら
body{color: #333;}
header,nav,section,footer{
width:90%;max-width:900px;min-width:640px;
margin:0 auto;
padding:10px;
}
header{background-color: #E7DBD5;}
nav,footer{background-color: #BD9C8C;}
section{position:relative;}
section section{margin:0 200px;width:auto;min-width:0;background-color: #F2F2E6;}
section contentTable,
section aside{position:abslute;top:0;width:200px;height:100%;background-color: #E7DBD5;}
section contentTable{left:0;}
section aside{right:0;}
<body>
<header><!-- ヘッダ -->
</header>
<nav><!-- ナビゲーション -->
</nav>
<section><!-- 本文(章) -->
<section><!-- 本文(項) -->
</section>
<div class="contentTable">
</div>
<aside><!-- 本文と直接関係ない記事 -->
</aside>
</section>
<footer><!-- フッタ -->
</footer>
</body>
配置とは関係ありませんが、colorプロパティは継承されますから親要素に書けば良いです。background-colorは継承されませんがinheritで継承させることが出来ます。
また、基本的なことですがidはjavascriptやリンクのターゲットになるとか、よほどのことがない限り使わないほうが良いです。id(一意セレクタ)は詳細度が[0,1,0,0,]と高く、しかも一箇所にしか使えませんからスタイルシートが冗長になる原因になります。
いちいちidをつけなくても、クラスセレクタ、子孫セレクタや兄弟セレクタなどを上手に使いましょう。
巾とたかさの両方を固定してしまうと、目の悪いユーザーがフォントを大きくすると入りきらなくなっちゃいます。すくなくとも高さはフリーにしておきましょう。
この回答への補足
ORUKA1951さん
回答ありがとうございます。
実行してみたのですが、ちょっと私の想像するレイアウトとは違いました。
こちらのサイトのようなレイアウトにしたかったのですが。
http://www.yamaga-fc.com/
お手数をお掛けしますが、よろしくお願いします。
No.1
- 回答日時:
HTMLもお書きいただかないと、どこにどのCSSを割り当てているのかわかりません。
人間を見ただけでどのメーカーのどのPCを使っているかなんてのが分かる人は別ですが、
構造が分からなければ中身だけ伝えられても見えてこないものです。
CSSの内容も必要ですが、併せてHTMLの記述もお願いします。
この回答への補足
失礼しました。HTMLは下記のようになってます。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt …
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Fixed Width CSS Layouts - 3 Column - fw-36-3-col</title>
<link rel="stylesheet" type="text/css" href="main.css" />
</head>
<body>
<!-- Begin Wrapper -->
<div id="wrapper">
<!-- Begin Header -->
<div id="header">
This is the Header
</div>
<!-- End Header -->
<!-- Begin Navigation -->
<div id="navigation">
This is the Navigation
</div>
<!-- End Navigation -->
<!-- Begin Left Column -->
<div id="leftcolumn">
Left Column
</div>
<!-- End Left Column -->
<!-- Begin Content Column -->
<div id="content">
<a href="#">Download this CSS Layout</a>
</div>
<!-- End Content Column -->
<!-- Begin Right Column -->
<div id="rightcolumn">
Right Column
</div>
<!-- End Right Column -->
<!-- Begin Footer -->
<div id="footer">
This is the Footer
</div>
<!-- End Footer -->
</div>
<!-- End Wrapper -->
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- オープンソース cssで中央寄せ 1 2023/05/19 06:25
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- 防災 【自衛隊のPX品のPXってどういう意味ですか?】 3 2022/07/02 13:12
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS htmltとcssのコードで 1 2022/11/26 13:37
- 楽器・演奏 電子キーボードのCASIO Privia PX-S1100 とPrivia PX-S1000のどちら 1 2023/07/31 20:56
- その他(教育・科学・学問) 画用紙 26cm×37.5cmは 何px でしょうか? 何×何ですか? 1 2023/01/09 09:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
CSS、width100%でもできる余白
-
【CSSについて】リストをフロー...
-
HTMLのiframeの入れ子について
-
【HTML】【CSS】【Swiper】 元...
-
CSSでボックスのheightが0になる
-
定義リスト dl dd dt
-
テーブル内の文字が揃わない
-
ヘッダーの高さが合わない
-
定義リストに下線をつけたいと...
-
divで囲まれたpaddingの指定を...
-
div内に外部のurlを表示させたい
-
定義リストで先頭にアイコン
-
外側のdivの高さを入れ子のdiv...
-
デスクトップ用のWEBサイトをス...
-
透明divの下に長い余白ができて...
-
背景が下まで表示されないんです。
-
Webサイトretinaディスプレイのcss
-
枠線でメイン部分を囲み、フッ...
-
CSS リンクを枠で囲み背景色を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
css初心者 フレックスボックス...
-
表示倍率を変えるとレイアウト...
-
CSSがなぜかfont-sizeだけ効か...
-
CSS、width100%でもできる余白
-
W3Cのソースコードの検証サービ...
-
CSS:animation開始位置の設定
-
CSSで指定した背景画像にリンク...
-
<div>と<div>の間の10px程の...
-
余分な縦スクロールバーが出て...
-
CSSでボックスのheightが0になる
-
【CSS】ヘッダーの高さが不明の...
-
スクロールボックスを中央に配...
-
li 黒丸含んで移動する方法
-
border-style:solidで文字がずれる
-
【HTML&CSS】フッター下部の余...
-
Media Queries 4 で 非推奨とな...
-
初心者html・CSS ウィンドウを...
おすすめ情報