我在这里得到了这个美丽的答案 表格的双单元格边框(针对整个列)使用线包装,并希望在布局方面取得更大的进步。
@StefanH 的当前代码是:
\documentclass[12pt]{article}
\usepackage{hhline}
\begin{document}
\begin{tabular}{|c||c|c|c|}
\hhline{-||---}
& headline1 & headline2 & headline3 \\
\hhline{=::===}
row1 & a & b & c \\
\hhline{-||---}
row2 & d & e & f \\
\hhline{-||---}
row3 & g & h & i \\
\hhline{-||---}
\end{tabular}
\end{document}
但我想要更进一步,让左上角的单元格隐藏/没有边框,所以它应该看起来应该像这样:
我使用以下代码来管理它:
\documentclass[12pt]{article}
\usepackage{hhline}
\begin{document}
\begin{tabular}{|c||c|c|c|}
\hhline{~|---}
\multicolumn{1}{c|}{} & headline1 & headline2 & headline3 \\
\hhline{-::===}
row1 & a & b & c \\
\hhline{-||---}
row2 & d & e & f \\
\hhline{-||---}
row3 & g & h & i \\
\hhline{-||---}
\end{tabular}
\end{document}
但是,如果你能看到,有一个小点(边框剩下的),我也想隐藏它:
有什么办法可以摆脱它吗?
答案1
我不会说哪种tabular
看起来最好,但我会尽力帮助您掩盖难看的点。我通过在row1
和后续&
分隔符之间添加线条来实现这一点。它必须添加在那里,因为是第二行代码将在第一行中放置该点。我所做的是放置一个零宽度,\smash
ed\rule
来掩盖该点。我这样做是red!5
为了让您可以看到它的影响。将该颜色更改为white
,您就可以开始了。14pt
可能需要根据单元格内容的宽度进行调整。
\documentclass[12pt]{article}
\usepackage{hhline,xcolor}
\begin{document}
\begin{tabular}{|c||c|c|c|}
\hhline{~|---}
\multicolumn{1}{c|}{} & headline1 & headline2 & headline3 \\
\hhline{-::===}
row1
% THE FOLLOWING LINE WAS ADDED, CHANGE red!5 TO white, ALTER 14pt TO SUIT DATA
\unskip\textcolor{red!5}{\makebox[0pt]{\smash{\rule[12pt]{14pt}{3pt}}}}
%
& a & b & c \\
\hhline{-||---}
row2 & d & e & f \\
\hhline{-||---}
row3 & g & h & i \\
\hhline{-||---}
\end{tabular}
\end{document}
另一种方法是保留tabular
原来的,然后\stackinset
在\rule
完整的 上放置tabular
,从左上角开始:
\documentclass[12pt]{article}
\usepackage{hhline,xcolor,stackengine}
\begin{document}
\stackinset{l}{}{t}{}{\textcolor{red!5}{\rule{37pt}{16pt}}}{%
\begin{tabular}{|c||c|c|c|}
\hhline{~|---}
\multicolumn{1}{c|}{} & headline1 & headline2 & headline3 \\
\hhline{-::===}
row1
& a & b & c \\
\hhline{-||---}
row2 & d & e & f \\
\hhline{-||---}
row3 & g & h & i \\
\hhline{-||---}
\end{tabular}%
}
\end{document}
只要第一行保持一行,就可以设置一个宏来提供帮助。在这种情况下,\coverup{<widest col1 entry>}{<original tabular>}
可以调用。
\documentclass[12pt]{article}
\usepackage{hhline,xcolor,stackengine}
\newcommand\coverup[2]{%
\stackinset{l}{\fboxrule}{t}{2\fboxrule}{\fboxsep=0pt\colorbox{red!5}{%
\kern2\tabcolsep \phantom{#1}\strut}}{\ignorespaces#2\unskip}}
\begin{document}
\coverup{row1}{
\begin{tabular}{|c||c|c|c|}
\hhline{~|---}
\multicolumn{1}{c|}{} & headline1 & headline2 & headline3 \\
\hhline{-::===}
row1
& a & b & c \\
\hhline{-||---}
row2 & d & e & f \\
\hhline{-||---}
row3 & g & h & i \\
\hhline{-||---}
\end{tabular}
}
\end{document}
答案2
请刹车,看看少即是多。在设计表格时考虑到这一点,您可以获得:
上面的表格真的比你的表格更难读吗?
\documentclass[12pt]{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{*{4}{l}}
\toprule
& headline1 & headline2 & headline3 \\
\midrule
row 1 & aaaaaaaa & bbbbbbbb & ccccccc \\
row 2 & dddddddd & eeeeeeee & ffffffff \\
row 3 & gggggggg & hhhhhhhh & iiiiiiii \\
row 4 & jjjjjjjj & kkkkkkkk & llllllll \\
row 5 & mmmmmmmm & nnnnnnnn & oooooooo \\
\addlinespace
row 1 & aaaaaaaa & bbbbbbbb & ccccccc \\
row 2 & dddddddd & eeeeeeee & ffffffff \\
row 3 & gggggggg & hhhhhhhh & iiiiiiii \\
row 4 & jjjjjjjj & kkkkkkkk & llllllll \\
row 5 & mmmmmmmm & nnnnnnnn & oooooooo \\
\addlinespace
row 1 & aaaaaaaa & bbbbbbbb & ccccccc \\
row 2 & dddddddd & eeeeeeee & ffffffff \\
row 3 & gggggggg & hhhhhhhh & iiiiiiii \\
row 4 & jjjjjjjj & kkkkkkkk & llllllll \\
row 5 & mmmmmmmm & nnnnnnnn & oooooooo \\
\bottomrule
\end{tabular}
\end{document}
答案3
这里还有另外两种可能性,更具装饰性:
\documentclass[12pt]{article}
\usepackage[table, svgnames]{xcolor}
\usepackage{hhline, booktabs}
\begin{document}
\begin{tabular}{| >{\columncolor{Gainsboro!50!Lavender}}l||c|c|c|}
\hhline{~|---|}
\rowcolor{Gainsboro!50!Lavender} \multicolumn{1}{c!{}|}{\cellcolor{PapayaWhip}} & \multicolumn{1}{c}{headline1} & headline2 & headline3 \\
\hhline{->{\arrayrulecolor{white}}t :>{\arrayrulecolor{black}}:>{\arrayrulecolor{black}}===:}
row1 & a & b & c \\
\hhline{-||---|}
row2 & d & e & f \\
\hhline{-||---|}
row3 & g & h & i \\
\hhline{-||---|}
\end{tabular}
\vspace{1cm}
\setlength\extrarowheight{2pt}
\setlength{\arrayrulewidth}{0.6pt}
\arrayrulecolor{Gainsboro!50!Lavender}
\begin{tabular}{>{\columncolor{Gainsboro!50!Lavender}}l|!{\color{RoyalBlue}\vrule width 0.6pt}c|c|c!{\color{RoyalBlue}\vrule width 0.6pt}}
\rowcolor{Gainsboro!50!Lavender} \multicolumn{1}{c!{\hspace{\dimexpr\doublerulesep + \arrayrulewidth}}}{\cellcolor{PapayaWhip}} & \multicolumn{1}{!{\hspace{-\arrayrulewidth}}c}{headline1} & \multicolumn{1}{c}{headline2} &\multicolumn{1}{c}{ headline3} \\\addlinespace[0.5ex]
\hhline{-|>{\arrayrulecolor{RoyalBlue}}|---|}
row1 & a & b & c \\
\hhline{>{\arrayrulecolor{Gainsboro!50!Lavender}}-|>{\arrayrulecolor{RoyalBlue}}|---|}
row2 & d & e & f \\
\hhline{>{\arrayrulecolor{Gainsboro!50!Lavender}}-|>{\arrayrulecolor{RoyalBlue}}|---|}
row3 & g & h & i \\
\hhline{>{\arrayrulecolor{Gainsboro!50!Lavender}}-|>{\arrayrulecolor{RoyalBlue}}|---|}
\end{tabular}
\end{document}