電子書籍の厳選無料作品が豊富!

CSSを使ってテーブルでセル全体をリンクしたい

CSSを使ってテーブルでセル全体をリンクしたい・・・と思っています。
4つのセル?を横並びにして(2段目は説明書き)、一つ一つ違うところに飛べるようにしたいのですけど、文字だけしかリンクできません。。。
block要素?を使うらしい?ということはわかったのですが、テーブル要素と組み合わせて使う場合どうしたらいいのでしょう?
色々やってみたのですが、セルが縦並べになってしまったりメインのcolorがなくなってしまったり、形が大幅に崩れたりしてしまいました。

ホームページ作りもCSSも初めてなので、なにをどうしたらよいか教えていただけると嬉しいです
ソースをのっけておきます

<cssの方>
table#table-01 {
width: 600px;
border: 0px #E3E3E3 solid;
border-collapse: separate;
border-spacing: 20px 0;
}

table#table-01 th {
width: 130px;
height: 70px;
padding: 5px;
border: #E3E3E3 solid;
border-width: 1px 0 0 1px;
background: #F5F5F5;
font-weight: bold;
line-height: 120%;
text-align: center;
}

table#table-01 td {
vertical-align: top;
padding: 1px 3px 20px 0;
border: 0px #E3E3E3 solid;
border-width: 0;
text-align: center;
}

<htmlの方>

<table id="table-01" cellspacing="20px">
<tr><th>●●●●</th><th>▲▲▲</th><th>■■■</th><th>○○○</th></tr>
<tr><td>●の説明</td><td>▲の説明</td><td>■の説明</td><td>○の説明</td></tr>

よろしくお願いします

A 回答 (2件)

>>私の参考にしたホームページは全てCSSで作成されていますが。


テーブルをあえて不要なdivを多用して作成する理由はないと思います。

>>リンクしたい・・・
とのことなので、おそらくth以下にaタグがあると思いますので、
下記cssを追加すれば行けるのではないでしょうか?
(line-heightを固定すると文字サイズ拡大時にはみ出す等の問題はありますが)

[css追加]
th a{
width: 130px;
line-height: 70px;
display:block;
}

この回答への補足

やってみたらセル全体リンクできるようになりました。
ありがとうございます

ただ th内に入れた文字が2段になるときは、高さが勝手に変わって2倍になってしまいます
(セル内の文字も上下大きく離れてしまいます)

line-heightをただのheightに変えてみたら高さはバッチリなのですが、セル内の文字が上に寄ってしまいました
th内の文字を2段になる長さの時でも中央に配置するようには出来るでしょうか?

補足日時:2010/07/14 22:10
    • good
    • 0
この回答へのお礼

ありがとうございました

お礼日時:2010/07/15 10:56

私の参考にしたホームページは全てCSSで作成されていますが。

この回答への補足

これだと、ほとんど最初から作り直さなくてはならなくなってしまうので、今回は違う方法で出来たらいいな・・・と思っています。

でも、参考にさせていただきます。
ありがとうございました

補足日時:2010/07/14 22:41
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!