If a figure will fit on the bottom of the page, it will also fit at the top of the page and will wind up there (barring certain circumstances). The best I have come up with is to set topnumber to 0 (default).
Is there a better way to achieve this?
\documentclass{article}
\usepackage{lipsum}
\usepackage{everypage,afterpage}
\setcounter{topnumber}{0}
\setcounter{bottomnumber}{2}
\renewcommand{\bottomfraction}{.7}
\begin{document}
\lipsum[1-2]
%\lipsum[3-4]% for top of next page
\AddThispageHook{\stepcounter{topnumber}}
\afterpage{\addtocounter{topnumber}{-1}}
\begin{figure}[tb]
\rule{\textwidth}{.2\textheight}
\caption{test}
\end{figure}
\lipsum[5-12]
\end{document}
\begin{figure}[t]? – Peter Wilson Apr 11 '18 at 18:35t, but onlybporhbp. – Skillmon Apr 11 '18 at 21:03