What is your inseam? That is a better judge of what size frame you need than just your overall height. It really depends what the proportion of your torso to your legs is. FWIW I'm 6' and my frame sizes are all over the place.
My Trek MTB is a 19", but it's old mid 90's geometry.
My Jamis MTB is a 17" with an 80mm fork; it's a little small and that's how I like it.
My Trek touring bike is a 19", and so is my cross bike.
My GT Road bike was a 54cm (that was too small).
While there are some general rules to bike fit (i.e. a certain inseam should get a certain size MTB frame), they are really only good if you can physically try the frame out. It all becomes moot when you're shopping online because one mfr's 18" could equal another's 21". There is no standard for sizing.
I would say you should try and find a local bike shop that carries the brand you're looking at, and try it out there. Also, see if you can try and negotiate a good price at the LBS. They could use your business during the winter.