我怎样才能将 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
编写。\captionof
capt-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}