Align in chemistry

Use an array, instead.

\documentclass{article}
\usepackage{amsmath}
\usepackage[version=4]{mhchem}

\begin{document}

\begin{equation*}
\begin{array}{
  @{}
  l
  @{\hspace{3em}}
  c % first column
  @{\:}c@{\:} % plus
  c % second column
  @{\;}c@{\;} % reaction
  c % third column
  @{}
}
\text{Abcdefg} & \ce{H2}     & + & \ce{I2}     & \ce{<=>} & 2\ce{HI}\\
\text{Abcde}   & 4.05        &   & 4.65        &          & 0 \\
\text{Abc}     & 4.05-\alpha &   & 4.65-\alpha &          & 2\alpha
\end{array}
\end{equation*}

\end{document}

enter image description here


You can also do it with eqparbox:

\documentclass{article}
\usepackage{mathtools}
\usepackage{mhchem}
\usepackage{eqparbox}
\newcommand*{\eqmathbox}[2][]{\eqmakebox[#1]{$\displaystyle#2$}}

\begin{document}

\begin{alignat*}{4}
    &\text{Some text} & \eqmathbox[H]{\ce{H2}} & + & \eqmathbox[I]{\ce{I2}} & \ce{<=>} & \eqmathbox[HI]{2\ce{HI}}\\
    &\text{Some longer text} \qquad & \eqmathbox[H]{4.05} & & \eqmathbox[I]{4.65} & & \eqmathbox[HI]{0} \\
    &\text{Text again} & \eqmathbox[H]{4.05-\alpha} & & \eqmathbox[I]{4.65-\alpha} & & \eqmathbox[HI]{2\alpha}
\end{alignat*}

\end{document} 

enter image description here

Tags:

Align

Mhchem