
我嘗試刪除多行/單元格顏色設定中的水平線:
\documentclass{article}
\usepackage{hhline,array,multirow,xcolor,colortbl}
\begin{document}
\parindent0pt
\begin{tabular}{@{}|p{1cm}|l@{}}
\cellcolor{lightgray} & \cellcolor{lightgray} b \\
\cline{2-2}
\multirow{-2}{\linewidth}{\cellcolor{lightgray} a }& \cellcolor{lightgray} d
\end{tabular}
\begin{tabular}{@{}|p{1cm}|l}
\cellcolor{lightgray} & \cellcolor{lightgray} b \\
\hhline{~-}
\multirow{-2}{\linewidth}{\cellcolor{lightgray} a }& \cellcolor{lightgray} d
\end{tabular}
\begin{tabular}{|p{1cm}|l}
\cellcolor{lightgray} & \cellcolor{lightgray} b \\
\hhline{>{\arrayrulecolor{lightgray}}->{\arrayrulecolor{black}}-}
\multirow{-2}{\linewidth}{\cellcolor{lightgray} a }& \cellcolor{lightgray} d
\end{tabular}
\end{document}
這就是我到目前為止所得到的。第三次嘗試看起來更好,但仍然不好。有什麼建議嗎?
答案1
這是一種解決方法,可以完全刪除多行單元格中的非常細的線條。我還加載了xcolor
option [table]
,這樣就不必加載了,並且我在表格序言中colortbl
稍微簡化了程式碼 。>{\columncolor{lightgray}}
最後一句話;當你使用cellcolor{some colour}
,請在儲存格內容之後立即寫入沒有任何空間,因為該空間將添加到內容中並放大單元格。
比較:
\documentclass{article}
\usepackage{hhline, array, multirow}
\usepackage[table]{xcolor}
\begin{document}
\parindent0pt
\begin{tabular}{|>{\columncolor{lightgray}}p{1cm}|>{\columncolor{lightgray}}l}
\cellcolor{lightgray} &\cellcolor{lightgray}b \\
\hhline{|>{\arrayrulecolor{lightgray}}->{\arrayrulecolor{black}}|-}
\multirow{-2}{\linewidth}{\cellcolor{lightgray} a }&\cellcolor{lightgray} d
\end{tabular}
\bigskip
\begin{tabular}{|>{\columncolor{lightgray}}p{1cm}|>{\columncolor{lightgray}}l}
& b \\
\noalign{\vskip-0.1pt}
\hhline{|>{\arrayrulecolor{lightgray}}->{\arrayrulecolor{black}}|-}
\noalign{\vskip-0.1pt}
\multirow{-2}{\linewidth}{ a }&\cellcolor{lightgray}d
\end{tabular}
\end{document}