Tabularx はページの全幅に広がりません

Tabularx はページの全幅に広がりません

ページの全幅にまたがり、1つの列が他の列の半分のサイズになる表を作成したいと考えています。提案されているようにここ、私はtabularxそのために使用します。しかし、何らかの理由で、テーブルがページ全体に広がりません。以下の MWE では、最後の列のセル幅が適切ではないことが視覚化されるように、一番上の行に色を付けました。

\documentclass{article}
\usepackage{colortbl}
\usepackage{tabularx}
\newcolumntype{Y}{>{\hsize=0.5\hsize}X}  % Half the size of X.

\begin{document}

\begin{tabularx}{\linewidth}{XXY}  % E.g., XYY does work...
    \hline
    % The first row is given a color to clearly show the cell width.
    \rowcolor{blue} A & B & Lorem ipsum dolor sit amet\\ \hline
    a & b & c \\ \hline
\end{tabularx}

\end{document}

セル幅が間違っている表形式

コードを見るとわかるように、X通常の列には を使用し、Y半分のサイズの列には を使用しています。 columns を使用するとXYY、うまく機能しているようです。したがって、私にはかなりランダムに思えます。何が間違っているのか説明してもらえますか? 希望どおりに列を作成する正しい方法は何でしょうか (つまり、40%、40%、20%)?

答え1

の係数の使い方が間違っています\hsize=...。これらは実際には比例係数ではなく、重心係数です。つまり、その合計は X 型列の合計数と等しくなければなりません。言い換えると、ここでは線形システム 2x+y=3、x=2y を解く必要があります。

係数の結果を正しい係数の結果と比較します。各列の正確な幅を視覚化するために垂直線を追加しました。

\documentclass{article}
\usepackage{colortbl}
\usepackage{tabularx}
\newcolumntype{Y}{>{\hsize=0.5\hsize}X}  % Half the size of X.

\begin{document}

\begin{tabularx}{\linewidth}{XXY}  % E.g., XYY does work...
    \hline
    % The first row is given a color to clearly show the cell width.
    \rowcolor{blue} A & B & Lorem ipsum dolor sit amet\\ \hline
    a & b & c \\ \hline
\end{tabularx}

\end{document}

ここに画像の説明を入力してください

関連情報