Tx · LaTeX & TikZ

How to Reveal Definitions One at a Time in Beamer

Published By the 9to5Science editorial team

At a glance

  1. 1. Use a list

    Put each term and its definition in a description environment.

  2. 2. Add overlay specs

    Write \item<+-> before each entry to reveal entries on successive slides.

  3. 3. Choose the display style

    Use the default cumulative reveal, or change the overlay specs if only one definition should show at a time.

To reveal a list of terms and definitions successively in Beamer, put an overlay specification on each list item. The compact form \item<+-> reveals the first entry on the first overlay, the next entry on the second, and so on.

The example below uses a description list so each term appears as a label beside its definition. You can use the same overlay syntax in itemize or enumerate lists.

Minimal working example

\documentclass{beamer}

\begin{document}

\begin{frame}{Definitions}
  \begin{description}
    \item<+->[Function] A rule that assigns each input exactly one output.
    \item<+->[Domain] The set of allowed inputs of a function.
    \item<+->[Range] The set of outputs the function actually takes.
  \end{description}
\end{frame}

\end{document}

Save this as a .tex file and compile it with a LaTeX engine such as pdfLaTeX. Beamer is the document class; no extra packages are needed. The frame produces three overlays: the first shows “Function,” the second adds “Domain,” and the third adds “Range.” Earlier entries remain visible as each new one appears.

What <+-> means

Beamer overlay specifications control when material appears in a presentation. In <+->, + uses the current value of Beamer’s pause counter (beamerpauses) and advances it for the next automatic specification; the trailing -> means “on this overlay and every later one.” On a list item, the specification applies to both the label and its definition.

For a regular bulleted list, the same pattern is:

\begin{itemize}
  \item<+-> First point.
  \item<+-> Second point.
  \item<+-> Third point.
\end{itemize}

The list remains cumulative: by the final overlay, all three points are visible. This is the usual meaning of “show them one by one” in a presentation.

Set the overlays explicitly

If you prefer to specify the sequence yourself, replace the automatic + with overlay numbers:

\begin{description}
  \item<1->[Function] A rule assigning each input exactly one output.
  \item<2->[Domain] The set of allowed inputs.
  \item<3->[Range] The outputs the function actually takes.
\end{description}

These entries accumulate in the same way, but explicit numbers can help when the frame includes other material that should appear at particular points. For example, \item<2-> makes an entry appear from overlay 2 onward.

If you mean that only the current definition should be visible, rather than keeping earlier definitions on screen, use single-overlay specifications such as \item<1>, \item<2>, and \item<3>. The list can reflow as entries appear and disappear. If stable placement matters, structure the slide so each definition occupies a fixed area, or use separate frames.

Using \pause or \onslide

For a short, straightforward list, \pause is another option: place it between entries to make later material appear on the next overlay. It is easy to read, but overlay specifications on each \item make the intended reveal behavior clearer and are easier to adjust when you add or reorder entries.

You can also use \onslide to control a larger block of material. For a list, however, wrapping each item in \onslide is usually unnecessary: the item-level form \item<+-> directly controls the complete list entry, including its label. Use \onslide when you need to reveal content that is not a list item or when several pieces should appear together.

Common mistakes

  • Putting the overlay command after the text: Write \item<+-> Definition, not \item Definition<+->. The specification belongs with the item command.
  • Using <+> when you want entries to accumulate: <+> shows an entry only on its assigned overlay; <+-> keeps it visible on later overlays too.
  • Expecting “one by one” to mean “only one at a time”: The common \item<+-> pattern is cumulative. Use single-overlay specifications if earlier entries should disappear.
  • Adding \pause everywhere without checking the layout: Many pause-separated lists work, but item-specific overlay specifications are more explicit and easier to maintain.

For a standard sequence of definitions, put \item<+-> on each item and let Beamer create the overlays automatically.

References

  1. The Beamer Class User Guide

Spotted an error? Send a correction. Read how we write and check articles in our editorial policy.