You can do this with plain CSS and HTML. A method we commonly use is to have a matching ID and class selector for each navigation item.
The benefit to this is that you don't have to modify your menu code per page, you modify the page itself, which you'll already be doing unless everything is fully dynamic.
It works like this:
<!-- ... head, etc ... -->
<body>
<ul class="nav">
<li><a href="home.html" class="nav-home">Home</a></li>
<li><a href="art.html" class="nav-art">Art</a></li>
<li><a href="contact.html" class="nav-contact">Contact</a></li>
</ul>
<!-- ... more page ... -->
</body>
Then you set up some CSS like this:
#NAV-HOME .nav-home,
#NAV-ART .nav-art,
#NAV-CONTACT .nav-contact { color:red; }
To change the "current" menu item, you can just assign the corresponding ID to an element higher in the document's structure. Typically I add it to the <body> tag.
To highlight the "Art" page, all you have to do is this:
<!-- The "Art" item will stand out. -->
<body id="NAV-ART">
<ul class="nav">
<li><a href="home.html" class="nav-home">Home</a></li>
<li><a href="art.html" class="nav-art">Art</a></li>
<li><a href="contact.html" class="nav-contact">Contact</a></li>
</ul>
<!-- ... more page ... -->
</body>