style.tableLayoutプロパティ

style.tableLayoutは、要素のスタイル属性のtable-layoutプロパティの値を取得、もしくは、設定するプロパティ。

table-layoutプロパティは、表(テーブル)の列の幅を自動調整するかどうかを指定することができる。

構文

取得

var $tableLayout = $elementReference.style.tableLayout;

戻り値

要素のスタイル属性のtable-layoutプロパティの値。

設定

$elementReference.style.tableLayout = "auto | fixed | inherit";
auto | fixed | inherit
下記の何れかの値で指定する。初期設定値は「auto」。
  • auto:列の幅を自動調整する。自動テーブルレイアウトアルゴリズム。
  • fixed:列の幅を自動調整しないで固定する。固定テーブルレイアウトアルゴリズム。
  • inherit:親要素の設定を継承。

サンプル


サンプルのtable-layoutプロパティの値:

セルA1 セルB1 セルB1 セルB1 セルC1
セルA2 セルA2 セルB2 セルC2
セルA3 セルB3 セルB3 セルC3

サンプルの動作について

  • 「auto」ボタンをクリックすると、列の幅を自動調整する。「サンプルのtable-layoutプロパティの値:」の右横に「auto」と表示。
  • 「fixed」ボタンをクリックすると、列の幅を自動調整しない。「サンプルのtable-layoutプロパティの値:」の右横に「fixed」と表示。
  • 「inherit」ボタンをクリックすると、親要素の設定を継承する。「サンプルのtable-layoutプロパティの値:」の右横に「inherit」と表示。

サンプルのソースコード

JavaScript

<script type="text/javascript">
function setTableLayout( $tableLayout ) {
 var $element = document.getElementById( "sample" );
 $element.style.tableLayout = $tableLayout;
 var $tableLayout = $element.style.tableLayout;
 document.getElementById( "sampleOutput" ).innerHTML = $tableLayout;
}
</script>

HTML

<button onclick="setTableLayout('auto');">auto</button>
<button onclick="setTableLayout('fixed');">fixed</button>
<button onclick="setTableLayout('inherit');">inherit</button>
<br />
<p>サンプルのtable-layoutプロパティの値:<span id="sampleOutput"></span></p>
<table id="sample">
 <tr>
  <td>セルA1</td>
  <td>セルB1 セルB1 セルB1</td>
  <td>セルC1</td>
 </tr>
 <tr>
  <td>セルA2 セルA2</td>
  <td>セルB2</td>
  <td>セルC2</td>
 </tr>
 <tr>
  <td>セルA3</td>
  <td>セルB3 セルB3</td>
  <td>セルC3</td>
 </tr>
</table>

CSS

<style>
#sample,
#sample td {
 border: 2px solid red;
 background-color: yellow;
 padding: 6px 10px;
}
#sample {
 width: 500px;
 margin: 10px;
 padding: 0;
 border-collapse: separate;
 border-spacing: 10px;
}
</style>

スポンサード リンク

カテゴリー: DOM, JavaScript, Styleオブジェクト, テーブル, プロパティ, リファレンス パーマリンク