Dots Sub Menu
Dots Sub-Menu
The dots menu is a compact, collapsed version of the page menu (#page-menu). It shows as a small dotted pill fixed to the side of the screen and expands to reveal the section labels on hover. It is a popular choice for one-page portfolio and landing layouts.
Enabling the Dots Menu
Add dots-menu to #page-menu. The rest of the page menu markup stays the same:
<div id="page-menu" class="dots-menu dots-menu-border">
<div id="page-menu-wrap">
<div class="container">
<div class="page-menu-row">
<div class="page-menu-title">Explore <span>CANVAS</span></div>
<nav class="page-menu-nav">
<ul class="page-menu-container one-page-menu" data-easing="easeInOutExpo" data-speed="1250" data-offset="0">
<li class="page-menu-item"><a href="#" data-href="#wrapper"><div>Start</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-about"><div>About</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-works"><div>Work</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-services"><div>Services</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-blog"><div>Blog</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-contact"><div>Contact</div></a></li>
</ul>
</nav>
<div id="page-menu-trigger"><i class="bi-list"></i></div>
</div>
</div>
</div>
</div><!-- #page-menu end -->Dots Menu Classes
| Class | Effect |
|---|---|
dots-menu |
Collapses the page menu into a small dotted pill that expands on hover. |
dots-menu-border |
Adds a border variant to the dots menu. |
pos-left |
Positions the dots menu on the left side (default is right). |
Left-Positioned Dots Menu
<div id="page-menu" class="dots-menu pos-left"> ... </div>How It Works (CSS)
The collapsed pill is narrow and expands on hover:
#page-menu.dots-menu {
background: #fff;
box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 15%);
border-radius: 7px;
transition: all .2s ease-in-out;
width: 30px;
overflow: hidden;
}
#page-menu.dots-menu:hover {
width: 150px;
}
.dots-menu .page-menu-item {
margin: 13px 0;
}Notes and Tips
- The dots menu is the same component as the page sub-menu, so all
one-page-menudata attributes (data-easing,data-speed,data-offset) apply. - Each
page-menu-itemrenders as a dot when collapsed; its label appears on hover. - Combine
dots-menuwithone-page-menuanddata-hreftargets for smooth-scrolling section navigation on single-page sites. - Use
pos-leftfor layouts where the right edge is busy (for example a side widget or CTA).
Usage
<!-- Page Sub Menu
============================================= -->
<div id="page-menu" class="dots-menu">
<div id="page-menu-wrap">
<div class="container">
<div class="page-menu-row">
<div class="page-menu-title">Explore <span>CANVAS</span></div>
<nav class="page-menu-nav">
<ul class="page-menu-container one-page-menu" data-offset="0">
<li class="page-menu-item"><a href="#" data-href="#header"><div>Home</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-about"><div>About</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-work"><div>Work</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-services"><div>Services</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-video"><div>Video</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-testimonials"><div>Testimonials</div></a></li>
<li class="page-menu-item"><a href="#" data-href="#section-contact"><div>Contact</div></a></li>
</ul>
</nav>
<div id="page-menu-trigger"><i class="icon-reorder"></i></div>
</div>
</div>
</div>
</div><!-- #page-menu end -->Note: It is recommended that you place the Dots Sub Menu code just below the Header.
Was this page helpful?
