Back to CSS Tips
Preview: what the working site looks like.

The + in ul#menu li + li a {border-left: 2px solid #f00;} applies the left border to all li a following the first li. In otherwords, you don't need to use :first-child to remove styling on the first anchor.
Pretty slick :)

See Adjacent Sibling Selectors here.

The markup
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>    
    <div id="container">
        <ul id="menu">
            <li><a href="">linky</a></li>
            <li><a href="">linky</a></li>
            <li><a href="">linky</a></li>
            <li><a href="">linky</a></li>
            <li><a href="">linky</a></li>
        </ul>
    <!--container--></div>  
</body>
</html>
        
The CSS
html, body {
	margin: 0;
	font: 100% "Trebuchet MS", Arial, Helvetica, sans-serif;
	color: #000;
	background: #fc6;
}
#container {
	width: 800px;
	margin: 30px auto;
	background: #696;
	overflow: auto;
	font-size: 0.8em;
}
ul#menu {
	margin: 0 0 350px;
	padding: 0;
	overflow: auto;
	background: #ccc;
	list-style: none;
}
	ul#menu li {
		display: inline;
		text-align: center;
		line-height: 22px;
	}
		ul#menu li + li a {border-left: 2px solid #f00;}
		ul#menu li a {
			width: 19%;
			margin: 4px 0;
			float: left;
			font-size: 1.2em;;
			text-decoration: none;
		}
			ul#menu li a:hover,
			ul#menu li a:active { color: #f00; }