I believe you're missing the .nav
class in your menu. From the docs:
Then add the data-target attribute with the ID or class of the parent element of any Bootstrap .nav component.
So just add the class to your menu <ul>
:
<div id="nav-menu">
<ul id="menu" class="nav">
<li><a href="#header">Home</a></li>
<li><a href="#work">Work</a></li>
<li><a href="#about">About</a></li>
</ul>
</div>
Also, the result you'll get from the scrollspy plugin is an .active
class being added to your list items, so I'm assuming you'll want to add a rule like this one to your CSS to go with your current styles:
#menu li.active:after {
height: 6px;
}