カテゴリー
HTML

htmlのサイトを作ろう

この章ではまとめとしてHTMLのサイトを作ります。463464465466467468469 470471472結果は以下の通りです。473 521では初めにメニューの作り方について説明します。
メニューはリストで作成するのでulとliで作成します。
ulとli にCSSを施さないと以下の状態です。474
ここではマークは必要ないので、list-style-typeプロパティの値をnoneに指定します。476 結果は以下の通りです。477 次にこのメニューを横に並べますので、displayプロパティの値を inlineに指定します。
displayプロパティは要素の表示形式を指定する際に使用します。inlineには改行を外す機能があります。478 結果は以下の通り改行が外れたので、横一列に並びます。479 次に文字の下にある線を削除しますので、text-decorationの値をnoneに指定します。481 結果は以下の通りです。482 次はこのメニューにパティングを設定します。483 結果は以下の通りです。484
次はulにbackground-colorやborderの設定を施します。485 結果は以下の通りです。486 次にliにpaddingやborderに設定を施します。487 結果は以下の通りです。488 次にliのaのみにcolorを設定します。489 結果は以下の通りです。490 このリストにリンクを付けることでお問い合わせページなどに飛ばすことが出来ます。491492 例えばお問い合わせページをクリックすると次のお問い合わせページに移ることが出来ます
(お問い合わせページのHTMLは最後に載せています)。493 以下の箇所でimgにマージンやfloatを設定しています。494 以下の通り、画像と文字の間の距離を設定します。495 次にh3に以下の処理を施します。496 497ここで大事なのは498です。
この例の499500と書いても同じです。
つまり、imgに501を指定しているので、回り込みを解除するには502もしくは503と書きます。
504もしくは505を指定しないとh3が回り込んでしまうので以下の通りレイアウトが崩れます。506508

507509補足ですが、お問い合わせページのHTMLは以下の通りです。510511512513514515

522結果は以下の通りです。517

518519左右のマージンにautoを設定しないと以下のように内容が真ん中にはきません。520

カテゴリー
HTML

ページのレイアウトについて知ろう

この章ではページのレイアウトについて説明します。
最初に何もレイアウトを施していない例を書きます。436437438439440 結果は以下のようになります。441 HTML文書の中に442と言うタグがありますが、divタグはそれ自体は特に意味を持っていませんが、443で囲んだ部分をブロックとみなして、CSSを適用するために使います。
この例では複数の箇所でdivタグを使用していますが、そこを1つのブロックとみなして、classや idで名前を付け、ブロックごと左や右に寄せたり、色を付けたりします。
例えば以下のようにclassにsidemenuという名前が付いていますが、この箇所をCSSで widthやbackground-colorを指定しています。445 この例ではsidemenuクラスに対して以下の箇所でCSSを設定しています。446 先ほどの例のCSSの意味はこの章の後半で説明します。
では次はレイアウトを設定します。ここでは2段組みの例を書いてみます。2段組みとは内容(コンテンツの中身)のあるメイン枠とサイドメニューがあるサイド枠の2つの枠を作るレイアウトです。
では例をみてみましょう。447448449450451462 結果は以下の通りです。452 CSSにfloatと言うプロパティがありますが、このプロパティを使用して2段組みにします。
floatプロパティは、画像などの要素を左か右に配置する時に使います。 それに続く文書などの内容は、その反対側に配置されます。この例では以下の箇所でfloatを設定しています。453 floatプロパティには以下の値を設定します。454 この例ではsidemenuクラスを455で左に配置し、contentsクラスを456で右に配置しています。
floatを使って内容を右や左に配置したら、floatで生じたテキストなどの回り込みを解除するclearプロパティを使用する場合があります。457 この例ではfooterクラスで回り込みを解除しています。
このclearを入れないとレイアウトが崩れる場合があるので気を付けてください。
以下は「clear:both;」を書かない例ですがfooterのブロックが上のブロックに回り込んでしまっていることが分かります。458
次はwidthについての注意点を書きます。
〇メニューと本文をまとめるmainクラスでwidthを700pxにして、sidemenuクラスでwidth を150pxにして、contentsクラスでwidth を550pxにしていますが、mainクラスのwidthが700pxなのにcontentsクラスのwidth を555px, sidemenuクラスのwidth を155pxにしたりすると700pxを超えてしまうのでレイアウトが崩れます。
次は以下の箇所の説明をします。459 「*」はすべての要素に同じスタイルを適用させたいときに使います。
つまり、460をすべての要素に適用するということです。
例えばh1~6や pはブラウザのデフォルトでmarginやpaddingが設定されているので、これ0に設定します。
ブラウザがデフォルトで持つスタイルシートの余白とパディングがそれぞれのブラウザで異なるため、配置と関係ある要素についてはリセットする必要があります。
「*」を使った先ほどの設定をしないと以下のように余白が生まれます。461

カテゴリー
HTML

thとtdにwidthとheightを設定しよう

この章ではthとtdにwidthを設定する方法について説明します。
今まではtable要素にwidthを指定していましたが、widthは td や thにも設定できます。
widthに入力できる値はpx,pt,pc,ex,em,mm,cm,inや%です。th,tdに%を使用するとそれはテーブル全体の横幅に対する割合になります。
また、td,th,tableのCSSに429のように430を使用すると背景色を設定することが出来ます。
では例をみてみましょう。431432433434 結果は以下の通りです435

カテゴリー
HTML

border-collapseプロパティについて知ろう

この章では隣り合うセルのボーダーを重ねたり、離して表示するborder-collapseについて説明します。414 では例をみてみましょう。415416417418 table要素のCSSに419を指定すると隣接するセルのボーダーを重ねて表示します。
上の例は隣り合うセルを重ねていますが、重なり合う箇所は420の中でいずれかの設定された「幅、スタイル、色」が優先されて表示されることになります。422423424425426 結果は以下の通りです。427 例ではthとtdのボーダーが重なっていますが, 428が3pxで同じなので、ボーダーの種類で決めるのですがthのsolidのほうが優先順位が上なのでthのボーダーが優先されます。
thとtableのボーダーが重なっているところは色だけが違うので優先順位4の法則によりth要素のほうが優先順位は高くなります。
tdとtableのボーダーが重なっているところは太さが同じでスタイルと色が違いますが、solidのほうが優先順位が高いので、tableのスタイルが優先されます。

カテゴリー
HTML

cellspacing属性について知ろう

この章ではcellspacing属性について説明します。
cellspacing属性はセル同士の間隔を指定する属性です。
では例をみてみましょう。405406407408 セル同士の間隔を設定するためにはtable要素の属性にcellspacingを指定します。409 値に”0″を指定するとセル間の間隔は無くなりますが、以下の例のように1以上の数値を入れるとセル同士の間隔が広がります。
410の場合には以下の通り、セル同士の間隔は無くなります。411 以下の例は412の場合の表示結果です。
セル間に間隔が生まれているのが分かります。413

カテゴリー
HTML

テーブル内のボーダーを設定しよう

この章ではテーブル内のボーダーの種類、色、幅を設定する方法について説明します。
では例をみてみましょう。400 401 402 403 このCSSではth,td,tableタグのボーダーを設定しています。
結果は以下のようになります。404

カテゴリー
HTML

セル内にvertical-alignの設定しよう

この章ではテーブルのセル内の文字の縦方向の位置を指定するvertical-alignについて説明します。
vertical-alignはすでに学習済みですが、復習してみましょう。
vertical-alignでは行内のテキストの縦方向の位置を指定できます。
セルの場合は以下の3種類の値を使用します。395 では例をみてみましょう。396397398 結果は以下の通りです。399

カテゴリー
HTML

セル内にtext-alignの設定しよう

この章ではセルのCSSにtext-alignプロパティを追加してみましょう。
text-alignプロパティは「ブロック要素の中の文字や画像」や「セルの中のインライン要素である文字や画像」を指定した位置に行揃え(水平方向)します388では例をみてみましょう。389390391392 結果は以下のようになります。393 CSSのthとtdに394を設定したことにより、thタグとtdタグ内の文字がすべて右寄りになっています。

カテゴリー
HTML

セル内でpaddingを設定しよう

この章ではセル内でのpaddingの設定方法について説明します。
paddingはpx,pt,pc,mm,cm,%などの数値で書きます。
では例をみてみましょう。382383384385 386387上の印を付けた箇所がpaddingですが、thとtdに対してpaddingを設定しています。もちろん、印を付けた箇所以外のthとtdにもpaddingが設定されています。

カテゴリー
HTML

テーブル(table)の中のセルを結合しよう(colspan,rowspan)

この章ではテーブルの中のセルを結合する方法を説明します。
横方向のセルを結合するのか、縦方向のセルを結合するのかで書き方が違います。368 =>横方向のセルを結合します。
ダブルクォートの中には結合したいセルの横方向のセルの数を指定します。
例えば横方向の3つのセルを結合したい場合369と書きます。370 =>縦方向のセルを結合します。
ダブルクォートの中には結合したいセルの縦方向のセルの数を指定します。
例えば縦方向の3つのセルを結合したい場合371と書きます。
まず初めにcolspanの例を見てみましょう。372373 結果は以下の通りです。
上段の横方向の3つのセルが結合しているのがわかります。374 次はrowspanの例を見てみましょう。
rowspanは縦方向のセルを結合します。
375376
結果は以下の通りです。
縦方向の3つのセルを結合しています。377 次の例は縦の結合と横の結合が合わさったものです。378379380 結果は以下の通り、縦2個分、横2個分を結合しています。381