2

I would like to understand the following behaviour of enumerate in beamer. The following example

\documentclass{beamer}

\newcommand{\marca}{\onslide<2>{\makebox[0pt][r]{$\clubsuit$\qquad}}}
\begin{document}

\begin{frame}
My list

\begin{enumerate}
\item\marca One
\item Two
\end{enumerate}
\end{frame}

\end{document}

shows a list. I would like that first overlay shows the numbered list, and the second overlay shows the clubsuit on first item. However, first number does not appear.

If I change my command \marca in the following way

\newcommand{\marca}{\makebox[0pt][r]{\overlay<2>{$\clubsuit$\qquad}}}

then I get what I want. But I don't understand why. Any explanation?

1

Your macro \uncover the \makebox{} stuff on slide 2, therefore is "covered" on slide 1, but is just there, hiding the number of the item.

If you change \onslide by \uncover or \visibleyou obtain a similar effect. But if you change \onslide by \only, then \makebox will be only on slide 2, and the problem disappear:

\newcommand{\marca}{%
\only<2>{\makebox[0pt][r]{$\clubsuit$\qquad}}
}

Alternatively, you can use \onslide* instead of \only to obtain the same result (run texdoc beamer, see page 80).

0

When I tried the following, the first number in the list appeared:

\newcommand{\marca}{\mbox{}\onslide<2>{\makebox[0pt][r]{$\clubsuit$\qquad}}}

Added \mbox{} just before \onslide command.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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