When the length of the text prior to an equation environment approaches \textwidth, hyperref adds an extra vertical space, as illustrated by the following snapshot:

The corresponding code is
\documentclass[12pt,fleqn]{article}
\usepackage{a4}
\usepackage{amsmath}
\usepackage{hyperref}
\textwidth = 16cm
\setlength{\parskip}{1.5ex plus0.5ex minus0.5ex}
\setlength{\parindent}{0em}
\begin{document}
Suppose $\vec{T}$ is a lower triangular matrix. Then $\vec{T}^{T}$ is upper triangular. By Lemma 2.23921,
\begin{equation}
\det(\vec{T}) = \det(\vec{T}^{T}) = [\vec{T}]_{11}[\vec{T}]_{22}\dotsb[\vec{T}]_{nn},
\end{equation}
as required.
\end{document}
Note that it seems to affect the equation environment only.
Since there is no apparent way to predetermine the occurrence the problem in the source code, I will have to manually scan the output text for the affected parts and replace equation with other math environments, such as gather, to circumvent the problem; clearly, this approach is suboptimal.
So, the question is, why does it only affect the equation environment but not other math environments? Is there a way fix this?

a4paperto the class options and remove thea4package. Also, better to use\usepackage[textwidth=16cm]{geometry}to set layout dimensions. – cfr Mar 30 '15 at 01:25equationenvironment is not defined the same way as that of the otheramsmathenviroments. it was originally, but there were too many cries from users who wanted to be able to use a "shorthand" form\be ... \eethat it was reverted to the original latex (2.09) definition. – barbara beeton Mar 30 '15 at 01:27hyperrefadd anchors forequationbut not the other maths environments? If you aren't using the anchors, you can loadamsmathafterhyperrefto avoid the problem, I think. (From another question which I've currently lost track of.) – cfr Mar 30 '15 at 01:30