I would recommend the Palm Beach area. We like the Singer Island area because its got good beaches and is convenient to Riveria Beach Marina, home to several dive boats.
The diving is drift diving and the visibility is usually very good with 60' to 80' on the times I have been there. There are lots of nice reefs a short boat ride out and you can even to an OK shore dive from under the Blue Heron bridge (just make sure to to go at high tide and watch out for the fishing lines). The weather should be nice. Expect water temps in the mid 70s in April. Full body exposure protection is a good idea in Spring as "sea lice" can be present.
There is an abundance of hotels on the island. We've stayed at the Marriott Ocean's Pointe (very nice on the beach) and the Best Western (very cheap on the beach). Mid April is still high season in South Florida, so book early as possible.
Lauderdale by the Sea, in Ft Lauderdale as well as the canal mall are very nice areas and lots of fun things to do and see and you may prefer to stay in that area, but from everything I've heard and experienced, the diving in Palm Beach County is the best of Florida's "Gold Coast". As best as I can remember it is about a 30 to 40 minute drive from Lauderdale by the Sea up to the Riveria Beach Marina.
Some board members from South Florida may be able to provide additional information regarding recommended hotels and dive operators.