Как определить новое, tcolorbox
чтобы достичь следующего, используя \onslide
, но без \onslide
в каждомtcolorbox
Слайд 1: Заголовок
Слайд 2: Верхний текст
Слайд 3: Нижний текст
\documentclass{beamer}
\usepackage{tcolorbox}
\begin{document}
\begin{frame}
\begin{tcolorbox}[title={Valency = ?},
colframe=green!50!black,
colback=green!50!black!10!white,
]
\onslide<2->{Hydrogen, H}
\tcblower
\onslide<3>{1}
\end{tcolorbox}
\end{frame}
\end{document}
решение1
Один из способов добиться этого, но с некрасивыми «прыжками», в зависимости от потребностей, — это использовать оператор наложения only=<1->{...}
с соответствующими опциями, чтобы скрыть нижний блок и т. д., а также линию сегментации и т. д.
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\begin{document}
\begin{frame}
\begin{tcolorbox}[only=<1->{title={Valency = ?}},only=<1-2>{lowerbox=ignored,segmentation hidden},
colframe=green!50!black,
colback=green!50!black!10!white,
]
\onslide<2->{Hydrogen, H}
\onslide<3->{%
\tcblower
1}
\end{tcolorbox}
\end{frame}
\end{document}
С помощью команды-обертки:
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\NewDocumentCommand{\MyNiceBox}{+O{}+m+m+m}{%
\begin{tcolorbox}[only=<1->{title={#2}},only=<1-2>{lowerbox=ignored,segmentation hidden},
colframe=green!50!black,
colback=green!50!black!10!white,
#1]
\onslide<2->{#3}
\onslide<3->{%
\tcblower
#4}
\end{tcolorbox}%
}
\begin{document}
\begin{frame}
\MyNiceBox{Valency = ?}{Hydrogen, H}{1}
\end{frame}
\end{document}