# Vertical centering of text within a table

I have a table defined as:

\begin{table}
\begin{center}
\setlength{\extrarowheight}{3.0pt}
\begin{tabular}{ | c | p{12.5cm} |}
\hline
\textbf{Item 1} & Long description of item 1 \\
\hline
% ... (etc)
\end{tabular}
\end{center}
\end{table}


I want the text in the first column to be both vertically and horizontally aligned. Given the code above, the text is only horizontally aligned. I have tried fixing this by changing the column alignment/width specifier from 'c' to 'm{2.5cm}', but to no avail.

How do I make the column centered both horizontally and vertically?

-
With this setting, the "Item 1" will be aligned to the first line in column 2; if you want it to be vertically centered with respect to the second column, use m{12.5cm} for the second column specifier. –  egreg Jun 7 '11 at 9:01
and don't forget to load package array ... –  Herbert Jun 7 '11 at 9:26
@egreg Thanks, your suggestion got it working. –  Josh Jun 7 '11 at 9:48
@Herbert: Josh is already using \extrarowheight, but I'll add it in my answer. –  egreg Jun 7 '11 at 10:05
it's been said many times before ... rather than use the center environment, it's better to use \centering within a float. –  barbara beeton Jun 7 '11 at 12:05

Write

\begin{tabular}{|c|m{12.5cm}}