行の表示をオフにしてギャップを削除する最良の方法は何ですか? 逆に、可視性をオンにすると、可視行が再び表示されるようになります。
4 に答える
これをクライアント上で (つまり、JavaScript を介して) 実行したい場合は、style.display を「none」に設定してみてください (オンに戻すには「block」にします)。
サーバーで処理したい場合は、行の可視性を false に設定すると、行がレンダリングされなくなります。
編集 - 例:
関数 ShowHideRow(行、表示) { document.getElementById(row).style.display = (show ? 'block' : 'none'); }
Mufasa のアドバイスに従い、ブロックの代わりに table-row を使用することをお勧めします。
これまでに提案されたように display プロパティでそれを行う場合、block と table-row について心配する必要があります。table-row は正しいですが、IE ではサポートされていないため、選択するには browser-sniff が必要です。
スタイルを直接設定するのを避け、代わりに CSS クラス ルールを使用する方が簡単な可能性があります。
tr.hidden { display: none; }
row.className= 'hidden'; // sets display to none
row.className= ''; // resets display to its default value
行( )の「表示」プロパティを「なし」に設定する必要があります。Chris が言ったように JavaScript を使用するか、CSS を使用します。
Chris は正しいですが、値を正しいテーブル表示タイプに戻すと、再度表示するときにもう少し正確になります。の場合は<TR>
、 を使用しますdisplay: table-row
。CSS 表示プロパティを参照してください。
更新: ボビンスの応答は、表示属性の使用方法 (および使用しない方法) に関するより実用的な応答です。