enhancement: rewrite dropdown menu with CSS( replace the old JS solution )