Estou com um problema tabularx
em um tcolorbox
ambiente, aqui está o código:
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[most]{tcolorbox}
\usepackage{tabularx}
\usepackage{array}
\usepackage{colortbl}
\tcbuselibrary{skins}
\begin{document}
\newcolumntype{b}{X}
\newcolumntype{i}{>{\hsize=.005\hsize}X}
\newcolumntype{s}{>{\hsize=.15\hsize}X}
\begin{table}
\begin{center}
\begin{tcolorbox}[colback=black!0.8!white,colframe=black!4!white,
colbacktitle=gray!40!white, coltitle=black,width=1.0\linewidth,tabularx={ibs}]
\multicolumn{2}{b}{Number} & 11 \\\hline
& part a & 38 \\\hline
& part b & 4 \\\hline
& part c & 2 \\\hline\hline
\multicolumn{2}{l}{Blabla 1} & 217 \\\hline
\multicolumn{2}{l}{Blabla 2} & 20 \\\hline
\multicolumn{2}{l}{Blabla 1} & 105 \\\hline
\multicolumn{2}{l}{Blabla 1} & 3100 \\\hline
\multicolumn{2}{l}{Blabla 1} & 367
\end{tcolorbox}
\end{center}
\end{table}
\vspace{3cm}
\begin{center}
\begin{tabularx}{1.0\linewidth}{ibs}
\multicolumn{2}{b}{Number} & 11 \\\hline
& part a & 38 \\\hline
& part b & 4 \\\hline
& part c & 2 \\\hline\hline
\multicolumn{2}{l}{Blabla 1} & 217 \\\hline
\multicolumn{2}{l}{Blabla 2} & 20 \\\hline
\multicolumn{2}{l}{Blabla 1} & 105 \\\hline
\multicolumn{2}{l}{Blabla 1} & 3100 \\\hline
\multicolumn{2}{l}{Blabla 1} & 367\end{tabularx}
\end{center}
\vspace{3cm}
\end{document}
Em um tabularx
ambiente normal, a tabela está correta (ver 2ª tabela). Porém, se eu fizer o mesmo em um tcolorbox
ambiente (1ª tabela), a primeira linha, que contém um multicolumn
, não funciona, enquanto as outras 5 aparecem, se passar todos os erros.
O erro é (aparece 6x):
! Misplaced \omit.
\multispan ->\omit
\@multispan
l.31 \end{tcolorbox}
?
Tentei brincar com o 'tamanho' da primeira multicoluna mas não consegui.
Qualquer ajuda é muito apreciada. Obrigado.
Responder1
É mais fácil simplesmente colocar \multicolumn
na segunda linha, deixando uma primeira linha vazia que você pode fazer backup com um vspace negativo. Também corrigi suas ibs
definições.
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[most]{tcolorbox}
\usepackage{tabularx}
\usepackage{array}
\usepackage{colortbl}
\tcbuselibrary{skins}
\begin{document}
\newcolumntype{b}{>{\hsize=2.8\hsize}X}
\newcolumntype{i}{>{\hsize=.05\hsize}X}
\newcolumntype{s}{>{\hsize=.15\hsize}X}
\begin{table}
\begin{center}
\errorcontextlines400
\tracingonline2
%\tracingall
\begin{tcolorbox}[colback=black!0.8!white,colframe=black!4!white,
colbacktitle=gray!40!white, coltitle=black,width=1.0\linewidth,tabularx={ibs}]%
\\
\noalign{\vspace{-\normalbaselineskip}}
\multicolumn{2}{b}{Number}
& 11 \\\hline
& part a & 38 \\\hline
& part b & 4 \\\hline
& part c & 2 \\\hline\hline
\multicolumn{2}{l}{Blabla 1} & 217 \\\hline
\multicolumn{2}{l}{Blabla 2} & 20 \\\hline
\multicolumn{2}{l}{Blabla 1} & 105 \\\hline
\multicolumn{2}{l}{Blabla 1} & 3100 \\\hline
\multicolumn{2}{l}{Blabla 1} & 367
\end{tcolorbox}
\end{center}
\end{table}
\vspace{3cm}
\begin{center}
\begin{tabularx}{1.0\linewidth}{ibs}
\multicolumn{2}{b}{Number} & 11 \\\hline
& part a & 38 \\\hline
& part b & 4 \\\hline
& part c & 2 \\\hline\hline
\multicolumn{2}{l}{Blabla 1} & 217 \\\hline
\multicolumn{2}{l}{Blabla 2} & 20 \\\hline
\multicolumn{2}{l}{Blabla 1} & 105 \\\hline
\multicolumn{2}{l}{Blabla 1} & 3100 \\\hline
\multicolumn{2}{l}{Blabla 1} & 367\end{tabularx}
\end{center}
\vspace{3cm}
\end{document}
Responder2
Este problema foi resolvido com tcolorbox v4.20
. Agora, multicolumn
a opção pode ser usada na linha superior sem problemas.
Código do OP
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[most]{tcolorbox}
\usepackage{tabularx}
\usepackage{array}
\usepackage{colortbl}
\tcbuselibrary{skins}
\begin{document}
\newcolumntype{b}{X}
\newcolumntype{i}{>{\hsize=.005\hsize}X}
\newcolumntype{s}{>{\hsize=.15\hsize}X}
\begin{table}
\begin{center}
\begin{tcolorbox}[colback=black!0.8!white,colframe=black!4!white,
colbacktitle=gray!40!white, coltitle=black,width=1.0\linewidth,tabularx={ibs}]
\multicolumn{2}{b}{Number} & 11 \\\hline
& part a & 38 \\\hline
& part b & 4 \\\hline
& part c & 2 \\\hline\hline
\multicolumn{2}{l}{Blabla 1} & 217 \\\hline
\multicolumn{2}{l}{Blabla 2} & 20 \\\hline
\multicolumn{2}{l}{Blabla 1} & 105 \\\hline
\multicolumn{2}{l}{Blabla 1} & 3100 \\\hline
\multicolumn{2}{l}{Blabla 1} & 367
\end{tcolorbox}
\end{center}
\end{table}
\vspace{3cm}
\begin{center}
\begin{tabularx}{1.0\linewidth}{ibs}
\multicolumn{2}{b}{Number} & 11 \\\hline
& part a & 38 \\\hline
& part b & 4 \\\hline
& part c & 2 \\\hline\hline
\multicolumn{2}{l}{Blabla 1} & 217 \\\hline
\multicolumn{2}{l}{Blabla 2} & 20 \\\hline
\multicolumn{2}{l}{Blabla 1} & 105 \\\hline
\multicolumn{2}{l}{Blabla 1} & 3100 \\\hline
\multicolumn{2}{l}{Blabla 1} & 367\end{tabularx}
\end{center}
\vspace{3cm}
\end{document}
produz o resultado esperado sem qualquer mensagem de erro