\usepackage{array}
\newcolumntype{$}{>{\global\let\currentrowstyle\relax}}
\newcolumntype{^}{>{\currentrowstyle}}
\newcommand{\rowstyle}[1]{\gdef\currentrowstyle{#1}%
#1\ignorespaces
}
Now, we put ‘$’ before the first column specifier; and we
put ‘^’
before the modifiers of subsequent ones. We then use \rowstyle at
the start of each row we want to modify:
\begin{tabular}{|$l|^l|^l|} \hline
\rowstyle{\bfseries}
Heading & Big and & Bold \\ \hline
Meek & mild & entry \\
Meek & mild & entry \\
\rowstyle{\itshape}
Strange & and & italic \\
Meek & mild & entry \\ \hline
\end{tabular}
The array package works with several other
tabular-like environments from other packages (for
example longtable), but unfortunately this trick won’t
always work.
This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=wholerow