検索
ホームページウェブフロントエンドhtmlチュートリアルHTML における表のセル幅の計算ルールの詳細な紹介


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 までご連絡ください。
HTMLのブール属性とは何ですか?いくつかの例を挙げてください。HTMLのブール属性とは何ですか?いくつかの例を挙げてください。Apr 25, 2025 am 12:01 AM

ブール属性は、値なしでアクティブ化されるHTMLの特別な属性です。 1.ブール属性は、無効化された入力ボックスを無効にするなど、存在するかどうかによって、要素の動作を制御します。 2.彼らの実用的な原則は、ブラウザが異なっているときに属性の存在に応じて要素の動作を変更することです。 3.基本的な使用法は、属性を直接追加することであり、高度な使用法はJavaScriptを介して動的に制御できます。 4.一般的な間違いは、値を設定する必要があると誤って考えており、正しい執筆方法は簡潔にする必要があります。 5.ベストプラクティスは、コードを簡潔に保ち、ブールのプロパティを合理的に使用して、Webページのパフォーマンスとユーザーエクスペリエンスを最適化することです。

HTMLコードをどのように検証できますか?HTMLコードをどのように検証できますか?Apr 24, 2025 am 12:04 AM

HTMLコードは、オンラインバリデーター、統合ツール、自動化されたプロセスを使用するとクリーンになります。 1)w3cmarkupvalidationserviceを使用して、HTMLコードをオンラインで確認します。 2)リアルタイム検証のためにVisualStudiocodeにhtmlhint拡張機能をインストールして構成します。 3)HTMLTIDYを使用して、建設プロセスでHTMLファイルを自動的に検証およびクリーニングします。

HTML対CSSおよびJavaScript:Webテクノロジーの比較HTML対CSSおよびJavaScript:Webテクノロジーの比較Apr 23, 2025 am 12:05 AM

HTML、CSS、およびJavaScriptは、最新のWebページを構築するためのコアテクノロジーです。1。HTMLはWebページ構造を定義します。2。CSSはWebページの外観に責任があります。

マークアップ言語としてのHTML:その機能と目的マークアップ言語としてのHTML:その機能と目的Apr 22, 2025 am 12:02 AM

HTMLの機能は、Webページの構造とコンテンツを定義することであり、その目的は、情報を表示するための標準化された方法を提供することです。 1)HTMLは、タイトルやパラグラフなどのタグや属性を使用して、Webページのさまざまな部分を整理しています。 2)コンテンツとパフォーマンスの分離をサポートし、メンテナンス効率を向上させます。 3)HTMLは拡張可能であり、カスタムタグがSEOを強化できるようにします。

HTML、CSS、およびJavaScriptの未来:Web開発動向HTML、CSS、およびJavaScriptの未来:Web開発動向Apr 19, 2025 am 12:02 AM

HTMLの将来の傾向はセマンティクスとWebコンポーネントであり、CSSの将来の傾向はCSS-in-JSとCSShoudiniであり、JavaScriptの将来の傾向はWebAssemblyとServerLessです。 1。HTMLセマンティクスはアクセシビリティとSEO効果を改善し、Webコンポーネントは開発効率を向上させますが、ブラウザの互換性に注意を払う必要があります。 2。CSS-in-JSは、スタイル管理の柔軟性を高めますが、ファイルサイズを増やす可能性があります。 CSShoudiniは、CSSレンダリングの直接操作を可能にします。 3. Webassemblyブラウザーアプリケーションのパフォーマンスを最適化しますが、急な学習曲線があり、サーバーレスは開発を簡素化しますが、コールドスタートの問題の最適化が必要です。

HTML:構造、CSS:スタイル、JavaScript:動作HTML:構造、CSS:スタイル、JavaScript:動作Apr 18, 2025 am 12:09 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。1。HTMLは、Webページ構造を定義し、2。CSSはWebページスタイルを制御し、3。JavaScriptは動的な動作を追加します。一緒に、彼らは最新のウェブサイトのフレームワーク、美学、および相互作用を構築します。

HTMLの未来:ウェブデザインの進化とトレンドHTMLの未来:ウェブデザインの進化とトレンドApr 17, 2025 am 12:12 AM

HTMLの将来は、無限の可能性に満ちています。 1)新機能と標準には、より多くのセマンティックタグとWebComponentsの人気が含まれます。 2)Webデザインのトレンドは、レスポンシブでアクセス可能なデザインに向けて発展し続けます。 3)パフォーマンスの最適化により、応答性の高い画像読み込みと怠zyなロードテクノロジーを通じてユーザーエクスペリエンスが向上します。

HTML対CSS対JavaScript:比較概要HTML対CSS対JavaScript:比較概要Apr 16, 2025 am 12:04 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。HTMLはコンテンツ構造を担当し、CSSはスタイルを担当し、JavaScriptは動的な動作を担当します。 1。HTMLは、セマンティクスを確保するためにタグを使用してWebページの構造とコンテンツを定義します。 2。CSSは、セレクターと属性を介してWebページスタイルを制御して、美しく読みやすくします。 3。JavaScriptは、動的でインタラクティブな関数を実現するために、スクリプトを通じてWebページの動作を制御します。

See all articles

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン