使用 mdframed 创建的盒装环境的垂直对齐

使用 mdframed 创建的盒装环境的垂直对齐

我正在为我的学生写一本数学练习册。我希望每个练习都放在一个带框的框中,所以我使用 mdframed 创建了一个名为“Exercice”的新环境。我遇到了所有框的垂直对齐问题。我希望它们都堆叠在页面顶部,但(见以下示例)顶部框在不同页面上并不总是从相同的高度开始。这看起来像是一个浮动问题,但我无法弄清楚。以下是代码:

    \documentclass[12pt, a4paper,openany]{book}
    \usepackage[french]{babel}
    \usepackage{enumitem}
    
    %%%%%%%%%%%% Margins, Header & Footer
    \usepackage[top=0.0cm, bottom=0.5cm, left=0.5cm, right=0.5cm,includehead, includefoot,headheight=1cm,heightrounded,footnotesep=0cm]{geometry}
    
    \usepackage{fancyhdr}
    \pagestyle{fancy}
    \fancypagestyle{plain}{}
    \renewcommand{\chaptermark}[1]{%
    \markboth{#1}{}}
    \lhead{}
    \rhead{\Large\leftmark}
    \cfoot{\thepage}
    \renewcommand{\headrulewidth}{0.4pt}
    
    
    %%%%%%%%%%%% Titles format 
    \renewcommand{\thesection}{\arabic{section}}
    \usepackage{titlesec}
    \makeatletter
    \titleformat{\chapter}[display]   
    {\normalfont\huge\bfseries}{}{20pt}{\@gobble} 
    \titlespacing*{\chapter}{0pt}{-100pt}{0pt}
    \titlespacing{\section}{0.0pt}{0.4cm}{0.0pt}
    \titleformat{\section}[runin]{}{}{0pt}{\@gobble}
    \makeatother
    
    %%%%%%%%%%%%%% mdframed
    \usepackage[framemethod=TikZ]{mdframed}
    %\mdfsetup{skipabove=0pt,skipbelow=10pt, innertopmargin = -5pt}
    
    \newcounter{exercice}
    \renewcommand{\theexercice}{\arabic{exercice}}
    \counterwithin*{exercice}{chapter}
    \newmdenv[skipabove=0pt,skipbelow=10pt, innertopmargin = 0.3cm, outerlinewidth=0pt, innerlinewidth=0.4pt, roundcorner=5pt, settings={\global\stepcounter{exercice}}
    , extra={\node[left, yshift=0.1cm, xshift=-17cm,inner sep=2pt,rectangle,fill=white] at (P){\normalsize\bfseries Exercice \theexercice};}
    ]{Exercice}
    
    %%%%%%%%%%%%%% Miscellaneous
    \setlength{\parindent}{0.0cm} % 
    \topskip=0pt % 
    \setlength{\topsep}{0pt}%
    \setlength{\partopsep}{0pt}%
    \setlist[itemize]{nosep, noitemsep, label=*}
    \setlist[enumerate]{nosep, noitemsep, label=\textbf{\alph*.},leftmargin=0.9cm}
    
    
    \begin{document}
    \setlength{\baselineskip}{0.8cm}
    
    
    
    \chapter{A chapter name}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla 
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla  
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla 
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla 
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla
    \end{Exercice}
    
    %%%%%%%% Pourcentages
    \chapter{Another chapter name}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla  
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla  
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla 
    \end{Exercice}
    \begin{Exercice}
    bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla \\ bla
    \end{Exercice}
    \begin{Exercice}
    \begin{enumerate}
    \def\labelenumi{\textbf{\Alph{enumi}.}}
    \item Dans un magasin, l'ensemble des articles est soldé à 20\%.
        \begin{enumerate}
        \def\labelenumi{\alph{enumi}.}
        \item Combien coûtera un T-shirt valant 43 euros ?
        \item  Combien coûtera un pull valant 75 euros ?
        \end{enumerate}
    \item Un couple achète une maison à 250 000 euros. Après de nombreux travaux, la maison est finalement estimée 15\% plus cher. Combien vaudra-t-elle ?
    \item Une entreprise faisant 200 000 euros de bénéfices par an en 2021 les a vus diminuer de 18\% en 2022. Calculer les bénéfices de l'entreprise
    en 2022.
    \item Dans une entreprise, le PDG décide d'augmenter tous ses salariés de 10\%. Combien un salarié gagnant initialement 2200 euros sera finalement payé après augmentation ?
    \end{enumerate}
    \end{Exercice}
    
    \begin{Exercice}
    \begin{enumerate}
    \def\labelenumi{\textbf{\alph{enumi}.}}
    \item En France, le nombre moyen d\textquotesingle enfants par femmes était de 2, 85 en 1960. Entre 1960 et 2020, il a diminué d'environ 35, 79 \%. Calculer le nombre moyen d'enfants par femme en france en 2020. (Arrondir le résultat au centième)
    \item En moyenne, le sac Birkin de la maison Hermès coûte 8000 euros. Il est néanmoins très difficile de s'en procurer un. D'autres sites le proposent donc mais augmentent le prix de plus de 1150 \%. Calculer la valeur que peut atteindre un sac Birkin.
    \item En 2000, la population mondiale était de 6, 1 milliards. Elle a augmenté de 31\% jusqu'en 2022. Calculer la population mondiale en 2022..
    \item En 1999, le SMIC (Salaire Minimum Interprofessionnel de Croissance) en France était de 1036 euros par mois. Entre 1999 et 2023, il a augmenté d'environ 65,12 \%. Calculer le SMIC en 2023.
    \end{enumerate}
    \end{Exercice}
    \end{document}

另外,由于某种原因,第 4 页上名为“练习 6”的框被拆分了,我不明白为什么。

欢迎任何帮助

谢谢

菲利普

相关内容