色付きの背景を持つ複数列の表の水平線を削除する

色付きの背景を持つ複数列の表の水平線を削除する

複数行 / セルカラー設定で水平線を削除してみます:

\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}

今のところはこんな感じです。3 回目の試みは見た目は良くなりましたが、まだ良くありません。何かアドバイスはありますか?

ここに画像の説明を入力してください

答え1

複数行セルの非常に細い線を完全に削除するための回避策を示します。また、xcolorオプションをロードして[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}

ここに画像の説明を入力してください

関連情報