11

I am using the package mdframed for examples in my report. The frames are split on several pages.

My problem is that on the second page the frame doesn't have any top margin. And this is very ugly.

Here is my code:

\usepackage{mdframed}

\definecolor{grisframe}{gray}{0.95}
\definecolor{gristitleframe}{gray}{0.85}
\mdfsetup{backgroundcolor=grisframe, skipabove=12pt, skipbelow=6pt, leftmargin=0pt, rightmargin=0pt, innertopmargin=12pt, innerbottommargin=6pt, innerleftmargin=12pt, innerrightmargin=12pt, frametitleaboveskip=12pt, frametitlebelowskip=6pt, frametitlerule=true, frametitlebackgroundcolor=gristitleframe}

\begin{mdframed}[frametitle={Exemple}]
Chaque parties relatives à l'analyse des processus -- à savoir les composants, la modélisation et les performances -- sont illustrées avec deux processus présentés ci-dessous. Blabla bla...
\end{mdframe}
0

1 Answer 1

12

Use splittopskip=<length>:

\documentclass{article}
\usepackage[a6paper]{geometry}% just for the example
\usepackage{xcolor}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{lipsum}% just to generate text for the example

\definecolor{grisframe}{gray}{0.95}
\definecolor{gristitleframe}{gray}{0.85}
\mdfsetup{backgroundcolor=grisframe,
 skipabove=12pt,
 skipbelow=6pt,
 leftmargin=0pt,
 rightmargin=0pt,
 innertopmargin=12pt,
 innerbottommargin=6pt,
 innerleftmargin=12pt,
 innerrightmargin=12pt,
 frametitleaboveskip=12pt,
 frametitlebelowskip=6pt,
 frametitlerule=true,
 frametitlebackgroundcolor=gristitleframe,
 splittopskip=2\topsep}


\begin{document}

\begin{mdframed}[frametitle={Exemple}]
\lipsum[2]\lipsum[2]
\lipsum[2]\lipsum[2]
\end{mdframed}

\end{document}

enter image description here

1
  • of course, splittopskip! May 20, 2021 at 21:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .