With the majority of internet users now using modern, web-standards based browsers (FireFox, Safari, Chrome, IE 8+) us as Web Designers & Developers have a great resource at our disposal: New attribute selectors in CSS 2.1 and CSS 3.
These allow us to select adjacent elements, element's parents and many others.
My favorite resources to learn more about this are:
CSS 2.1 : http://www.456bereastreet.com/archive/200509/css_21_selectors_part_1/ CSS 3 : http://www.456bereastreet.com/archive/200601/css_3_selectors_explained/
Take a look, if you're not using these you're missing out.