我有这个表,想更改单元格的颜色。我已将颜色定义为“橙色”、“深灰色”和“浅灰色”。我将顶部标题行设为橙色,并希望第一列中的其余单元格为深灰色,其他列中的其余单元格为浅灰色。我该怎么做?
\centering
\begin{tabularx}{1\textwidth} {
| >{\centering\arraybackslash}X
| >{\centering\arraybackslash}X
| >{\centering\arraybackslash}X | }
\hline
\rowcolor{Orange}\multicolumn{3}{|c|}{\textcolor{white}{\textbf{Title}}} \\
\hline
item 11 & item 12 & item 13 \\
\hline
item 21 & item 22 & item 23 \\
\hline
\end{tabularx}
答案1
如果您想为背景着色,请按以下步骤操作:
\documentclass{article}
\usepackage[table, svgnames]{xcolor}
\usepackage{tabularx}
\begin{document}
\centering
\begin{tabularx}{1\textwidth} {
| >{\centering\arraybackslash\columncolor{DarkGrey}}X
| >{\centering\arraybackslash\columncolor{LightGrey}}X
| >{\centering\arraybackslash\columncolor{LightGrey}}X | }
\hline
\rowcolor{Orange}\multicolumn{3}{|c|}{\textcolor{white}{\textbf{Title}}} \\
\hline
item 11 & item 12 & item 13 \\
\hline
item 21 & item 22 & item 23 \\
\hline
\end{tabularx}
\end{document}
答案2
使用 tabularray 包
\documentclass{article}
\usepackage{tabularray}
\usepackage{xcolor}
\begin{document}
\begin{tblr}
{
hlines,vlines,
colspec=*{3}{X[c,bg=gray!25]},
column{1} = {bg=gray!75},
row{1} = {bg=orange, fg=white, font=\bfseries},
cell{1}{1} = {c=3}{c},%<-- the multicol
}
Title\\
item 11 & item 12 & item 13 \\
item 21 & item 22 & item 23
\end{tblr}
\end{document}
答案3
与。{NiceTabular}
nicematrix
\documentclass{article}
\usepackage{nicematrix}
\usepackage{xcolor}
\begin{document}
\begin{NiceTabular}{X[c]X[c]X[c]}[hvlines]
\CodeBefore
\columncolor{gray!75}{1}
\columncolor{gray!25}{2,3}
\rowcolor{orange}{1}
\Body
\Block{1-3}{\color{white}\sffamily\bfseries Title}\\
item 11 & item 12 & item 13 \\
item 21 & item 22 & item 23
\end{NiceTabular}
\end{document}
您需要多次编译(因为nicematrix
在后台使用 PGF/Tikz 节点)。