我想强制表格中的列宽为零,即使列中有文本。
我追求的是这样的:
所以我尝试代码
\begin{tabular}{|c|>{\centering}p{0.cm}|c|}
\hline 1 & & \tabularnewline
\hline & 2 & \tabularnewline
\hline & & 3 \tabularnewline
\hline \end{tabular}
产生
@{}
我可以使用删除或更改表格边框间距删除 2 之前的填充,但这对我没有太大帮助。
有任何想法吗?
我猜可以使用负空间来玩游戏,或者用tikz
...绘制它,但感觉有点麻烦。
附言:实际上,我只是想在表格边框上放置符号,所以如果有人知道如何做到这一点,我也会同样高兴。
答案1
您必须0pt
为该单元格使用宽度为 的框2
。此外,您需要在该列规范周围添加@{\hspace{-.5\arrayrulewidth}}
和@{\hspace{-.5\arrayrulewidth}}
。使用负空间的原因是将第二个管道移至|
第一个管道的位置,以便它们成为单个管道,并且文本将围绕管道居中。
\documentclass[12pt]{article}
\usepackage{array}
\begin{document}
\begin{tabular}{|c|@{\hspace{-.5\arrayrulewidth}}c@{\hspace{-.5\arrayrulewidth}}|c|}
\hline 1 & & \tabularnewline
\hline & \makebox[0pt]{2} & \tabularnewline
\hline & & 3 \tabularnewline
\hline \end{tabular}
\end{document}