盒子内的 Tabularx

盒子内的 Tabularx

我怎样才能将 tabularx 对象放入框内?这是我的代码:

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tcolorbox}
\usepackage{tabularx}

\begin{document}
\begin{tcolorbox}[colback=blue!5!white,colframe=blue!75!black,title=Title] Text

\tcblower

\begin{table}
\caption{\textbf{Title of the table.}}
\fontsize{7}{9}\selectfont
\centering
\renewcommand{\arraystretch}{1.5}
\begin{tabularx}{\textwidth}{bb}
\hline
\textbf{Model} & \textbf{Description}\\
\hline
A & B\\
C & E\\
\hline
\end{tabularx}
\label{table2}
\end{table}
\end{tcolorbox}
\end{document}

错误信息是:

LaTeX 错误:不在外部模式中。

因为无法在框内写入表格。即使我删除表格环境并仅保留 tabularx 环境,我也会收到相同的错误。难道不能在框内写入表格吗?

答案1

表格环境总是希望位于最外层定义但无论如何它都会出现在框内部:

\documentclass[11pt,a4paper]{article} \usepackage[utf8]{inputenc} \usepackage[english]{babel} \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{tcolorbox} \usepackage{tabularx}

\begin{document} 


\begin{table}
\begin{tcolorbox}[colback=blue!5!white,colframe=blue!75!black,title=Title] Text

\tcblower

\fontsize{7}{9}\selectfont
\centering
\renewcommand{\arraystretch}{1.5}
\begin{tabularx}{\textwidth}{ll}
\hline
\textbf{Model} & \textbf{Description}\\
\hline
A & B\\
C & E\\
\hline
\end{tabularx}
\caption{\textbf{Title of the table.}}
\label{table2}
\end{tcolorbox}
\end{table}


\end{document}

在此处输入图片描述

编辑:还请注意,tabularx通常只需要{l}和/或{X}不需要更复杂的对齐/宽度定义。

答案2

Atable是浮动环境,通常包含tabular。我猜你想要的只是一个tabular带有 的caption,它可以轻松编写,而不必考虑外部table环境。在这种情况下,可以使用来自包的命令caption编写。\captionofcapt-of

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tcolorbox}
\usepackage{tabularx}
\usepackage{capt-of}

\begin{document}
\begin{tcolorbox}[colback=blue!5!white,colframe=blue!75!black,title=Title] Text

\tcblower
\captionof{table}{\textbf{Title of the table.}}\label{table2}
\fontsize{7}{9}\selectfont
\centering
\renewcommand{\arraystretch}{1.5}
\begin{tabularx}{\textwidth}{lX}
\hline
\textbf{Model} & \textbf{Description}\\
\hline
A & B\\
C & E\\
\hline
\end{tabularx}
\end{tcolorbox}
\end{document}

在此处输入图片描述

相关内容