类似的问题这个,但现在我希望能够覆盖table
浮动,而不是覆盖列表项。虽然这对块有用:
\begin{frame}[fragile]
\begin{block}<only@+>{First block}
%stuff
\end{block}
\begin{block}<only@+>{Second block}
%more stuff
\end{block}
\end{frame}
不幸的是,它不适用于表格:
\begin{frame}[fragile]
\begin{table}[!h]<only@+>
\begin{tabular}{} %column specs
%first table
\end{tabular}
\caption{} %some caption
\end{table}
\begin{table}[!h]<only@+>
\begin{tabular}{} %column specs
%second table
\end{tabular}
\caption{} %some caption
\end{table}
\end{frame}
输出:同一张幻灯片上的两个表格上方都写有乱码(¡only@+¿)。在这种情况下正确的语法是什么?谢谢。
PS 如果还有比我想出的更好的覆盖块的语法,我洗耳恭听!:) 理想情况下,我正在寻找类似的东西,以便框架内的\begin{framebody}[<only@+>]
所有内容(块,表格itemize
或环境)都继承该行为。enumerate
答案1
以下似乎实现了预期的效果。
\documentclass{beamer}
\begin{document}
\begin{frame}
\begin{overprint}
\onslide*<1>{
\begin{table}[h]
\begin{tabular}{cc} %column specs
f & f%first table
\end{tabular}
\caption{1} %some caption
\end{table}
}
%
\onslide*<2>{
\begin{table}[h]
\begin{tabular}{cc} %column specs
c & c
%second table
\end{tabular}
\caption{2} %some caption
\end{table}
}
\end{overprint}
\end{frame}
%
\begin{frame}
%
\begin{block}<only@+>{First block}
b
\end{block}
%
\begin{block}<only@+>{Second block}
f
\end{block}
%
\end{frame}
\end{document}