No, hover is not enough. Lack of mobile support aside, you turn your interface into minesweeper where users have to hunt and peck through the UI with their cursor to determine if something is static information or an element they can interact with. It increases cognitive load, slows task completion, and instills a sense of unease in the user.
One of the challenges "flat" designs create is how to give affordances to the user.
A List Apart has an interesting piece on this subject which is relevant here.
These are the 3 ways flat interfaces often struggle:
- Lack of affordance (affordance is how much the design of an object—physical or digital—suggests use, like a chair inviting you to sit)
- Insufficient distinction between form elements (e.g., fields versus labels versus instructions versus buttons)
- Insufficient hierarchy within categories of form elements (e.g., primary versus secondary buttons)
I really recommend you read the entire article, but here is how they recommend giving afforance to field elements and buttons:
- Make Fields look hollow: give fields a border or inset shadow, even if only 1px side; eliminate background color
- Make buttons look raised: Include drop shadow, rounded corners, gradient, or border, however slight or subtle; Use a background color different from that used for both the page and form fields.
Here are two examples they provide to illustrate these concepts:


A combination of these approaches may allow for the flat aesthetic to be maintained while providing clues to your user that help them know what they can and cannot interact with.