ブックタブの行/セルの色のオーバーフローを防ぐにはどうすればいいですか?

ブックタブの行/セルの色のオーバーフローを防ぐにはどうすればいいですか?

に基づくこの答え背景色付きの行を簡単に作成する方法をご存知でしょう。これは にも適用されますbooktabs

編集:デフォルトでは次のようになります\begin{tabular}{lccc}:
パディング付き

しかし、私たちはそれを変更したいと思っています... を
使用する場合、問題が発生します@{}。 を使用すると@{}、テーブルの左側と右側が少し小さくなり、非常にプロフェッショナルに見えます。

通常は…色付きの行の場合は、テーブルから(水平方向に)オーバーフローするため、そうはなりません。

次に例を示します。

\documentclass{article}
\usepackage{array,graphicx}
\usepackage{booktabs}
\usepackage[dvipsnames, table]{xcolor}

\begin{document}

    \begin{table} \centering
        \rowcolors{1}{white}{yellow}
        
        \begin{tabular}{@{}l ccc@{}}
            & Head & Head & Head \\
            \cmidrule{1-4}
            line 1 & Y & N & Y \\
            line 2 & Y & N & Y \\
            line 3 & Y & N & Y \\
            line 4 & Y & N & Y \\
            \rowcolor{red}
            line 5 & Y & N & Y \\
            \cellcolor{green}%
            line 6 & Y & N & 
            \cellcolor{green}%
            Y \\
            \cmidrule{1-4}
        \end{tabular}
    \end{table}

\end{document}

緑、黄色、赤の列の誇張した例

答え1

重複してすみません、今見つけたこの答え非常に複雑に見えますが (おそらくもっと良い解決策があるでしょう)、ここでは私の例に合わせて調整します。

\documentclass{article}
\usepackage{array,graphicx}
\usepackage{booktabs}
\usepackage[dvipsnames, table]{xcolor}

\begin{document}

    \begin{table} \centering
        \rowcolors{1}{white}{yellow}
        
        \begin{tabular}{>{\kern-\tabcolsep}l ccc<{\kern-\tabcolsep}}
            & Head & Head & Head \\
            \cmidrule{1-4}
            line 1 & Y & N & Y \\
            line 2 & Y & N & Y \\
            line 3 & Y & N & Y \\
            line 4 & Y & N & Y \\
            \rowcolor{red}
            line 5 & Y & N & Y \\
            \cellcolor{green}%
            line 6 & Y & N & 
            \cellcolor{green}%
            Y \\
            \cmidrule{1-4}
        \end{tabular}
    \end{table}

\end{document}

今は機能している

関連情報