私はテーブルソートプラグインを使用していますが、テーブルががらくたのように見えたので、スタイルを設定してみることにしました。
cssがあまり得意ではないので、オンラインでいくつかの既成のデザインを見つけようとしましたが、次のWebサイトを見つけました。
http://www.csstablegenerator.com/
私はそこから私のcssのためにこのコードを手に入れました:
.CSSTableGenerator {
margin:0px;padding:0px;
width:100%;
box-shadow: 10px 10px 5px #888888;
border:1px solid #000000;
-moz-border-radius-bottomleft:0px;
-webkit-border-bottom-left-radius:0px;
border-bottom-left-radius:0px;
-moz-border-radius-bottomright:0px;
-webkit-border-bottom-right-radius:0px;
border-bottom-right-radius:0px;
-moz-border-radius-topright:0px;
-webkit-border-top-right-radius:0px;
border-top-right-radius:0px;
-moz-border-radius-topleft:0px;
-webkit-border-top-left-radius:0px;
border-top-left-radius:0px;
}.CSSTableGenerator table{
width:100%;
height:100%;
margin:0px;padding:0px;
}.CSSTableGenerator tr:last-child td:last-child {
-moz-border-radius-bottomright:0px;
-webkit-border-bottom-right-radius:0px;
border-bottom-right-radius:0px;
}
.CSSTableGenerator table tr:first-child td:first-child {
-moz-border-radius-topleft:0px;
-webkit-border-top-left-radius:0px;
border-top-left-radius:0px;
}
.CSSTableGenerator table tr:first-child td:last-child {
-moz-border-radius-topright:0px;
-webkit-border-top-right-radius:0px;
border-top-right-radius:0px;
}.CSSTableGenerator tr:last-child td:first-child{
-moz-border-radius-bottomleft:0px;
-webkit-border-bottom-left-radius:0px;
border-bottom-left-radius:0px;
}.CSSTableGenerator tr:hover td{
}
.CSSTableGenerator tr:nth-child(odd){ background-color:#aad4ff; }
.CSSTableGenerator tr:nth-child(even) { background-color:#ffffff; }
.CSSTableGenerator td{
vertical-align:middle;
border:1px solid #000000;
border-width:0px 1px 1px 0px;
text-align:left;
padding:7px;
font-size:10px;
font-family:Arial;
font-weight:normal;
color:#000000;
}.CSSTableGenerator tr:last-child td{
border-width:0px 1px 0px 0px;
}.CSSTableGenerator tr td:last-child{
border-width:0px 0px 1px 0px;
}.CSSTableGenerator tr:last-child td:last-child{
border-width:0px 0px 0px 0px;
}
.CSSTableGenerator tr:first-child td{
background:-o-linear-gradient(bottom, #005fbf 5%, #003f7f 100%); background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #005fbf), color-stop(1, #003f7f) );
background:-moz-linear-gradient( center top, #005fbf 5%, #003f7f 100% );
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#005fbf", endColorstr="#003f7f"); background: -o-linear-gradient(top,#005fbf,003f7f);
background-color:#005fbf;
border:0px solid #000000;
text-align:center;
border-width:0px 0px 1px 1px;
font-size:14px;
font-family:Arial;
font-weight:bold;
color:#ffffff;
}
.CSSTableGenerator tr:first-child:hover td{
background:-o-linear-gradient(bottom, #005fbf 5%, #003f7f 100%); background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #005fbf), color-stop(1, #003f7f) );
background:-moz-linear-gradient( center top, #005fbf 5%, #003f7f 100% );
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#005fbf", endColorstr="#003f7f"); background: -o-linear-gradient(top,#005fbf,003f7f);
background-color:#005fbf;
}
.CSSTableGenerator tr:first-child td:first-child{
border-width:0px 0px 1px 0px;
}
.CSSTableGenerator tr:first-child td:last-child{
border-width:0px 0px 1px 1px;
}
問題は、彼らが私にテーブルのコードを提供したかったのですが、私は自分のコードを使用したかったので、2つを一緒にメッシュするのに問題があります。
彼らが私に使用して欲しかったコードはこれです:
<div class="CSSTableGenerator" >
<table >
<tr>
<td>
Title 1
</td>
<td >
Title 2
</td>
<td>
Title 3
</td>
</tr>
<tr>
<td >
Row 1
</td>
<td>
Row 1
</td>
<td>
Row 1
</td>
</tr>
<tr>
<td >
Row 2
</td>
<td>
Row 2
</td>
<td>
Row 2
</td>
</tr>
<tr>
<td >
Row 2
</td>
<td>
Row 2
</td>
<td>
Row 2
</td>
</tr>
<tr>
<td >
Row 3
</td>
<td>
Row 3
</td>
<td>
Row 3
</td>
</tr>
</table>
</div>
私がそれらを一緒にマッシュしようとすると、私はこれを手に入れます:
ご覧のとおり、テーブルヘッダーは行にあり、最初の実際の行はヘッダーのあるべき姿のように見えます...
調査したところ、作成済みのテーブル用に提供されたコードがヘッダーを使用していないことに気付きました...私はthではなくtdに変更し、見栄えがしました。しかし、最初にプログラミングする正しい方法であり、次にjqueryプラグインを使用してテーブルをソートしているため、thが必要です。これがない場合、これは機能しません。
cssとjqueryプラグインを連携させる簡単な方法。私はいくつかのcssを変更する必要がありますが、私はいくつかの異なることを試しました、そしてこのcssは頑固で、簡単に変更しないようです。
どんな助けでも大歓迎です、ありがとう!
テーブルにコードを追加するのを忘れました:
<table id=\"myTable\" class=\"tablesorter\" >
<thead>
<tr>
<th>Beer Name</th>
<th>User Rating</th>
<th> Your Rating</th>
</tr>
</thead>
<tbody>";
//database call was here, but taken out. Not important to table code
for($i = 0; $i<$FriendBeersNum;$i++){
$row = $resultBeers->fetch_assoc();
$fBeerName = $row['beerName'];
$fBeerRating = $row['rating'];
$fBeerID = $row['beerID'];
$beerURL = "beerPage.php?id=$fBeerID";
//another database call not needed for table help, just getting info for table
if( $myBeerNum > 0){
$rowMyBeer = $resultMyBeer->fetch_assoc();
$myrating = $rowMyBeer['rating'];
}
else { $myrating = "N/A";}
print "
<tr>
<td> <a href=\"$beerURL\"> $fBeerName </a> </td>
<td> $fBeerRating </td>
<td> $myrating </td>
</tr>