![使用 makecell 时如何为行着色?](https://linux22.com/image/340350/%E4%BD%BF%E7%94%A8%20makecell%20%E6%97%B6%E5%A6%82%E4%BD%95%E4%B8%BA%E8%A1%8C%E7%9D%80%E8%89%B2%EF%BC%9F.png)
我想给表格的行添加颜色,使其更易于阅读。有些单元格有多行,所以我使用 makecell 包,并计划使用 xcolor 进行着色,但它们发生冲突。示例代码:
\documentclass{article}
\usepackage{makecell}
%\usepackage[table]{xcolor}
\usepackage{bpchem}
\begin{document}
%\rowcolors[1]{gray!25}{white}
\begin{tabular}{ccc}
\BPChem{H\_2O}&\BPChem{H\_3N}&\BPChem{H\_4C}\\
\makecell{\BPChem{H\_2O\_2}\\unstable}&\BPChem{H\_4N\_2}&\BPChem{H\_6C\_2}\\
not exists&\makecell{\BPChem{H\_5N\_3}\\unstable}&\BPChem{H\_8C\_3}\\
\end{tabular}
\end{document}
答案1
该\rowcolors
命令需要 3 个强制参数。由于我没有 bpchem
安装,所以我加载了chemformula
,它无论如何都有更简单的复合语法。我擅自将灰色阴影更改为更美观的颜色,并在行顶部添加了一些垂直填充:
\documentclass{article}
\usepackage{makecell}
\usepackage[table, svgnames]{xcolor}
\usepackage{chemformula}
\begin{document}
\begin{table}\setlength\extrarowheight{2pt}
\rowcolors{1}{Lavender!80!gray}{white}
\begin{tabular}{ccc}
\ch{H2O}&\ch{H3N}&\ch{H4C}\\
\makecell[t]{\ch{H2O2}\\unstable}&\ch{H4N2}&\ch{H6C2}\\
not exists&\makecell[t]{\ch{H5N3}\\unstable}&\ch{H8C3}\\
\end{tabular}
\end{table}
\end{document}
答案2
使用({NiceTabular}
您nicematrix
将不会在彩色面板中看到任何白线)。
\documentclass{article}
\usepackage{nicematrix}
\usepackage{chemformula}
\begin{document}
\begin{table}\setlength\extrarowheight{2pt}
\begin{NiceTabular}{ccc}
\CodeBefore
\rowcolors{1}{gray!15}{}
\Body
\ch{H2O}&\ch{H3N}&\ch{H4C}\\
\Block[t]{}{\ch{H2O2}\\unstable}&\ch{H4N2}&\ch{H6C2}\\
not exists&\Block[t]{}{\ch{H5N3}\\unstable}&\ch{H8C3}\\
\end{NiceTabular}
\end{table}
\end{document}
您需要多次编译(因为nicematrix
在后台使用 PGF/Tikz 节点)。