2016-05-31 18 views
0

は、これはIE 10と11を対象としていて、私はまた、このレイアウトを持っている私は、デスクトップモニターをお持ちの場合解像度に応じてテーブルレイアウトを変更するにはどうすればよいですか?

、私は私のテーブルが欲しいブートストラップ3を使用しています:

<table class="table table-responsive"> 
    <thead> 
     <tr> 
     <td>Header 1</td> 
     <td>Header 2</td> 
     <td>Header 3</td> 
     </tr> 
    </thead> 
    <tfoot></tfoot> 
    <tbody> 
     <tr> 
     <td>Data 1</td> 
     <td>Data 2</td> 
     <td>Data 3</td> 
     </tr> 
    </tbody> 
</table> 

オン

<table class="table table-responsive"> 
    <thead> 
     <tr> 
     <td>Header</td> 
     <td>Data</td> 
     </tr> 
    </thead> 
    <tfoot></tfoot> 
    <tbody> 
     <tr> 
     <td>Header 1</td> 
     <td>Data 1</td> 
     </tr> 
     <tr> 
     <td>Header 2</td> 
     <td>Data 2</td> 
     </tr> 
     <tr> 
     <td>Header 3</td> 
     <td>Data 3</td> 
     </tr> 
    </tbody> 
</table> 

一部または私はこれを行うことができますCSSがあります:携帯電話(または同様のデバイス)が、私はこのようなレイアウトをしたいのですが?または、これはjavascript(とcss)でのみ行うことができますか?

明確にするには、コードで解像度を検出し、2つのレイアウトの1つを表示する必要があります。

+0

あなたは、行と列を切り替えjavascriptのコードを探してみましたフィドル参照してください? – Gelunox

+2

なぜブートストラップクラスを使用しないのですか?あなたは本当にテーブルの構造を変更する必要がありますか? – AlFra

+0

CSSでテーブルを再構成することはできません。 1つの選択肢として、私はちょっと「meh」です。あなたのページにテーブルの2つのバージョンを含め、ビューポートのサイズに応じて一度に1つだけ表示することです。この手法は、ナビゲーションメニューで使用されることがあります。 – hungerstar

答えて

3

あなたは2つのテーブルを作成し、両者の間に切り替えるには、CSSメディアクエリを使用することができ、https://jsfiddle.net/5f3pbg8b/17/

.table.mobile { 
    display: none 
} 

.table.desktop { 
    display: inline 
} 

@media (max-width: 600px) { 
    .table.desktop { 
    display: none 
    } 
    .table.mobile { 
    display: inline 
    } 
} 
関連する問題