More body ID fun
21st January 2003
Scott Andrew points out another smart trick with body tag ID attributes—selectively showing and hiding navigation elements depending on the current page. This is a really neat idea, but it does lead to a blurring of the lines between structure and presentation—if a navigation section isn’t relevant to a particular page this should be mirrored in the markup rather than worked around by the CSS. That said, there are some nice presentational touches which could be achieved with this technique without sacrificing structural purity, such as highlighting the navigation menu item for the current page in a different colour:
body#aboutpage li#aboutlink {
background-color: red;
color: white;
}
<body id="aboutpage">
...
<ul class="subnav">
<li id="newslink"><a href="/news/">News</a></li>
<li id="aboutlink"><a href="/about/">About</a></li>
<li id="contactlink"><a href="/contact/">Contact</a></li>
</ul>
...
</body>
But then I suppose you could argue that the link to the current page shouldn’t be a link at all.
More recent articles
- Hello Python 3.15, goodbye 3.10, and now I can use 3.11 - 12th October 2026
- A new feature for my blog, built using my voice - 9th October 2026
- Claude Haiku 5.5 - 7th October 2026
- We're going to need default hard budget caps on pretty much everything - 3rd October 2026