qualcosa lo puoi fare con i css (ed eventualmente il supporto di js).
Se la "soluzione" ti può andare bene, ti sposto per gli approfondimenti.