Unityアセットストアセール中!

Javascriptでdisplay:blockを使って切り替えるとtrタグのレイアウトがずれる原因

<景品表示法に基づく表記 > 本サイトのコンテンツには、商品プロモーションが含まれている場合があります。
スポンサードリンク

Javascriptでdisplay:block,display:noneを切り替えて
要素の表示・非表示をする場合があります。

同じ方法でtable trの表示・非表示を切り替えた場合
レイアウトズレが発生します。

原因はtrタグの初期設定されているdisplayの値がblockではないことが原因です。

trの場合の初期値はblockではなく「table-row」

そのためtrの表示・非表示をする場合、displayを使ってtable-rowとnoneを切り替えると
うまくいきます。

目次

tableで使うタグのdisplay初期値

今後はまらないようにするためにはtableで使うタグのdisplay初期値を覚えておくことが必要です。

table要素display: table
thead要素display: table-header-group
tbody要素display: table-row-group;
tr要素display: table-row;
th要素display: table-cell;
td要素display: table-cell;
tfoot要素display: table-footer-group;
tr要素の表示・非表示をdisplayのblock・noneで切り替えるとレイアウトが崩れてしまう | Into the Programより引用

See the Pen trタグを表示・非表示 by miccyome (@miccyome) on CodePen.

スポンサードリンク
[WordPressのライティング向けプラグイン]
ワードプレスオリジナルプラグイン >>

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

スポンサーリンク

コメント

コメント一覧 (3件)

コメントする

目次
閉じる