LookAt() Limitation Questions: ?

Hi there,
when using LookAt() over a 2D, 360 degree plane,
my transform rotates on it’s x axis to keep the target “in sight”. However, when it crests, (in this case x = 90 and x = 270), the transform spins 180 degrees on it’s z axis. This is a bit of an issue for me.

Is there a way I can limit this, or prevent this? Also, Why does it spin on it’s z axis? I would prefer it to only rotate on x.

:?

Bump.
I am very confused as to why the transform.LookAt() “flips” when the target is directly above, or below. For a better description, if the transform is rotating via LookAt, on its x axis, it rotates 180 on its z, when the target is directly above or below.