Du hast vergessen deinem Child den Wert a:active und a:visited aufzudrücken. Das wars auch schon.
a:active spricht aber nur das angeklickte Element an, sobald das nichtmehr der Fall ist fällt es weg. WP vergibt für diesen Fall eigene Klassen. Meisst "current_menu_parent", "current_page_parent" oder eben wie in diesem Fall "current-page-ancestor".
LG, Pixselig