勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

CSSのdisplayについて

   2014/07/02  CSS

よく使うdisplayだけれども、noneとblock以外で
初めて使うことがあったのでメモ。

■参考サイト
http://www.tohoho-web.com/css/prop/display.htm

■サンプル
http://sample.taitan916.info/table_row/

■ソース
<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
function show_table1(){
$("#test").css({'display' : 'block'});
}
function show_table2(){
$("#test").css({'display' : 'table-row'});
}
function show_table3(){
$("#test").show();
}
</script>
<title>jQuery</title>
</head>
<body>
<h1>jQuery</h1>
<table border="1">
<tr>
<th>1</th><th>2</th><th>3</th>
</tr>
<tr id="test" style="display:none;">
<td colspan="3">テスト</td>
</tr>
</table>
<input type="button" value="click1" onClick="show_table1();">
<input type="button" value="click2" onClick="show_table2();">
<input type="button" value="click3" onClick="show_table3();">
</body>
</html>

■思ったこと
colspanでくっつけてるテーブルがあり、いつもどおり
noneからblockに変えたら表示するだろうと思ってやるも
表示崩れが発生(click1)。

色々調べたらdisplay:table-row;だとキレイに表示された(click2)。

ただ、jQuery使うならshowでよさそう(click3)。

 - CSS

  関連記事

jQuery無しで要素にアニメーション効果を設定する方法(animate.css)

あるサイトをWappalyzerで調査していた際に「animate.css」とい ...

YouTubeの埋め込み動画をjQuery&CSSでフローティングビデオ対応させる方法

以前にvideoタグで表示させた動画をjQuery&CSSでフローティン ...

CSSを用いて可変(レスポンシブ)要素内での文字列を丸める方法

可変(レスポンシブ)要素内の文字を丸めたかった。いつもであればPHPのmb_st ...

CSSのpointer-eventsプロパティで指定した要素をクリック不可にする方法

ページ内の指定のボタンをクリックしても動作しないという症状が発生し、ソースコード ...

特定のID / Classを持つタグの親要素に対してCSSを割り当てる方法

特定のID / Classを持つタグの親要素に対してCSSを割り当てたい。また、 ...