1

My MWE is:

\documentclass{book}
\usepackage{showframe}
\usepackage{lipsum,multicol}
\pagestyle{empty}
\setlength{\columnseprule}{2pt}
%\setlength{\multicolsep}{-10pt}
\begin{document}

\lipsum[1]

\begin{multicols}{3}
\lipsum[1-10]
\end{multicols}
\end{document}

I would like to align rule with top of the text. (see the example image).enter image description here

1

The multicols environment uses \topskip before typesetting the columns. Setting topskip=0pt is a (possible) solution.

Modifying \multicolsep does only affect the total spacing above multicols environment, but not the internal skip.

\documentclass{book}
\usepackage{showframe}
\usepackage{lipsum}
\usepackage{multicol}
\pagestyle{empty}
\setlength{\columnseprule}{2pt}
\begin{document}

\lipsum[1]
\begin{multicols}{3}
\topskip=0pt
\lipsum[1-10]
\end{multicols}
\end{document}

enter image description here

5
  • In the top of the multicols its working fine. How to control in the bottom?
    – Balaji
    Feb 26 '18 at 12:11
  • @Balaji: You did not write anything about the bottom, did you?
    – user31729
    Feb 26 '18 at 12:12
  • Yes. I have need in the bottom also. Please suggest.
    – Balaji
    Feb 26 '18 at 12:13
  • @Balaji: That's changing the question
    – user31729
    Feb 26 '18 at 12:18
  • @Balaji: Sigh... you should not change the question afterwards. It is up to you to post a clear question right from the start, not changing it in the end such that a posted solution becomes useless. This is not ok!
    – user31729
    Feb 26 '18 at 12:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.