There are a lot of great hotels, but the best are all located in South Beach on Collins Avenue, or Ocean Avenue. I have stayed at several hotels on South Beach, and the Delano is by far one of the most famous hotels in Miami, and one of the most unique in the world. This has been the historic favorite of celebrities coming to Miami, and the atmosphere is ultra-chic. A lot of people say its overrated and overpriced (which might be true), but it is definately one of the coolest hotels I have stayed at. If the Delano is too steep, then try finding a hotel nearby on the avenues I mentioned. This is where you want to be in Miami. There are also a number of small boutique hotels in the area that might not be listed on major travel sites, but if you put "Miami Beach boutique hotel" in a search engine query I'm sure you will find a gem.
Other than the Delano, the National, and Ritz Carlton are probably the most highly regarded. I stayed at the Rooney Palace once a while ago, and it was a fantasitic deal when I stayed there. I'm not sure what its like now, but godd location, good service, great roooms, and a great pool. The Delano is still my favorite, and if you don't stay there, definately check it out at night for dinner or drinks.
Part of the fun of staying in a Miami hotel is that it is supposed to be Art Decco, so look at the pictures you can find on the web.