17

I'm making a presentation in Beamer and I've been having some trouble getting exactly the effect I want.

I have three blocks, one that stretches across the entire width of the slide, and two that are side by side in a \columns environment. The top block should be always visible, but on the first slide I don't want to see the either two. The next slide should show the top block and the left block, but not the right block. The third and last slide should show all three blocks, but the left block should be greyed out.

I have tried using \visible and \pause but everything I try I can make work only if I duplicate a lot of my text, which I don't think should be necessary.

Here is an example that almost works, it just needs to grey out the left block on the second slide

\documentclass{beamer}
\usetheme{Darmstadt}
\begin{document}
\begin{frame}{example}
  \begin{block}{Top Block}
    Should be visible on all slides
  \end{block}
  \begin{columns}[C]
    \begin{column}{0.5\textwidth}
      \begin{block}<2>{left  block}
        Should be visible on slide 2 and greyed out on slide 3
      \end{block}
    \end{column}
    \begin{column}{0.5\textwidth}
      \begin{block}<3>{right block}
        Should only be visible only on slide 3
      \end{block}
    \end{column}
  \end{columns}
\end{frame}
\end{document}
1
  • Welcome to TeX.sx! Please add a minimal working example (MWE) that illustrates your problem. It will be much easier for us to reproduce your situation and find out what the issue is when we see compilable code, starting with \documentclass{...} and ending with \end{document}.
    – jub0bs
    May 5, 2013 at 15:04

1 Answer 1

12

The grayed-out effect is activated with \setbeamercovered{transparent}. When using \only the item will only appear on the specified slides, and not even grayed out on the other slides.

\documentclass{beamer}
\usetheme{Darmstadt}
\setbeamercovered{transparent}
\begin{document}
\begin{frame}[t]{example}
  \begin{block}{Top Block}
    Should be visible on all slides
  \end{block}
  \begin{columns}[C]
    \begin{column}{0.5\textwidth}
      \only<2->{%
      \begin{block}<2>{left  block}
        Should be visible on slide 2 and greyed out on slide 3
      \end{block}}
    \end{column}
    \begin{column}{0.5\textwidth}
      \only<3>{%
      \begin{block}{right block}
        Should only be visible only on slide 3
      \end{block}}
    \end{column}
  \end{columns}
\end{frame}
\end{document}

I top-aligned the slide contents, so that appearing blocks do not affect the layout. If you have troubles with that, we can search for an alternative solution without \only.

2
  • 2
    This is almost what I want. The only problem is with the vertical alignment of the left block. In my actual document, the right block is taller than the left block and with this the left block moves between slides 2 and 3. I fixed this by changing the \only<3>{ to \visible<3>{
    – Matt
    May 5, 2013 at 16:20
  • For me the only solution + \setbeamercovered{transparent} did not result in transparent but in completely hidden other items.
    – Papayapap
    Jun 9, 2021 at 14:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .