Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.
\begin{table}[!h]
  \centering
  \caption{Titel}
  \resizebox{.95\columnwidth}{!}{%
    \begin{tabular}{p{4.5cm}p{10cm}p{3.5cm}}
        \hline
        Name & \multicolumn{2}{p{\textwidth-3\tabcolsep-\widthof{test}-2\fboxrule}}
            {long_title which goes over two coloums}\\
        \hline
        Explanation & \multicolumn{2}{p{\textwidth-3\tabcolsep-\widthof{test}-2\fboxrule}}
            {Explanation which goes over two coloums}\\
        \hline
    \multirow{3}{*}{Targets} 
                    & Target 1 is long text with two lines & not reached\\
        \cline{2-3}
        & Target 2 & reached\\
        \cline{2-3}
        & Target 3 & reached\\
        \hline

    \end{tabular}%
    }
  \label{tab:test}%
\end{table}% 

I hope this photo helps to understand my problem:

enter image description here

I would like to align the text "Targets" on the top of the cell, like the second table. I'm sure this must be simple to do, but I can't seem to put my finger on it.

share|improve this question

migrated from stackoverflow.com Sep 25 '12 at 20:40

This question came from our site for professional and enthusiast programmers.

    
Do i have to use something else than the "*" ? –  newbie_Tex Sep 25 '12 at 13:18
    
This seems like the opposite of your problem, it may help you: stackoverflow.com/questions/1910478/… –  NoxHarmonium Sep 25 '12 at 13:23
    
What if the reason of using multirow is you want top alignment, but also splitting over multiple rows. Then you can't just leave multirow out of play, because then you get a white line in following columns next to the multiple lined text. (Hope I am making myself a bit clear here) –  user23624 Dec 24 '12 at 11:40

3 Answers 3

up vote 5 down vote accepted

Using \multirow (from the multirow package) pushes the contents down to the middle of 3 rows. Instead just drop the use of \multirow to have the cell top-aligned:

enter image description here

\documentclass[12pt]{article}
\usepackage{graphicx}% http://ctan.org/pkg/graphicx
%\usepackage{multirow}% http://ctan.org/pkg/multirow
\usepackage{calc}% http://ctan.org/pkg/calc
\begin{document}
\begin{table}[!ht]
  \centering
  \caption{Titel}
  \resizebox{.95\columnwidth}{!}{%
    \begin{tabular}{p{4.5cm}p{10cm}p{3.5cm}}
        \hline
        Name & \multicolumn{2}{p{\textwidth-3\tabcolsep-\widthof{test}-2\fboxrule}}
            {long title which goes over two columns}\\
        \hline
        Explanation & \multicolumn{2}{p{\textwidth-3\tabcolsep-\widthof{test}-2\fboxrule}}
            {Explanation which goes over two columns}\\
        \hline
        Targets % Don't use \multirow{4}{*}{Targets} here
            & Target 1 is long text with two lines exactly like this spans two lines & not reached\\
        \cline{2-3}
        & Target 2 & reached\\
        \cline{2-3}
        & Target 3 & reached\\
        \hline
    \end{tabular}%
    }
  \label{tab:test}%
\end{table}
\end{document} 
share|improve this answer
    
The answer doesn't answer how to align to top in \multirow. –  chejnik Apr 8 at 13:55
    
@chejnik: In this instance you can use \multirow{3}{*}[\normalbaselineskip]{Targets}, but the suggestion to do without it is far superior than fiddling with raising/lowering content in one column to match the other. –  Werner Apr 9 at 5:04
    
I see, thank you. I wanted to point out that it is only coincidence that the first column is smaller than the second one. In my case I had first column (\multirow column) much larger and need to align it on top. –  chejnik Apr 9 at 5:48
1  
@chejnik: True. There are other methods that one can use, including nesting a tabular inside a tabular and using the vertical alignment "anchor" point, or even using a \parbox. In this specific instance, it was easier to do it without \multirow. –  Werner Apr 9 at 14:12

Instead of specifying the widths of the columns explicitly use the l specifier (which may require the array package). An example of its usage would be the following

\begin{center}
     \begin{tabular}{ | l | l | l | p{5cm} |}
     \hline
     Day & Min Temp & Max Temp & Summary \\ \hline
     Monday & 11C & 22C & A clear day with lots of sunshine.  
     However, the strong breeze will bring down the temperatures. \\ \hline
     Tuesday & 9C & 19C & Cloudy with rain, across many northern regions. Clear spells
     across most of Scotland and Northern Ireland,
     but rain reaching the far northwest. \\ \hline
     Wednesday & 10C & 21C & Rain will still linger for the morning.
     Conditions will improve by early afternoon and continue
     throughout the evening. \\
     \hline
     \end{tabular}
\end{center}

this will provide an output like this

Example

Note the top alignment of all columns.

I hope this helps.

share|improve this answer
    
thank you for the try, but there is a reason why i have the widths –  newbie_Tex Sep 25 '12 at 13:38
    
Since you did not change the example at all, it will be nice if you mention in your answer that you got the example from wikibooks or some other place. –  mythealias Dec 25 '12 at 11:19

this is an inelegant hack, and not automatic, but if you force the one-line "Targets" to occupy two lines, it should force that text to the top line:

\multirow{3}{*}{Targets\\ \phantom{.}} 
                & Target 1 is long text with two lines & not reached\\
    \cline{2-3}
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.