Home > 4 月, 2008

2008.04.21

テーブルの文字の配置memo 2

前回クラスセレクタ「.tbblue」で作成したテーブルのテーブルヘッダーが必要ない場合はHTMLの「th」を「td」に変更すると以下のようになります。
CSSは前回同様です。

/*てーぶるあお線tbblue*/
.tbblue {margin:10px auto 0px auto; width: auto; border-collapse:collapse; border: solid 1px #1E3C5A; }
.tbblue th { font-size: 1em; padding: 0px 5px; border: solid 1px #1E3C5A; }
.tbblue td { font-size: 1em; padding: 0px 5px; border: solid 1px #1E3C5A; }
.tbblue tr { font-size: 1em; padding: 0px 5px; border: solid 1px #1E3C5A; }

このHTMLでは「th」を使用していません。

<table class="tbblue" summary="見本1">
<tr>
<td>111</td><td>222</td><td>333</td>
<tr>
<td>aaa ああああ
いいいい</td><td>bbbbb</td><td>ccccc</td>
</tr>
</table>
111 222 333
aaa あああ
いいい
bbbbb ccccc

左上の「111」を左右中央にする為にhtmlのtdにalign=”center”を加え、
真ん中の「222」の下の項の文字の上下をを上揃えにする為にはhtmlのtdにvalign=”top” を加えます。

<table class="tbblue" summary="見本1">
<tr>
<td align="center">111</td><td>222</td><td>333</td>
</tr>
<tr>
<td>aaa あああ
いいい</td><td valign="top">bbbbb</td><td>ccccc</td>
</tr>
</table>
111 222 333
aaa あああ
いいい
bbbbb ccccc

このように個別セル毎に位置を指示する。一番右の「ccc」を上揃えにする場合はそのセルのtdにvalign=”top”を記述すれば良い。

ただし、td要素はtr要素の子要素であるためtr要素に指示をすればその行全体を中央揃え、上揃えとする事が出来る。

<table class="tbblue" summary="見本1">
<tr align="center">
<td>111</td><td>222</td><td>333</td>
</tr>
<tr valign="top">
<td>aaa あああ
いいい</td><td>bbbbb</td><td>ccccc</td>
</tr>
</table>
111 222 333
aaa あああ
いいい
bbbbb ccccc

テーブルを左寄せにしてみる。
ここでは元のCSSの

.tbblue {margin:10px auto 0px auto; width: auto; border-collapse:collapse; border: solid 1px #1E3C5A; }

.tbbluel {margin:0px 0px 0px 0px; width: auto; border-collapse:collapse; border: solid 1px #1E3C5A; }

に変更した新しいクラスセレクター「.tbbluel」をCSSに設置しました。(「.tbblue」の尻に「l」を付け加えただけです。)

111 222 333
aaa あああ
いいい
bbbbb ccccc

一番左の列の幅を150pxに指定してみる。
「colgroup」タグは表組の列をグループ化するタグでこの列が難行になっても同一の効果が得られます。

<table class="tbbluel" summary="見本1">
<colgroup style="width:150px"></colgroup>
<tr align="center">
<td>111</td><td>222</td><td>333</td><td>444</td>
</tr>
<tr valign="top">
<td>aaa あああ
いいい</td><td>bbbbb</td><td>ccccc</td><td>ddddd</td>
</tr>
</table>
111 222 333 444
aaa あああ
いいい
bbbbb ccccc ddddd

一列目を12pxに二列目を100pxに三列目を80pxに四列目を150pxに指定してみる。

<table class="tbbluel" summary="見本1">
<colgroup><col span="1" style="width:120px" /> </colgroup>
<colgroup><col span="1" style="width:100px" /> </colgroup>
<colgroup><col span="1" style="width:80px" /> </colgroup>
<colgroup><col span="1" style="width:150px" /> </colgroup>

<tr align="center">
<td>111</td><td>222</td><td>333</td><td>444</td>
</tr>
<tr valign="top">
<td>aaa あああ
いいい</td><td>bbbbb</td><td>ccccc</td><td>ddddd</td>
</tr>
</table>
111 222 333 444
aaa あああ
いいい
bbbbb ccccc ddddd

二列目以降を100pxに揃えてみる。
実際には二列目以降には三列しかないのですが、あえて間違えて
<colgroup><col span="4" style="width:100px" /> </colgroup>
としたところ空の四つ目の列が形成されました。

<table class="tbbluel" summary="見本1">
<colgroup><col span="1" style="width:120px" /> </colgroup>
<colgroup><col span="4" style="width:100px" /> </colgroup>

<tr align="center">
<td>111</td><td>222</td><td>333</td><td>444</td>
</tr>
<tr valign="top">
<td>aaa あああ
いいい</td><td>bbbbb</td><td>ccccc</td><td>ddddd</td>
</tr>
</table>
111 222 333 444
aaa あああ
いいい
bbbbb ccccc ddddd

2008.04.20

テーブルタグmemo

/*てーぶる*/
table {margin:0px auto 0px auto; width: auto; border-collapse:collapse; border: solid 1px #1E3C5A; }
th { font-size: 1em; padding: 0 5px; border: solid 1px #1E3C5A}
td { font-size: 1em; padding: 0 5px; border: solid 1px #1E3C5A }
tr { font-size: 1em; padding: 0 5px; border: solid 1px #1E3C5A }
<table summary="見本1";>
<tr>
<th abbr="項目1">111</th><th abbr="項目2">222</th><th abbr="項目3">333</th>
</tr>
<tr>
<td>aaa ああああ
いいいい</td><td>bbbbb</td><td>ccccc</td>
</tr>
</table>

この時XHTML1.0 Strict では各「th」にabbr="項目1"のようにabbr属性を設ける必要があります。
参考:アクセシブルなテーブル

111 222 333
aaa ああああ
いいいい
bbbbb ccccc

このように記述してしまうと左サイドバーのカレンダーにも罫線が引かれてしまいます、取りあえずはCSSに記述したth、td、trのborderを0pxにして元にもどしておきます。
これではmemoに使えないので新たにクラスセレクター「.tbblue」を作成しそれでテーブルが作成出来るようにしてみます。

クラスセレクター「.tbblue」の名前は僕は青罫のテーブルにしたかったので他と区別するために「.tableblue」を短縮して「.tbblue」にしただけなので、「.hogehoge」でも何でもいいようです。

/*てーぶるあお線tbblue*/
.tbblue {margin:10px auto 0px auto; width: auto; border-collapse:collapse; border: solid 1px #1E3C5A; }
.tbblue th { font-size: 1em; padding: 0 5px; border: solid 1px #1E3C5A; }
.tbblue td { font-size: 1em; padding: 0px 5px; border: solid 1px #1E3C5A; }
.tbblue tr { font-size: 1em; padding: 0 5px; border: solid 1px #1E3C5A; }

こんなCSSを記述をスタイルシートにする事でいくつものスタイルのテーブルを一つのぺーじに設置する事が可能になります。

<table class="tbblue" summary="見本1">
<tr>
<th abbr="項目1">111</th><th abbr="項目2">222</th><th abbr="項目3">333</th>
</tr>
<tr>
<td>aaa ああああ
いいいい</td><td>bbbbb</td><td>ccccc</td>
</tr>
</table>

元のテーブルのCSSとHTMLの違いは青く示した所だけです。

111 222 333
aaa ああああ
いいいい
bbbbb ccccc

通常「th」は文字の太さはboldにそして左右揃えはセンター揃えになるはずなのですが、文字寄せが左揃えに表示されています、ここはまだ僕が解っていない所です。

2008.04.18

ブロッククォートの代替えクラスセレクタ

前回はブロッククォートの代わりにクラスセレクタ「.txbox」を使う方法について書いてみました。

/*てきすとぼっくすスクロール*/
.txbox {
margin:10px 15px 10px 15px;/*上、右、下、左の空き*/
padding: 0.5em;
border: solid 1px #808080;/*囲み線の太さと色*/
background: #EBF0FF;/* ろぐぼっくす背景色*/
width: auto;/*nnpxと左右幅を固定しても良い*/
height: 100px;/*スペースの高さ*/
overflow: auto;/*オーバーフローの文章をスクロールをしたい時*/
font-size: 95%;/*文字の大きさ*/
line-height: 1.5em;/*文字行間*/
}

css.phpにクラスセレクタ「.txboxh」を設置してみます。
「.txbox」との違いは赤く表示してみました。
僕の場合、画像はあらかじめ51×12pxで作成してサイトの適当なでイレクトリに置いておきました。

/*てきすとぼっくすHTML*/
.txboxh; {
margin:10px 15px 10px 15px;/*上、右、下、左の空き*/
padding: 1em 0.5em 0.5em 0.5em;
border: solid 1px #808080;/*囲み線の太さと色*/
background: #fff3fb;/* ろぐぼっくす背景色薄紫*/
background-image: url(http://画像を設置したディレクトリ/画像の名前.gif);
background-repeat: no-repeat;

/*width: auto;/*nnpxと左右幅を固定しても良い*/
/*height: 100px;/*スペースの高さ*/
/*overflow: auto;/*オーバーフローの文章をスクロールをしたい時*/
font-size: 95%;/*文字の大きさ*/
line-height: 1.5em;/*文字行間*/
}

で、こんな風にするとここは「HTMLを記述しています」という意味が分かりやすくなると思います。

<div class="txboxh">投稿記事</div>

このようにして「txboxc」も作成、「CSS」を記述する箇所も作ってみました。

2008.04.17

blockquoteブロッククォート

BLOCKQUOTE の使い方を見て<blockquote>~</blockquote> を適当に使って来たぼくとしては反省しなくっちゃ!。

<blockquote>~</blockquote> で囲まれた文章は、引用文であることを明示するタグです。
前後に改行され、左右がインデント(字下げ)されて表示されます。

blockquote」すると上の様に見えるんです。

これ的にブロッククォートを使わずに同じように文章を表示するためにクラスセレクタ「.txbox」を作成以下のようにコードをCSS.phpに書き込んでおきます。

/*てきすとぼっくす*/
.txbox {
margin:10px 15px 10px 15px;/*上、右、下、左の空き*/
padding: 0.5em;
border: solid 1px #808080;/*囲み線の太さと色*/
background: #EBF0FF;/* ろぐぼっくす背景色*/
/*width: auto;/*nnpxと左右幅を固定しても良い*/
/*height: 100px;/*スペースの高さ*/
/*overflow: auto;/*オーバーフローの文章をスクロールをしたい時*/
font-size: 95%;/*文字の大きさ*/
line-height: 1.5em;/*文字行間*/
}

そしてHTMLでは

<div class="txbox">投稿記事</div>

の様に書けばいいんですね。

ただ上のCSSではwidth、height、overflowをコメントアウトしています、これを使ったCSSをもひとつクラスセレクタ「.txbox2」を作っておきましょう、これを作れば大量の文章を省スペースで納める事が出来ます。

/*てきすとぼっくすスクロール*/
.txbox2 {
margin:10px 15px 10px 15px;/*上、右、下、左の空き*/
padding: 0.5em;
border: solid 1px #808080;/*囲み線の太さと色*/
background: #EBF0FF;/* ろぐぼっくす背景色*/
width: auto;/*nnpxと左右幅を固定しても良い*/
height: 100px;/*スペースの高さ*/
overflow: auto;/*オーバーフローの文章をスクロールをしたい時*/
font-size: 95%;/*文字の大きさ*/
line-height: 1.5em;/*文字行間*/
}

で、これを使いたい時のHTMLでは

<div class="txbox2">投稿記事</div>

こんな風にスクロールしたいときは「div class=”txbox2″」として使わないときはdiv class=”txbox”」のように「2」を外せばいいんですね!

2008.04.16

wp tag cloud(タグクラウド)

WordPress日本語2.5にしてから、せっかく記事投稿欄の下のタグの項目に追加というボタンがあったので訳は解らなかったのですがいくつかの記事にタグを付けておいたんです。

最近のブログのサイドバーに何か付いているけど面白そうだな!くらいだったのですが、今回「Widgetってなんだ!」を書いていて「タグクラウド」と云う物の形がなんとなく解りかけて来たみたいで、自分のサイトにも貼付けてみようかと!

出て来ましたですね、いくつかのpluginの紹介等が、でも記事投稿画面でタグを付ける事が出来るという事はpluginではなく何かコードを貼付ければいいのではないかと色々と検索してみたら、ありましたね!すぐ近くに右サイドバーの「お助け何処」のぼ’s日本語 Codexに立派に「テンプレートタグ/wp tag cloud」として記事があるではあ〜りませんか!。

僕はタグクラウドをサイドバーに設置したいので「タイトル「Popluar Tags」の下にタグクラウドを表示」を採用。

<?php if ( function_exists(’wp_tag_cloud’) ) : ?>
<li><h2>Popular Tags</h2>
<?php wp_tag_cloud(’smallest=8&largest=22′); ?>
</li>
<?php endif; ?>

すばらしいですね!

これからせいぜい各記事にタグ付けをしていきたいと思っています。

Widgetってなんだ!

管理ページのデザインを選択すると テーマ、ウィジェット、テーマエディタとなっているけど「ウィジェット」と云うのがどうも解らない、
「ウィジェット」ボタンをクリックすると『ウィジェットは使用できません』となっていました。
リンク先はAUTO MATTICと変わらず英語のようです。
そんな時はgoogle翻訳:AUTO MATTICですね、ところがこれでもさっぱり解りません。

そこでgoogle検索:ウィジェットからWikipedia:ウィジェットへ、でもやっぱりよく解らないので取りあえずデザインからテーマを Default に変えてみて「ウィジェット」を覗いてみたらなんと、サイドバーに置いてある材料みたいなものがズラズラーと並んでいます。

取りあえずDefault のサイドバーに無いカレンダーとタグクラウド、 Akismetというのを追加してビックリ!。元のサイドバーにあった物がみんな無くなりカレンダーとタグクラウド、 Akismetのスパムは「0」だよという表示が出ました、まあ作ったばかりのサイトでは当然ですね!。

なかなか面白そうなのですが僕はやっぱりテーマKoikikukanでボチボチとカスタマイズのお勉強に戻ります。

日本語2.5になって記事に少しはタグを加えて置いたのですが、それがサイドバーに簡単に表示出来るなんて、しかもAkismetを表示するなんて云うのも面白そうですね!

2008.04.13

iframe要素をobject要素に置き換える

XHTML 1.0 Strictではiframe要素は「非推奨要素・属性」とされていてValidになりません。
しかもGoogle my mapでは貼付け用のコードはiframe要素を使用して提供されています。

<iframe src="http://表示するサイトのhtml" title="参照ページ"width="300" height="300">参照ページ</iframe>

これをobject要素を使用して表示する場合は

<object data="http://表示するサイトのhtml" width="300" height="200">参照ページ</object>

のようにします。

なお、このページでは画像周囲に囲みの線をつけるためにstyle.css に以下の様に「object1」というクラスセレクタを記述し

/* おぶじぇくと*/
.object1 {
border: solid 1px #808080;/*おぶじぇくとに囲み罫を付ける。*/
}

HTMLでは以下のように記述しています。

<object class="object1" data="http://ja.wapedia.mobi" type="text/html" width="180" height="300">Wapedia</object>
Wapedia

携帯用のサイトにWapedia(ワペディア)というモバイル版のサイトがありますがこれをobject要素を使用して表示してみます。

Google my map
を貼付ける場合は背景が白と言う事は無いのでこのobject1」というクラスセレクタは使用していません。

参考:非推奨要素の代替方法(2)
参考:様々な形式のデータを埋め込む
参考:MIMEタイプ

2008.04.12

Guestbookの設置 Paged Comments Plugin

小粋空間さんの「Guestbookの設置」手順に従って設置を行います。

(1)KEYVANサイトさんよりVersion 2.6.4 (2007-07-31) (zip file) をダウンロードしました。
「paged-comments」ホルダに
paged-comments-config-sample.phpファイル
paged-comments.phpファイル
languagesホルダ
themesホルダ
readme.txt
の5点が格納されています。

(2)解凍したpaged-commentsホルダ直下のpaged-comments-config-sample.php をpaged-comments-config.php にリネームします。

(3)paged-comments-config.phppaged-comments.phpをplugins ディレクトリにアップロードします。

注:僕の場合はpaged-commentsホルダからlanguagesホルダ、themesホルダ、readme.txtを削除しpaged-commentsホルダの中身はpaged-comments-config.phppaged-comments.phpのみとしてpaged-commentsホルダ自体をplugins ディレクトリにアップロードしました。

(4)また同梱されている themesホルダ配下にある、いずれかの comments-paged.php を現在利用中のテーマディレクトリ内に配置します。

注:僕の場合は不具合があり訳も解らないのにcomments-paged.phpは削除しています。comments-paged.phpにはなにか役割があるのでしょうか?

(5)このサイトの場合使用テーマがkoikikukan3なので小粋空間さんのguestbook.php をダウンロードし現在利用中のテーマディレクトリ内に配置します。

これで準備が出来ました。プラグイン画面でPaged Comments Pluginを有効化します。

次に、管理メニューより[投稿]-[ページ作成]をクリックしページ作成でタイトルはGuestbook、記事投稿欄にコメントをお願いします!等を適当に書き込んでもいいでしょう、下の「ページテンプレート」にて [Guest Book] を選択、公開ボタンをクリックします。

Guestbookの設置が出来ました。

ここで使用したテンプレートguestbook.phpはテンプレートpage.phpを改造したものです。
まずはpage.phpを複製し、guestbook.phpという名前を付け保存、ファイル先頭行に以下を書き込みアップロードします。

<?php
/*
Template Name: Guest Book
*/
?>

自分のサイトをブラウザで開き管理画面からテーマエディターを開くと右サイドバーにGuest Bookの表示があるのでクリックし開きguestbook.phpファイルの編集をおこないます。

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<?php endwhile; endif; ?>
の間の行を削除そこに以下を書き込みます。

<?php comments_template(); ?>

以上を書き込み保存します。

google my map

googleマイマップで作成した地図のコードはiframeタグで提供されます。
しかし、XHTML 1.0 StrictやXHTML 1.1では「非推奨要素・属性」とされvalidになりません。

Google Mapsのマイマップで取得した以下コードの赤い部分をコピーし

<iframe width="500" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.co.jp/maps/ms?ie=UTF8&amp;hl=ja&amp;s=AARTsJqaOi8Q3_GXqleVozq3OuYGVER_wQ&amp;msa=0&amp;msid=111785299853511043141.00044a44555f859aeb21d&amp;ll=35.376734,138.440094&amp;spn=0.097976,0.171661&amp;z=12&amp;output=embed"></iframe><br /><small><a href="http://maps.google.co.jp/maps/ms?ie=UTF8&amp;hl=ja&amp;msa=0&amp;msid=111785299853511043141.00044a44555f859aeb21d&amp;ll=35.376734,138.440094&amp;spn=0.097976,0.171661&amp;z=12&amp;source=embed" style="color:#0000FF;text-align:left">大きな地図で見る</a></small>

以下のobject コードの青い部分に張り付けます。
ピンクの部分はiframeタグがobjectタグに変わった部分です。
objectタグでは 等価な内容名を示す必要があります。

<object width="500" height="350" data="http://maps.google.co.jp/maps/ms?ie=UTF8&amp;hl=ja&amp;s=AARTsJqaOi8Q3_GXqleVozq3OuYGVER_wQ&amp;msa=0&amp;msid=111785299853511043141.00044a44555f859aeb21d&amp;ll=35.376734,138.440094&amp;spn=0.097976,0.171661&amp;z=12&amp;output=embed" type="text/javascript" >等価な内容名</object>
<small><a href="http://maps.google.co.jp/maps/ms?ie=UTF8&amp;hl=ja&amp;msa=0&amp;msid=111785299853511043141.00044a44555f859aeb21d&amp;ll=35.376734,138.440094&amp;spn=0.097976,0.171661&amp;z=12&amp;source=embed" style="color:#0000FF;text-align:left">大きな地図で見る</a></small>

等価な内容名
これでXHTML 1.0 StrictでもValidになります。

2008.04.11

google mapsにルートを書いてみる

これを利用する場合「Google Maps API」の取得の必要も無いんですね!

ただグーグルアカウントを取得するのみで「Google Maps」を利用できるんです。

まずは、google mapsのサイトを開きます、googleバナーの下に「検索結果」と「マイマップ」のボタンが表示されているので「マイマップ」のボタンをクリックします。

グーグルアカウントを持っていない場合はここで聞いてきますので「アカウント作成」ボタンをクリックしてメールアドレスとパスワードを登録してアカウントを作成して下さい。

サイドバーの編集ボタンをクリックすればmap左上にポイントツール、直線ツール、シェイプツール等が表示されるので早速ルートを書いてみましょう。

等価な内容名

Next »