管理人

10月 112011
 

CSSの書き方には決まり事があります。
とはいってもいきなり複雑な説明をしても??だと思いますので、例を交えつつ簡単なものをいくつか紹介していきます。

後々CSSに慣れたら、ここで紹介したことより複雑(だけど便利)なことをご自分で勉強してみて下さい。

各部の名称

CSSでは、「どの要素のどのスタイルをどのように指定するか」というのを記述しています。

要素というのが、タグや後述するクラス・IDというもの。

どのスタイルをどのように指定するというのが、文字色を何にするか・文字の大きさをどのくらいにするか・枠線をどの太さで何色にするかなどといった具体的な指定を記述するもの。

大きく分けてこの2つから成り立っています。

CSS各部名称

CSSでは、要素部分ことをセレクタ、どのスタイルをどのように指定するという部分のことを宣言といいます。
宣言の中にはプロパティというものがあります。

プロパティはどのスタイルを変えたいのかという対象を記述する部分、値は具体的にどのような見た目に設定するかという値を記述する部分となります。

プロパティと値の間には:(コロン)を記述し、宣言の最後には;(セミコロン)を記述する必要があります。

また、1つのセレクタに対して複数の宣言を書くことが出来、これをまとめたものが宣言ブロックとなります。
宣言ブロックは{}で囲みます。

宣言が1つでも{と}で囲む必要有なので注意が必要です。

宣言のグループ化

CSSでは、上でふれたように複数の宣言をまとめて宣言グループとして記述することが可能です。

1つのセレクタに対し複数の宣言をしたい時にグループ化してしまいましょう。
グループ化の方法としては、{と}で複数の宣言を囲むだけです。

以下に、同じ意味となる2つのサンプルを挙げてみます。

例)リンクの色を赤くして、リンクの下線をなくす。

記述例1[グループ化しない場合]
a {color:red;}
a {text-decoration:none;}
記述例1[グループ化した場合]
a {
color:red;
text-decoration:none;
}

セレクタの種類

CSSのセレクタには、大きく分けて3種類あります。

  1. タグ
  2. クラス
  3. ID

タグは普通のh1やa等のタグのこと。セレクタにタグを書くと、そのCSSが適用される範囲にあるそのタグ全てに影響します。
クラスとIDは特定の箇所にのみその定義を適用したい場合に使用します。

以下に例を示します。

記述例[HTML]
<body>
<h1 id=”midashi”>ページタイトル</h1>
<p>
クラスもIDも指定されていないpタグ。この中の文字は緑色になります。
</p>
<p class=”blue”>
クラス1回目。この中の文字は青色になります。
</p>
<p class=”blue”>
クラス2回目。この中の文字も青色になります。
</p>
</body>
記述例[CSS]
p {color:green;}
.blue {color:blue;}
#midashi {color:white; background-color:black;}

上の記述例の場合、まずpタグの中身は全て緑色文字になります。
midashiというIDを指定されたh1タグは、黒色背景・白色文字になります。
blueというクラスを指定されたpタグのみは、青色文字になります。

ここで気になるのがクラスとIDの違いです。
一見差が無いように見えるのですが、大きく違う点があります。
それは、IDは1ページ内に1回しか使えないのに対しクラスはページ内に何回も使うことが出来ます
その為、IDはレイアウト用や絶対に1回しか出てこないもの(タイトルなど)に使用し、見た目を変えるのには主にクラスを使います。

よく分からないうちは、全てクラスにしておけば大きな問題は無いので安心です。

10月 112011
 

CSS(Cascading Style Sheets)とは、ホームページの見た目を定義する為の仕様です。

昔はHTMLに色やフォント等の見た目を決める指定を直接書いていたのですが、本来HTMLは構造と「文章・画像・数値」等の伝えたいものを書くためのものです。
その為、最近は「見た目はCSSに任せよう」というのが当たり前になっています。

今からホームページ作成を勉強する皆さんは、見た目はCSSで記述する癖をつけておきましょう。

CSSの基礎

CSSの記述は、大きく分けて3種類あります。

  1. タグの属性としてCSSを記述する
  2. HTMLのhead内にまとめて記述する
  3. HTMLファイルとは別のCSSファイルにまとめて記述する

この3つは用途に応じて使い分けると、ホームページ作成がぐんと楽になります。

1)タグの属性としてCSSを記述

[用途]ここ一箇所でしかその指定をしない場合に使う。
記述の仕方は、タグ内にstyle=”CSS指定”と書きます。
このCSS指定部分は、CSSリファレンスページで色々紹介しています。

記述例
一回に限り一部分の文字の色を緑にする
HTMLファイル内に記述
<span style=”color:green;”>ここが緑にしたい文字</span>

このように、HTMLファイル内の一部の見た目を簡単に変えることが出来ます。

一番手軽ですが、繰り返し出てくる要素の見た目を皆同じように変更するのには向いていません。
(出てくるたびに同じ記述をしなければいけないので。)

2)HTMLのhead内にまとめて記述

[用途]記述したページ内全てに適用する見た目指定を記述したい場合に使う。
記述の仕方は、<head>~<head>の間に

<style type=”text/css”><!–
CSS記述
–></style>
と書きます。

このCSS指定部分は、CSSリファレンスページで色々紹介しています。

記述例
ページ内の全てのリンクの文字色を赤くする
HTMLファイル内に記述
<head>
…中略…
<style type=”text/css”><!–
a {color:red;}
–></style>

…中略…
</head>
<body>
<p>
日本における2大検索エンジン<a href=”http://www.yahoo.co.jp”>Yahoo</a>と<a href=”http://www.google.co.jp”>Google</a>。
</p>
</body>

上の例だと、YahooとGoogleの2箇所にリンクを張っていますが、Yahoo・Googleの両方とものリンク文字色が赤くなります。
もし1)の方法で同じことを再現しようとすると、各aタグの中にstyleを書かなければいけなくとても面倒です。

このように、記述したHTMLファイル内に出てくる全ての特定タグ等の見た目を一気に変えることが出来ます。
その1ページでしか使わないような見た目を指定したい時はこの方法を使うといいでしょう。

3)HTMLファイルとは別のCSSファイルにまとめて記述

[用途]ホームページ内の複数ページで何回も同じ見た目を指定したい時に使う。

これは、xxx.css(xxx部分は任意の半角英数名)のテキストファイルを作って、その中にCSS記述をしていくというものです。
(2)の例で出ていたa {color:red;}のような記述をファイル内に必要なだけ書きます。
ただし、その指定を適用したいページはhead部でCSSを読み込むという記述をしなければなりません。

なお、CSS指定部分はCSSリファレンスページで色々紹介しています。

記述例
ホームページの全ページにある全てのリンクの文字色を赤くする
HTMLファイル内に記述
<head>
…中略…
<link rel=”stylesheet” href=”style.css” type=”text/css” />
…中略…
</head>
<body>
<p>
日本における2大検索エンジン<a href=”http://www.yahoo.co.jp”>Yahoo</a>と<a href=”http://www.google.co.jp”>Google</a>。
</p>
</body>

CSSファイル内に記述(ファイル名「style.css」)

a {color:red;}

上の例では、head部の赤字の部分でstyle.cssというファイルを読み込んでいます。それにより、style.cssというCSSファイル内に記述したCSS指定をそのページに適用することが出来ます。

この場合、複数ページの見た目に関して一箇所で指定できるのがメリットです。つまり、CSSファイルを変更すれば、そのCSSファイルを読み込むよう指定した全ページの見た目を一気に変更出来るということです。
メニューやタイトル等、ホームページ内で見た目を統一したいものをCSSファイルにまとめて書いておくといいでしょう。

10月 112011
 

ホームページにランキングを載せたいとか数字の見出しつきで手順を載せたい項目をリスト表示でずらっと並べたいという場合に使うのがこのリストタグ。
縦に何かをずらっと並べたい時に使います。

リストとは

リストは何かをずらっと並べて表示する時に使うもののこと。
リストは大きき分けて以下の3種類あります。

  1. ul・や■等のマークが左端につくリスト
  2. olアラビア数字(1,2,3等)やローマ数字(I,II,III等)等の数字が左端につくリスト
  3. dl見出しとその説明を記述する場所が1セットになったリスト

勘の良い人なら気付いたかもしれませんが、上に3つ挙げた時に使われているのがリストです。
上のではolを使っています。左端に数字が表示されていますよね?
こんな風にリストでは、ただ文章を羅列するよりもすっきりと伝えたいことが表示できます。
効果的に使って、ページ内にメリハリをつけましょう!

マーク付きリスト[<ul><li></li></ul>]

ホームページにマーク付きリストを表示する時はulタグliタグを使用します。

以下灰色背景がサンプルソース薄緑背景が実際の見た目

<ul>
<li>セブンイレブン</li>
<li>ローソン</li>
<li>ファミリーマート</li>
</ul>
  • セブンイレブン
  • ローソン
  • ファミリーマート

3行のリストが表示されました。コンビニの名前が左側に・マーク付きで並んでいるはずです。
では、ここで使われている各タグについて説明していきます。

ulタグ
<ul>と</ul>のセットのこと。マーク付きリストを使いたい時には必ず書かなきゃいけないものと覚えておいてください。
liタグ
<li>と</li>のセットのこと。liタグは1項目をあらわしています。つまり、ulタグ内に<li>と</li>のセットが1つあれば1項目のマーク付きリスト、<li>と</li>のセットが2つあれば2項目のマーク付きリストということになります。
項目数に制限はありませんが、あまりに多すぎる見づらいので適度に分類しましょう。
実際にリストとして表示したい文字・画像などはこのliタグ内に書きます。
なお、liタグは<ul>と</ul>の間、又は以下で説明する<ol>と</ol>の間にしか書けません。

また、左のマークは「黒丸(・)」の他にも「白丸(○)」「四角(■)」等色々指定できます。
詳しくは、左メニューCSSリファレンスにあるリスト装飾をご覧ください。

数字付きリスト[<ol><li></li></ol>]

ホームページに数字付きリストを表示する時はolタグliタグを使用します。

以下灰色背景がサンプルソース薄緑背景が実際の見た目

<ol>
<li>セブンイレブン</li>
<li>ローソン</li>
<li>ファミリーマート</li>
</ol>
  1. セブンイレブン
  2. ローソン
  3. ファミリーマート

3行のリストが表示されました。コンビニの名前が左側に数字付きで並んでいるはずです。

では、ここで使われている各タグについて説明していきます。
…と言いたい所ですが、実はulタグをolタグに書き換えればマークが数字になるだけです。
ですので、タグの説明はulタグの説明中のul部分をolに読み替えて見てください。

また、左の数字は「アラビア数字」の他にも「ローマ数字(I,II,III,…)」「漢数字(一,二,三,…)」「アルファベット(A,B,C,…)」「ひらがな(あ,い,う,…)」等色々指定できます。

詳しくは、左メニューCSSリファレンスにあるリスト装飾をご覧ください。

定義リスト[<dl><dt></dt><dd></dd></dl>]

ホームページにあるものの名前とその説明といった風なセットで表示したい時はdlタグdtタグddタグを使用します。

以下灰色背景がサンプルソース薄緑背景が実際の見た目

<dl>
<dt>セブンイレブン</dt>
<dd>日本のコンビニの草分け的存在かつ最大手のコンビニエンスストアチェーン。7と11を組み合わせた看板が目印。</dd>
<dt>ローソン</dt>
<dd>日本国内店舗数第2位のコンビニエンスストアチェーン。青い看板が目印。生鮮コンビニ「STORE100」や健康志向コンビニ「ナチュラルローソン」なども展開中。</dd>
<dt>ファミリーマート</dt>
<dd>日本国内店舗数第3位のコンビニエンスストアチェーン。一般的な店舗は緑の看板が目印。一部お洒落なデザインの店舗も。</dd>
</dl>
セブンイレブン
日本のコンビニの草分け的存在かつ最大手のコンビニエンスストアチェーン。7と11を組み合わせた看板が目印。
ローソン
日本国内店舗数第2位のコンビニエンスストアチェーン。青い看板が目印。生鮮コンビニ「STORE100」や健康志向コンビニ「ナチュラルローソン」なども展開中。
ファミリーマート
日本国内店舗数第3位のコンビニエンスストアチェーン。一般的な店舗は緑の看板が目印。一部お洒落なデザインの店舗も。

3つのコンビニに関して、店舗名とその説明が表示されているかと思います。こんな感じで、用語説明とかリンク集等にも使えるタグです。写真やイラストのギャラリーで、dt部分に画像・dd部分に紹介文を書いても面白いかもしれません。
では、ここで使われている各タグについて説明していきます。

dlタグ
<dl>と</dl>のセットのこと。定義リストを使いたい時には必ず書かなきゃいけないものと覚えておいてください。
dtタグ
<dt>と</dt>のセットのこと。dtタグには説明対象になる文字・画像を書けば良いと思えば簡単かもしれません。ここで注意したいのは、dtタグとddタグは必ずセットで書きましょうということ。用語集で、「用語が書いてあるのに説明文が無い」とか「説明文があるのに用語が見当たらない」なんて変ですしね。

なお、dtタグは<dl>と</dl>の間にしか書けません。

ddタグ
<dd>と</dd>のセットのこと。ddタグには説明文・紹介文等のdt要素に対する補助的な役割のものだと思えば簡単かもしれません。同じく注意事項としては、dtタグとddタグは必ずセットで書きましょうということです。

なお、ddタグは<dl>と</dl>の間にしか書けません。(間違ってdtタグの中にddタグを書かないようにご注意を。)

10月 112011
 

ホームページに一覧表を載せたいとか写真をアルバム風にずらっと並べたいという場合に使うのがこのテーブルタグ。
オフィスのエクセルの様にの概念がある表示形式のことです。

テーブルは、限られたスペースに効果的かつ見やすく表示させるのに重宝するので、是非使いこなしていきましょう。

テーブルとは「表」のことです。
エクセル等の表計算ソフトを思い浮かべれば分かりやすいと思います。
縦横の格子(網目)状に区切られた1つ1つのマスに、文字や画像を表示させることが出来るということになります。

まず、「行」と「列」の考え方から。

行(row)とは横のまとまりのこと。
列(col)とは縦のまとまりのこと。

つまり↓の様な感じです。
テーブル概要

次に、実際のサンプルを見つつ具体的にどう書けば良いのかを説明していきます。

ホームページにテーブルを表示する時はtableタグtrタグtdタグを使用します。

以下灰色背景がサンプルソース薄緑背景が実際の見た目

<table>
<tr>
<td>1行目・1列目</td>
<td>1行目・2列目</td>
<td>1行目・3列目</td>
</tr>
<tr>
<td>2行目・1列目</td>
<td>2行目・2列目</td>
<td>2行目・3列目</td>
</tr>
</table>
1行目・1列目 1行目・2列目 1行目・3列目
2行目・1列目 2行目・2列目 2行目・3列目

ちょっと分かりにくいので、区切りの線を付けてみるとこんな感じです。

1行目・1列目 1行目・2列目 1行目・3列目
2行目・1列目 2行目・2列目 2行目・3列目

2行3列のテーブルが表示されました。
ではこれから、tableタグ、trタグ、tdタグについて個別に説明していきます。

tableタグ
<table>と</table>のセットのこと。テーブルを使いたい時には必ず書かなきゃいけないものと覚えておいてください。
trタグ
<tr>と</tr>のセットのこと。trタグは1行をあらわしています。つまり、tableタグ内に<tr>と</tr>のセットが1つあれば1行のテーブル、<tr>と</tr>のセットが2つあれば2行のテーブルということになります。
行数に制限はありませんが、あまりに多すぎる(100行以上とか)とページの表示が遅くなるので、多くなりそうな時はページをいくつかに分けるなどして調整しましょう。
なお、trタグは<table>と</table>の間にしか書けません。
tdタグ
<td>と</td>のセットのこと。tdタグは1マス(1セル)をあらわしています。つまり、trタグ内に<td>と</td>のセットが1つあれば1行の中に1マス(1列)あるテーブル、<td>と</td>のセットが2つあれば1行の中に2マス(2列)あるということになります。
実際にテーブル内に表示したい文字・画像などはこのtdタグ内に書きます。
なお、tdタグは<tr>と</tr>の間にしか書けません。

さて、このテーブルではエクセルにある「2つの行を繋げる」とか「2つの列(マス)を繋げる」ということも出来ます。
その方法は、tdタグ内にrowspan属性やcolspan属性を記述するというものです。

早速、具体例を見て見ましょう。

<table>
<tr>
<td rowspan=”2″>1~2行目・1列目</td>
<td>1行目・2列目</td>
<td>1行目・3列目</td>
<td rowspan=”2″>1~2行目・4列目</td>
</tr>
<tr>
<td colspan=”2″>2行目・2~3列目</td>
</tr>
</table>
1~2行目・1列目 1行目・2列目 1行目・3列目 1~2行目・4列目
2行目・2~3列目

2行4列で一部のマスが結合されたテーブルが表示されました。
ではこれから、rowspan属性、colspan属性について個別に説明していきます。

rowspan属性
行を結合する属性。rowspan=”2″の“と”に括られた数字(この場合は2)の数の行数を結合する。
(rowspan=”2″なら2行、rowspan=”5″なら5行を結合)
colspan属性
列を結合する属性。colspan=”2″の“と”に括られた数字(この場合は2)の数の列数を結合する。
(colspan=”2″なら2列、colspan=”5″なら5列を結合)

以上色々説明してきましたが、テーブルについては自分で色々いじってみるのが一番

上のサンプルをコピー&ペーストして、行を増やしたり列を増やしたり、結合を試してみたりしてみましょう。
いじっているうちに、なーんとなく理解できてくるはずです。

なお、上の例みたいにテーブルに線を付けたい場合は、左メニューCSSリファレンスにあるボーダー/枠線の説明と、コピペ用サンプル集にあるテーブルサンプル集をご覧ください。

10月 112011
 

ホームページが本やテレビと一番違うのが、リンクという仕組みがあることです。
文字や画像をクリックすると、新たなページを表示させることが出来る仕組みのことです。

自分のホームページ内を繋いだり、他のサイトを紹介し誘導したり出来るリンクについて説明します。

ホームページにリンクを表示する時はaタグを使用します。

以下灰色背景がサンプルソース薄緑背景が実際の見た目

<a href=”http://www.yahoo.co.jp/” title=”Yahoo!JAPAN”>Yahoo</a>

リンクつきの文字列が表示されました。上の「Yahoo」という文字をマウスでクリックすると、Yahooのサイトが表示されます。

href属性
href=”~”のこと。この“と”の間リンクしたいURLやパスを書きます。
上の例では、http://www.yahoo.co.jp/というURLのサイトへリンクするということになります。
相対パスでの自分のホームページ内のリンクももちろん可能。
パスについての説明は絶対パスと相対パスのページをご覧ください。
title属性
title=”~”のこと。この“と”の間に、リンク文字の上にマウスカーソルを合わせた時に表示させる文字を書きます。
リンク文字を略称にした時に正式名称をtitle属性に書く、英単語名のリンク文字のtitle属性に日本語訳を書く等という時に使用します。(例:「bbs」というリンク文字のtitle属性に「掲示板」と書く。)
target属性
上のサンプルでは記していませんが、リンク先ページを新たなウィンドウで開きたい時等に使用。
<a href=”http://www.yahoo.co.jp/” title=”Yahoo!JAPAN” target=”_blank”>Yahoo</a>

ただし、今はFireFoxやChrome、そしてIE7・IE8等の「タグブラウザ」というブラウザが主流の為、勝手に新たなウィンドウが開いてしまうtarget属性は使わない方がよいという流れになってきています。(新しいタブで開きたい人は、自分で「新しいタブで開く」を選択するので。)
また、XHTMLでは推奨されていないタグなので、どうしてもの時以外は使わない方が良いかと思います。