You could also use two styles of comparators, one that
has input range which includes ground but maybe not the
higher end, and another which includes the higher end
but not ground. These can be simpler and as long as they
give the right answer when they are "involved in the
decision" it's OK. Of course that wants checking. If
the output is registered then you might also look at
simple autozeroed capacitor-coupled comparators for
speed, simplicity and negligible drift attributes.