beamer add tag
samcarter
Beamer has several different types of blocks (e.g. `block`, `alertblock`, `exampleblock`, `theorem`, `proof`, ...). How to change the colour for each type individually?

Top Answer
samcarter
For "normal" blocks (`block`, `alertblock`, `exampleblock`) that's easy, one can set their dedicated beamer colours: 

```
% block
\setbeamercolor{block title}{fg=blue,bg=blue!20!bg}
\setbeamercolor{block body}{bg=block title.bg!30!bg}

% alertblock
\setbeamercolor{block title alerted}{fg=white,bg=red!75!black}
\setbeamercolor{block body alerted}{bg=block title alerted.bg!10!bg}

% exampleblock
\setbeamercolor{block title example}{fg=white,bg=green!75!black}
\setbeamercolor{block body example}{bg=block title example.bg!10!bg}
```    

For blocks like `theorem`, it is more difficult. Normally they all share their colour with the normal `block` or `exampleblock`, but with a few tricks one can modify their colour individually:

```
\documentclass{beamer}

% block
\setbeamercolor{block title}{fg=black,bg=green!50!black}
\setbeamercolor{block body}{fg=green!50!black,bg=green!50!black!30!white}

% alertblock
\setbeamercolor{block title alerted}{fg=black,bg=green!50!white}
\setbeamercolor{block body alerted}{fg=green,bg=green!30!white}

% exampleblock
\setbeamercolor{block title example}{fg=black,bg=lime!50!white}
\setbeamercolor{block body example}{fg=lime,bg=lime!30!white}

% theorem
\BeforeBeginEnvironment{theorem}{
  \setbeamercolor{block title}{fg=black,bg=yellow!50!white}
  \setbeamercolor{block body}{fg=yellow,bg=yellow!30!white}
}
\AfterEndEnvironment{theorem}{
    \setbeamercolor{block title}{fg=blocktitlefgsave,bg=blocktitlebgsave}
    \setbeamercolor{block body}{fg=blockbodyfgsave,bg=blockbodybgsave}
}

% corollary
\BeforeBeginEnvironment{corollary}{
  \setbeamercolor{block title}{fg=black,bg=orange!50!white}
  \setbeamercolor{block body}{fg=orange, bg=orange!30!white}
}
\AfterEndEnvironment{corollary}{
    \setbeamercolor{block title}{fg=blocktitlefgsave,bg=blocktitlebgsave}
    \setbeamercolor{block body}{fg=blockbodyfgsave,bg=blockbodybgsave}
}

% definition
\BeforeBeginEnvironment{definition}{
  \setbeamercolor{block title}{fg=black,bg=red!50!white}
  \setbeamercolor{block body}{fg=red, bg=red!30!white}
}
\AfterEndEnvironment{definition}{
    \setbeamercolor{block title}{fg=blocktitlefgsave,bg=blocktitlebgsave}
    \setbeamercolor{block body}{fg=blockbodyfgsave,bg=blockbodybgsave}
}

% definitions
\BeforeBeginEnvironment{definitions}{
  \setbeamercolor{block title}{fg=black,bg=violet!50!white}
  \setbeamercolor{block body}{fg=violet, bg=violet!30!white}
}
\AfterEndEnvironment{definitions}{
    \setbeamercolor{block title}{fg=blocktitlefgsave,bg=blocktitlebgsave}
    \setbeamercolor{block body}{fg=blockbodyfgsave,bg=blockbodybgsave}
}

% fact
\BeforeBeginEnvironment{fact}{
  \setbeamercolor{block title}{fg=black,bg=blue!50!white}
  \setbeamercolor{block body}{fg=blue, bg=blue!30!white}
}
\AfterEndEnvironment{fact}{
    \setbeamercolor{block title}{fg=blocktitlefgsave,bg=blocktitlebgsave}
    \setbeamercolor{block body}{fg=blockbodyfgsave,bg=blockbodybgsave}
}

% example
\BeforeBeginEnvironment{example}{
  \setbeamercolor{block title example}{fg=black,bg=cyan!50!white}
  \setbeamercolor{block body example}{fg=cyan, bg=cyan!30!white}
}
\AfterEndEnvironment{example}{
    \setbeamercolor{block title example}{fg=exblocktitlefgsave,bg=exblocktitlebgsave}
    \setbeamercolor{block body example}{fg=exblockbodyfgsave,bg=exblockbodybgsave}
}

% examples
\BeforeBeginEnvironment{examples}{
  \setbeamercolor{block title example}{fg=black,bg=teal!50!white}
  \setbeamercolor{block body example}{fg=teal, bg=teal!30!white}
}
\AfterEndEnvironment{examples}{
    \setbeamercolor{block title example}{fg=exblocktitlefgsave,bg=exblocktitlebgsave}
    \setbeamercolor{block body example}{fg=exblockbodyfgsave,bg=exblockbodybgsave}
}

% proof
\addtobeamertemplate{proof begin}{%
    \setbeamercolor{block title}{fg=black,bg=gray!50!white}
    \setbeamercolor{block body}{fg=gray, bg=gray!30!white}
}{}

\begin{document}

\usebeamercolor{block title}
\colorlet{blocktitlefgsave}{block title.fg} 
\colorlet{blocktitlebgsave}{block title.bg}
\usebeamercolor{normal text}
\usebeamercolor{block body}
\colorlet{blockbodyfgsave}{block body.fg}
\colorlet{blockbodybgsave}{block body.bg}   
\usebeamercolor{normal text}

\usebeamercolor{block title example}
\colorlet{exblocktitlefgsave}{block title example.fg}   
\colorlet{exblocktitlebgsave}{block title example.bg}
\usebeamercolor{normal text}
\usebeamercolor{block body example}
\colorlet{exblockbodyfgsave}{block body example.fg}
\colorlet{exblockbodybgsave}{block body example.bg} 
\usebeamercolor{normal text}

\begin{frame}

% normal blocks %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \begin{block}<only@1>{My block}
        A block.
    \end{block}

    \begin{alertblock}<only@1>{my alertblock}
            An alertblock
    \end{alertblock}

    \begin{exampleblock}<only@1>{my exampleblock}
            An exampleblock
    \end{exampleblock}

% theorem blocks %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \begin{theorem}<only@1>[My theorem]
        A theorem.
    \end{theorem}

    \begin{corollary}<only@1>[My corollary]
        A corollary.
    \end{corollary}

    \begin{definition}<only@2>[My definition]
        A definition.
    \end{definition}

    \begin{definitions}<only@2>[My definitions]
        Some definitions.
    \end{definitions}

    \begin{fact}<only@2>[My fact]
        A fact.
    \end{fact}

    \begin{example}<only@2>[My example]
        An example.
    \end{example}

    \begin{examples}<only@3>[My examples]
        Some examples.
    \end{examples}

    \begin{proof}<only@3>[My proof]
        A proof.
    \end{proof}

% testing normal blocks again

    \begin{block}<only@3>{My block}
        A block.
    \end{block}

    \begin{exampleblock}<only@3>{my exampleblock}
            An exampleblock
    \end{exampleblock}

\end{frame}
\end{document}
```
![document2-1.png](/image?hash=b44495ba7484c8402a0493b55255d90c0cc82cd07f611e7c50698a59b55ca6a5)

![document2-2.png](/image?hash=da1df48f013c8b85814f9a2d108b3152002013a52db5c6c47967c082ad541b0c)

![document2-3.png](/image?hash=43102aea2e32b3914bb45614f24e85c2b5aab026b8a2ce12609527b7c867fa33)

Enter question or answer id or url (and optionally further answer ids/urls from the same question) from

Separate each id/url with a space. No need to list your own answers; they will be imported automatically.