目次
table-layout: 固定" > 1. 固定テーブル レイアウト、テーブルの追加 table-layout: 固定
1、すべての幅は未定義
属性のデフォルト値は auto)" >2. 自動テーブル レイアウト、テーブル設定 table-layout:auto (属性のデフォルト値は auto)
1. すべての最小幅は未定です
2. すべての列には最小幅が定義されており、内容に基づいて計算されたすべての列の合計は次の値より小さくなります。テーブルの幅
3 すべてに最小幅が定義されており、コンテンツに基づいて計算されたすべての列の合計は、テーブルの幅
5. パート th は、コンテンツに基づいて計算されたすべての列の合計がテーブルの幅よりも小さいです
ホームページ ウェブフロントエンド htmlチュートリアル HTML における表のセル幅の計算ルールの詳細な紹介

HTML における表のセル幅の計算ルールの詳細な紹介

May 25, 2017 am 10:51 AM


tablewidth

の描画ルールについて テーブルのセル幅の計算方法は大きく分けて、固定テーブルレイアウト、自動テーブルレイアウト、CSSをよく書く人なら知っているはず, しかし、テーブルの幅を設定しても機能しないことがよくあります。それとも固定幅なしでレンダリングするのが普通なのでしょうか。これら 2 つのメソッドがレンダリングをどのように計算するかを紹介します。

最初にいくつかの一般的な 変数を設定します:

  • tableWidth=テーブル幅=100%

  • tableBorderWidth=テーブルの左右の境界線の幅

  • tdBorderWidth =すべての列を左and right 境界線の幅の合計 (マージされた境界線は 1px としてカウントされます)

  • tdPadding = すべての列の左右のパディングの合計

  • tdWidth = 幅が定義されているすべての列の幅の合計

  • t dLength = 列数

1. 固定テーブル レイアウト、テーブルの追加 table-layout: 固定

ps: 固定テーブル レイアウトでは、テーブルの列の幅は列の内容とは何の関係もありません。テーブルの幅、列の幅、テーブルの左右の境界線、列の左右の境界線、列の左右のパディングは関連しています

固定テーブル レイアウトを使用することで、ユーザー エージェントは最初のレイアウトを受け取った後にテーブルを表示できます。行、つまり最初の行の幅のみが機能します

幅が自動の列幅 (つまり、幅が定義されていない列の幅、計算結果が負の場合は 0) = (tableWidth-tableBorderWidth- tdBorderWidth-tdPadding-tdWidth)/tdLength

1、すべての幅は未定義

各列の幅 テーブルの幅で均等に分散

row4row4row4row4row4row4row4row55row555row555row555row555row555row555row555row5555row5555row5555row55555row55555row555 Row7ROW7ROW7ROW7ROW7ROW7ROW7ROW7ROW8ROW8ROW8ROW8ROW8ROW8ROW8ROW9ROW99ROW99ROW9ROW9ROW99th1th2th3th4th5
th1 th2 th3 th4 th5 6番目 th7 th9 th10 row1row1row1row1row1row1row1row1low2row2row2row2row2row2row2row21row3
ROW10ROW10ROW10ROW10ROW10ROW10ROW10 2. すべての幅が定義されており、すべての列の幅の合計はテーブルの幅より小さくなります (tableBorderWidth+tdBorderWidth +tdPadding+tdWidth 各列の幅は、テーブル全体に均等に分散されます。合計幅; テーブルの幅は定義された幅です

th6

TH7

TH8TH9Row10row10Row10row10Row10Row1010
TH9 TH10 Row1Row1Row1Row1Row1Row1ROW1Row1 Row2Row 2Row2Row2Row2Row2Row2 Row3 Row4Row4Row4Row4Row4 R OW5Row5row5row5row5row5row5row5row5Row5Row6 Row7row7row7row7row7row7row7row7Row8row8row8row8row8row8Row8Row9Row9Row9Row9 row9row9row9


3. すべてに定義された幅があり、すべての列の幅の合計がテーブルの幅より大きくなります (tableBorderWidth+tdBorderWidth+tdPadding+tdWidth > tableWidth)

各列の幅は独自に定義された幅です。 ; テーブルの幅はすべての列の幅です 合計幅 (テーブルで定義された幅を超えます)


th1th9th10row1row1row1row1row1row1row1row2row2row2row2row2row2row2row2row3row 4row4row4row4row4row4row4row4row5row5row5row5row5row5row5row5row6row7row7row7row7row7row7row7row7row8row8row8row8row8row8row8row9ro w9row9row9row9row9row9row9 行10行10行10行10行10行10行104. 列の th 幅を指定するときの幅は、テーブルの幅よりも小さくなります (tableBorderWidth+tdBorderWidth+tdPadding+tdWidth
th2 th3 th4 th5 th6 th7 th8
ps: 濃い灰色の背景を持つ列は、幅が定義されている列です。

幅が定義された列の幅は、独自に定義された幅であり、他にはありません幅が定義された列の幅は、テーブルの合計幅から定義された幅の合計を引いたもので、均等に配分されます


th1th2th3th4th5th6th7th8th9th10 row1row1row1row1row1row1row1row1row2row2row2row2row2row2row2row2row3 row4row4row4row4row4row4row4row4row5row5row5row5row5row5row5row5row6row7row7row7row7row7row7row7row7row8row8row8row8row8row8row8row8row9row9row9row9row9row9row9row 9row10row10row10 row10row10row10row105.幅が設定され、 番目の幅の列の幅が大きくなるように設定されます。テーブルの幅よりも (tableBorderWidth+tdBorderWidth+tdPadding+tdWidth > tableWidth)
ps: 背景が濃い灰色の列は、幅が定義された列です

幅が定義された列 実際の幅は、それ自体で定義された幅です。幅が定義されていない他の列は、テーブルの合計幅から定義された幅の合計を引いたもので、均等に分散された後の幅は 0 より小さい場合、

幅が定義されていない他の

列の幅は 0 になります


th1th2th3th4th5th6th7th8th9row1row1row1row1row1row1row1row1row2row2row2row2row2row2row2row2
th10
row3 row4row4row4row4row4row4row4row4 row5row5row5row5row5row5row5row5 row6 row7row7row7row7row7row7row7row7 row8row8row8row8row8row8row8row8 row9row9row9 row9row9row9row9row9 行10行10行10行10行10行10行10

2. 自動テーブル レイアウト、テーブル設定 table-layout:auto (属性のデフォルト値は auto)

各列の幅は、行区切りなしでセル内の最も広い内容によって設定される場合があります。最終的なレイアウトを決定する前に、テーブル内のすべての列にアクセスする必要があるため、非常に遅くなります

1. すべての最小幅は未定です

各列の幅は、内部のコンテンツによって完全に決定されます。


th1 th2 th3 th4 th5 th6 th7 th8 th9 th10
row1row1row1row1row1row1row1row1 row2row2row2row2row2row2row2row2 row3 行4行4行4行4行4行4行4行4 行5行5行5行5行5行5行5行5 行6 行7行7行7行7行7行7行7行7 行8行8行8行8行8行8行8行8 行9行9行9行9行9行9row9row9 row10row10row10row10row10row10row10

2. すべての列には最小幅が定義されており、内容に基づいて計算されたすべての列の合計は次の値より小さくなります。テーブルの幅

各列 幅は最初にコンテンツに基づいて計算され、定義された最小幅より小さくすることはできません。超過幅は各列に均等に配分されます。


th1 th2 th3 th4 th5 th6 th7 th8 th9 th10
row1 row2row2row2row2row2row2row2row2 row3 row4 row5 row6 row7 row8 row9 row10

3 すべてに最小幅が定義されており、コンテンツに基づいて計算されたすべての列の合計は、テーブルの幅

各列 幅は最初にコンテンツに基づいて計算され、次に定義された最小幅


th9th10row1ROW2ROW2ROW2ROW2ROW2ROW2ROW21ROW3ROW4ROW4ROW4ROW4ROW4ROW4ROW4ROW4ROW5ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6ROW6LOW6ROW6LOW6LOW6W 6ROW6ROW6ROW9ROW10ROW10ROW10ROW10ROW10ROW10ROW10
th1 th2 th3 th4 th5 より小さくすることはできませんth6 th7 th8
4. パート th は、コンテンツに基づいて計算された最小幅を定義します。すべての列の合計はテーブルの幅より小さくなります ps: 濃い灰色の背景を持つ列は、定義された最小幅を持つ列です それぞれの幅列は最初にコンテンツに基づいて計算され、次に定義された最小幅より小さくすることはできません。最後にテーブルによってレンダリングされる幅はテーブル自体で定義される幅より小さくすることはできません。

th1

th2


th3

th4th5th6th7th8th9th10row1row2row34行4行4行4行4行4行4行4行5行6行7行6行9行10

5. パート th は、コンテンツに基づいて計算されたすべての列の合計がテーブルの幅よりも小さいです

各列の幅は次のとおりです。最初にコンテンツに基づいて計算され、次に定義された最小幅


th1th2th3th4th5th6th7th 89番目th10row1row2row2row2row2row2row2row2row3row4row4row4row4row4row4row4row4row5row6row6row6row6row6row6 row6row7row6row6row6row6row6row6row6row6row9row10row10row10row10row10row10row10

以上がHTML における表のセル幅の計算ルールの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

HTMLの表の境界線 HTMLの表の境界線 Sep 04, 2024 pm 04:49 PM

HTML の表の境界線に関するガイド。ここでは、HTML でのテーブルの境界線の例を示しながら、テーブル境界線を定義する複数の方法について説明します。

HTML のネストされたテーブル HTML のネストされたテーブル Sep 04, 2024 pm 04:49 PM

これは、HTML でのネストされたテーブルのガイドです。ここでは、テーブル内にテーブルを作成する方法をそれぞれの例とともに説明します。

HTML 左マージン HTML 左マージン Sep 04, 2024 pm 04:48 PM

HTML マージン左のガイド。ここでは、HTML margin-left の概要とその例、およびそのコード実装について説明します。

HTML テーブルのレイアウト HTML テーブルのレイアウト Sep 04, 2024 pm 04:54 PM

HTML テーブル レイアウトのガイド。ここでは、HTML テーブル レイアウトの値と例および出力について詳しく説明します。

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

HTML 内のテキストの移動 HTML 内のテキストの移動 Sep 04, 2024 pm 04:45 PM

HTML でのテキストの移動に関するガイド。ここでは、概要、マーキー タグが構文でどのように機能するか、および実装例について説明します。

HTML 順序付きリスト HTML 順序付きリスト Sep 04, 2024 pm 04:43 PM

HTML 順序付きリストのガイド。ここでは、HTML 順序付きリストと型の導入とその例についても説明します。

HTML の onclick ボタン HTML の onclick ボタン Sep 04, 2024 pm 04:49 PM

HTML オンクリック ボタンのガイド。ここでは、それらの紹介、動作、例、およびさまざまなイベントでの onclick イベントについてそれぞれ説明します。

See all articles