2017-03-21 4 views
0

テーブルの行に1つのtdのサイズを設定しようとしています。サイズはシングルローのシングルtd

<table> 
    <tr> 
    <td> 
     <span>1</span> 
    </td> 
    <td marked="true"> <!-- Should be 80px height and width --> 
     <span>2</span> 
    </td> 
    <td> 
     <span>3</span> 
    </td> 
    </tr> 
</table> 

は今、すべての私のtd年代は60pxheightを持っているとwidthはJSを介して設定されます。

私は80pxheightwidthからmarked="true"tdを設定するために、他のすべてのtd年代は60pxheightに滞在する必要がありたいと思います。

私はmarked="true"tdのサイズを変更することができるよしかし、問題は、他のすべてのtdheightsがあまりにもリサイズされ、これが起こるべきではないこと、です。

私はCSSで、tdheightwidth属性でそれを試してみましたが、サイズにspanを試してみましたが、それらのどれも動作しません。

これはどういうことですか?

助けていただければ幸いです。

EDIT

これは、今どのように見えるかです:

それは航行日のテーブルです。

enter image description here

青色td80pxheightwidthであるべきで縁取ら。

他のものは、垂直に整列しています。

答えて

0

私はそれがテーブルを使用しないことをお勧めだと思います。

<div id="dayList"> 
    <div>7</div> 
    <div>8</div> 
    <div data-marked="true">9</div> 
    <div class="Weekend">10</div> 
    <div class="Weekend">11</div> 
</div> 

と、次のCSS:

#dayList { 
    display: flex; 
    flex-flow: row nowrap; 
    align-items: center; 
    align-content: center; 
} 

#dayList > div { 
    flex: 0 0 60px; 
    margin: 1px; 
    border: 1px solid #CCC; 
    width: 60px; 
    height: 60px; 
    background-color: #EEE; 
    text-align: center; 
    line-height: 60px; 
} 

#dayList > div.Weekend { 
    background-color: #CCC; 
} 

#dayList > div[data-marked=true] { 
    flex: 0 0 80px; 
    border: 1px solid #00F; 
    width: 80px; 
    height: 80px; 
    line-height: 80px; 
} 

それは次のようになります。たぶん

enter image description here

+0

に泊まるべきです。これは、私はすでにやったことで問題があり、他のすべてのTDのget 80px高さという、彼らすべき60pxにご滞在 –

+0

テーブルを使用する必要がありますか?どのように最終的な外観をしたいのかの参照画像を送ることができますか?私はなぜこのようにdivのグリッドを使うことができるか尋ねました。 – eldes

+0

私は自分の質問を編集しました –

0

tdにクラスを追加します。

.big { 
 
    height: 80px; 
 
    width: 80px; 
 
}
<table> 
 
    <tr> 
 
    <td> 
 
     <span>1</span> 
 
    </td> 
 
    <td class="big" marked="true"> 
 
     <!-- Should be 80px height and width --> 
 
     <span>1</span> 
 
    </td> 
 
    <td> 
 
     <span>1</span> 
 
    </td> 
 
    </tr> 
 
</table>

+0

これは、他のすべてのTDの高さを80pxにサイズ変更、彼らは60PX –

0

この:

は、代わりに私は、次のHTMLのようなものを使用します
<table> 
    <tr> 
<td></td> 
<td rowspan="3" marked="true" class="marked" width="80" height="80">test</td> 
<td></td> 
</tr> 
<tr> 
<td> 
    <span>1</span> 
</td> 
<td> 
    <span>1</span> 
</td> 
    </tr> 
    <tr> 
<td></td> 
<td></td> 
</tr> 
</table> 

CSS:これが期待どおりに動作思わ

td { 
    border: 1px solid green; 
} 
+0

高さ= "20"を第1位と第3位に​​に追加 – rinatoptimus

+0

これはほとんどのトリックです、rowspanを上向きに使うことができるかどうか分かりますか? –

+0

明確にわかりません。今、main trの下に1つのtrと1つのtrがあります。最初のtrにではなく2番目にrowspanを追加したいということですか? – rinatoptimus

0

は、クラスを追加しました。狭い:

.narrow { 
    border-top: 25px solid transparent; 
    border-bottom: 25px solid transparent; 
} 

https://jsfiddle.net/rinatoptimus/4hw1a8f3/

+0

解決方法は簡単ですが、1pxの境界線が必要です –

+0

.qqスパンにこれらのスタイルを追加してみてください{ 埋め込み:10px; background-color:gray; 境界線:1ピクセル黒色。 } https://jsfiddle.net/rinatoptimus/4hw1a8f3/2/ – rinatoptimus