When I was passing through Colmar, I stayed at the James Boutique Hotel for one night and would recommend it. Clean, modern, fairly central, and family run. Looking at tripadvisor, it's ranked #1 which is not surprising. As I remember the story, the head of the family moved to France from Portugal as a youth, made a name as a soccer player, and then had a long career in construction before building the hotel.
Depending on why you are wanting to stay in Colmar, it might be more interesting to stay in one of the very nearby towns, especially Eguisheim. It is an extremely pretty town, google it. As far as hotels there, I've heard nice things about L'Auberge Alsacienne. If you stay in Colmar look at when you are going when you are deciding where to stay.