CDの保有枚数を教えてください

CSSでTRに枠線種を指定、TDで背景色を指定したいのですが、
Firefoxでは思惑通り表示されますが、IEではTRの枠線が表示されません。
何か良い対応策は無いでしょうか?

== CSS ==
TABLE {
border-collapse: collapse;
}

.grid {
border: solid 1px;
border-color: #888;
}

.nogrid {
border: none;
}

.title {
background-color: #ff7;
}

.data1 {
background-color: #eef;
}

.data2 {
background-color: #fff;
}

== HTML ==

<table>
<tr class="grid">
<td class="title">項目1</td>
<td class="title">項目2</td>
<td class="title">項目3</td>
</tr>
<tr class="nogrid">
<td class="data1">値1</td>
<td class="data1">値2</td>
<td class="data1">値3</td>
</tr>
<tr class="nogrid">
<td class="data2">値1</td>
<td class="data2">値2</td>
<td class="data2">値3</td>
</tr>
</table>

A 回答 (3件)

table {


border-width:0px;
border-collapse: collapse;
}
tr {
height:auto;
}
.grid1 {
text-align:center;
border-width:1px 0px 0px 1px;
border-style:solid;
border-color:#888;
background-color: #ff7;
padding:5px;
}
.grid2 {
text-align:center;
border-width:1px 0px 0px 0px;
border-style:solid;
border-color:#888;
background-color: #ff7;
padding:5px;
}
.grid3 {
text-align:center;
border-width:1px 1px 0px 0px;
border-style:solid;
border-color:#888;
background-color: #ff7;
padding:5px;
}
.data1 {
text-align:center;
border-width:1px 0px 0px 0px;
border-style:solid;
border-color:#888;
background-color: #eef;
padding:5px;
}
.data2 {
text-align:center;
border-width:1px;
border-style:solid;
border-color:#fff;
background-color: #fff;
padding:5px;
}

<table>
<tr>
<td class="grid1">項目1</td>
<td class="grid2">項目2</td>
<td class="grid3">項目3</td>
</tr>
<tr>
<td class="data1">値1</td>
<td class="data1">値2</td>
<td class="data1">値3</td>
</tr>
<tr>
<td class="data2">値1</td>
<td class="data2">値2</td>
<td class="data2">値3</td>
</tr>
</table>
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございます。

TDの最左、最右、中の項目でスタイルを切り替える形になりますか。
やはりTRに指定するのではなくcrepon133さんの言うように
線種や色が違うTDごとにスタイルを用意することにします。

ありがとうございました。

お礼日時:2006/12/07 11:15

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">


<html lang="ja">

<head>
<meta http-equiv="content-type" content="text/html;charset=shift_jis">
<title>テーブルの横線のみ表示</title>

<meta http-equiv="content-style-type" content="text/css;charset=shift_jis">
<style type="text/css">
<!--
table {
border-width: 3px;
border-color: #ffffff;
border-style: outset;
border-collapse: collapse;
}

th, td {
padding: 10px;
border-width: 3px;
border-color: #ffffff;
border-style: inset none none none;
}

#a1 {
background-color: #ff0000;
}
#a2 {
background-color: #00ff00;
}
#a3 {
background-color: #0000ff;
}
#b1 {
background-color: #ffff00;
}
#b2 {
background-color: #ff00ff;
}
#b3 {
background-color: #00ffff;
}
-->
</style>
</head>

<body>

<table rules="rows">
<tr>
<th>項目1</td>
<th>項目2</td>
<th>項目3</td>
</tr>
<tr>
<td id="a1">値1</td>
<td id="a2">値2</td>
<td id="a3">値3</td>
</tr>
<tr>
<td id="b1">値1</td>
<td id="b2">値2</td>
<td id="b3">値3</td>
</tr>
</table>

</body>

</html>
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございます。
テーブル自体にはアウトラインを出したくないのです。
申し訳ないです。

お礼日時:2006/12/07 11:10

「<tr class="grid">~</tr>」に挟まれた「<td class="title">~</td>」に枠線を表示したい…という意味ですよね?



.grid {
border: solid 1px;
border-color: #888;
}

の部分を

.grid td {
border: solid 1px;
border-color: #888;
}

にすると可能です。(他にも書き方はありますが)
また、この場合は

.nogrid {
border: none;
}

は必要ありませんので、「<tr class="nogrid">」の部分を「<tr>」にして構いません。

また、「<tr class="grid">~</tr>」に挟まれた「<td class="title">~</td>」に枠線と背景色を同時に指定したい場合は、

.grid {
border: solid 1px;
border-color: #888;
}

の部分を

.grid td {
border: solid 1px;
border-color: #888;
background-color: #ff7;
}

のようにすると可能です。
この場合は

.nogrid {
border: none;
}

.title {
background-color: #ff7;
}

は必要ありませんので、「<tr class="nogrid">」の部分を「<tr>」に、「<td class="title">」の部分を「<td>」にして構いません。

Firefoxは使っていないので、これらがFirefoxでも正常に表示されるかは分かりませんが…。

この回答への補足

回答を頂きましてありがとうございます。
> <tr class="grid">~</tr>」に挟まれた「<td class="title">~</td>」に枠線を表示したい…という意味ですよね?
ではなく、TRには線を表示し、TDには線を表示したくないのです。
伝わりにくい質問で申し訳無いです。

御回答頂いた方法ですと、TDにも枠線が表示されます。
+--------+--------+--------+
| 項目1 | 項目2 | 項目3 |
+--------+--------+--------+

以下のようにTRのみに線を表示し、TDには線を表示したくないのです。
+--------------------------+
| 項目1 項目2 項目3 |
+--------------------------+

よろしくお願いします。

補足日時:2006/12/06 11:12
    • good
    • 0

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


おすすめ情報