tabularx inside tcolorbox not centered properly
I am trying to put a tabularx inside a tcolorbox but it's not centered properly, it's shifted slightly to the right. Here is the code I am using. I am using figure environment for the caption. Is there a better way to do this?
documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, right=1in, left=1in]{geometry}
usepackage{tabularx}
usepackage{tcolorbox}
usepackage{chemfig}
newcolumntype{Y}{>{centeringarraybackslash}X}
begin{document}
begin{figure}[ht]
centering
begin{tcolorbox}
begin{tabularx}{1linewidth}{YYYY}
{}chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabularx}
end{tcolorbox}
vspace{-1.5ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}

tables tabularx tcolorbox
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
I am trying to put a tabularx inside a tcolorbox but it's not centered properly, it's shifted slightly to the right. Here is the code I am using. I am using figure environment for the caption. Is there a better way to do this?
documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, right=1in, left=1in]{geometry}
usepackage{tabularx}
usepackage{tcolorbox}
usepackage{chemfig}
newcolumntype{Y}{>{centeringarraybackslash}X}
begin{document}
begin{figure}[ht]
centering
begin{tcolorbox}
begin{tabularx}{1linewidth}{YYYY}
{}chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabularx}
end{tcolorbox}
vspace{-1.5ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}

tables tabularx tcolorbox
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
2
it is centred but as yiou have forced all the columns to be the same width, entries with smaller structures have more space around them. (if you used |Y|Y|Y|Y| so it added rules it would be clearer that the table itself is centred but there is white space inside the first column
– David Carlisle
19 hours ago
add a comment |
I am trying to put a tabularx inside a tcolorbox but it's not centered properly, it's shifted slightly to the right. Here is the code I am using. I am using figure environment for the caption. Is there a better way to do this?
documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, right=1in, left=1in]{geometry}
usepackage{tabularx}
usepackage{tcolorbox}
usepackage{chemfig}
newcolumntype{Y}{>{centeringarraybackslash}X}
begin{document}
begin{figure}[ht]
centering
begin{tcolorbox}
begin{tabularx}{1linewidth}{YYYY}
{}chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabularx}
end{tcolorbox}
vspace{-1.5ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}

tables tabularx tcolorbox
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
I am trying to put a tabularx inside a tcolorbox but it's not centered properly, it's shifted slightly to the right. Here is the code I am using. I am using figure environment for the caption. Is there a better way to do this?
documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, right=1in, left=1in]{geometry}
usepackage{tabularx}
usepackage{tcolorbox}
usepackage{chemfig}
newcolumntype{Y}{>{centeringarraybackslash}X}
begin{document}
begin{figure}[ht]
centering
begin{tcolorbox}
begin{tabularx}{1linewidth}{YYYY}
{}chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
{}chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabularx}
end{tcolorbox}
vspace{-1.5ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}

tables tabularx tcolorbox
tables tabularx tcolorbox
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
edited 19 hours ago
Mico
275k30372760
275k30372760
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
asked 19 hours ago
TantonTanton
463
463
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
Tanton is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
2
it is centred but as yiou have forced all the columns to be the same width, entries with smaller structures have more space around them. (if you used |Y|Y|Y|Y| so it added rules it would be clearer that the table itself is centred but there is white space inside the first column
– David Carlisle
19 hours ago
add a comment |
2
it is centred but as yiou have forced all the columns to be the same width, entries with smaller structures have more space around them. (if you used |Y|Y|Y|Y| so it added rules it would be clearer that the table itself is centred but there is white space inside the first column
– David Carlisle
19 hours ago
2
2
it is centred but as yiou have forced all the columns to be the same width, entries with smaller structures have more space around them. (if you used |Y|Y|Y|Y| so it added rules it would be clearer that the table itself is centred but there is white space inside the first column
– David Carlisle
19 hours ago
it is centred but as yiou have forced all the columns to be the same width, entries with smaller structures have more space around them. (if you used |Y|Y|Y|Y| so it added rules it would be clearer that the table itself is centred but there is white space inside the first column
– David Carlisle
19 hours ago
add a comment |
1 Answer
1
active
oldest
votes
Since line breaking inside the cells is neither expected nor desirable, and since the natural widths of the four columns are quite different, using a tabularx environment seems wrong. I suggest you use a tabular* environment instead.

documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, hmargin=1in]{geometry}
usepackage{tcolorbox,chemfig}
begin{document}
begin{figure}[ht]
setlengthtabcolsep{0pt} % let LaTeX figure out intercolumn spacing
begin{tcolorbox}
begin{tabular*}{1linewidth}{@{extracolsep{fill}} cccc }
chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabular*}
end{tcolorbox}
vspace{-2ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
1
@Tanton - One of the main differences betweentabularxandtabular*is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, thetabular*environments seems to be the more natural device to employ.
– Mico
18 hours ago
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Tanton is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f470024%2ftabularx-inside-tcolorbox-not-centered-properly%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Since line breaking inside the cells is neither expected nor desirable, and since the natural widths of the four columns are quite different, using a tabularx environment seems wrong. I suggest you use a tabular* environment instead.

documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, hmargin=1in]{geometry}
usepackage{tcolorbox,chemfig}
begin{document}
begin{figure}[ht]
setlengthtabcolsep{0pt} % let LaTeX figure out intercolumn spacing
begin{tcolorbox}
begin{tabular*}{1linewidth}{@{extracolsep{fill}} cccc }
chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabular*}
end{tcolorbox}
vspace{-2ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
1
@Tanton - One of the main differences betweentabularxandtabular*is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, thetabular*environments seems to be the more natural device to employ.
– Mico
18 hours ago
add a comment |
Since line breaking inside the cells is neither expected nor desirable, and since the natural widths of the four columns are quite different, using a tabularx environment seems wrong. I suggest you use a tabular* environment instead.

documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, hmargin=1in]{geometry}
usepackage{tcolorbox,chemfig}
begin{document}
begin{figure}[ht]
setlengthtabcolsep{0pt} % let LaTeX figure out intercolumn spacing
begin{tcolorbox}
begin{tabular*}{1linewidth}{@{extracolsep{fill}} cccc }
chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabular*}
end{tcolorbox}
vspace{-2ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
1
@Tanton - One of the main differences betweentabularxandtabular*is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, thetabular*environments seems to be the more natural device to employ.
– Mico
18 hours ago
add a comment |
Since line breaking inside the cells is neither expected nor desirable, and since the natural widths of the four columns are quite different, using a tabularx environment seems wrong. I suggest you use a tabular* environment instead.

documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, hmargin=1in]{geometry}
usepackage{tcolorbox,chemfig}
begin{document}
begin{figure}[ht]
setlengthtabcolsep{0pt} % let LaTeX figure out intercolumn spacing
begin{tcolorbox}
begin{tabular*}{1linewidth}{@{extracolsep{fill}} cccc }
chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabular*}
end{tcolorbox}
vspace{-2ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}
Since line breaking inside the cells is neither expected nor desirable, and since the natural widths of the four columns are quite different, using a tabularx environment seems wrong. I suggest you use a tabular* environment instead.

documentclass[12pt, a4paper]{article}
usepackage[top=1in, bottom=1.5in, hmargin=1in]{geometry}
usepackage{tcolorbox,chemfig}
begin{document}
begin{figure}[ht]
setlengthtabcolsep{0pt} % let LaTeX figure out intercolumn spacing
begin{tcolorbox}
begin{tabular*}{1linewidth}{@{extracolsep{fill}} cccc }
chemfig{C(-[:90,.6]H)(-[:180,.6]H)(-[:270,.6]H) -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:135,.6]H)(-[:225,.6]H) =[,.6]C=[,.6]C(-[:45,.6]H)(-[:315,.6]H)} &
chemfig{C(-[:180,.6]H) ~[,.6]C -[,.6]C(-[:90,.6]H)(-[:0,.6]H)(-[:270,.6]H)} \[5ex]
(a) Ethane & (b) Ethylene & (c) Propadiene & (d) Propyne\
end{tabular*}
end{tcolorbox}
vspace{-2ex}
caption{caption}
label{fig:my_label}
end{figure}
end{document}
edited 18 hours ago
answered 19 hours ago
MicoMico
275k30372760
275k30372760
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
1
@Tanton - One of the main differences betweentabularxandtabular*is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, thetabular*environments seems to be the more natural device to employ.
– Mico
18 hours ago
add a comment |
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
1
@Tanton - One of the main differences betweentabularxandtabular*is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, thetabular*environments seems to be the more natural device to employ.
– Mico
18 hours ago
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
Thank you so much! It was bugging me for a long time.
– Tanton
18 hours ago
1
1
@Tanton - One of the main differences between
tabularx and tabular* is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, the tabular* environments seems to be the more natural device to employ.– Mico
18 hours ago
@Tanton - One of the main differences between
tabularx and tabular* is that whereas the former works by adjusting the widths of the columns, the latter works by adjusting the amount of intercolumn whitespace. Since there is no reason for why the 4 columns should occupy equal widths, the tabular* environments seems to be the more natural device to employ.– Mico
18 hours ago
add a comment |
Tanton is a new contributor. Be nice, and check out our Code of Conduct.
Tanton is a new contributor. Be nice, and check out our Code of Conduct.
Tanton is a new contributor. Be nice, and check out our Code of Conduct.
Tanton is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f470024%2ftabularx-inside-tcolorbox-not-centered-properly%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
it is centred but as yiou have forced all the columns to be the same width, entries with smaller structures have more space around them. (if you used |Y|Y|Y|Y| so it added rules it would be clearer that the table itself is centred but there is white space inside the first column
– David Carlisle
19 hours ago