margin-#{$global-left}: $margin;
}
+/// Adds basic styles for icons in menus.
+@mixin menu-icons() {
+ @if $global-flexbox {
+ a {
+ display: flex;
+ }
+ }
+ @else {
+ img,
+ i,
+ svg {
+ vertical-align: middle;
+
+ + span {
+ vertical-align: middle;
+ }
+ }
+ }
+}
+
+/// Adds position classes for icons within a menu.
+@mixin menu-icon-position($position: left, $spacing: $menu-icon-spacing) {
+ @if $position == left {
+ li a {
+ @if $global-flexbox {
+ flex-flow: row nowrap;
+ }
+
+ img,
+ i,
+ svg {
+ margin-#{$global-right}: $spacing;
+
+ @if not $global-flexbox {
+ display: inline-block;
+ }
+ }
+ }
+ }
+ @else if $position == right {
+ li a {
+ @if $global-flexbox {
+ flex-flow: row nowrap;
+ }
+
+ img,
+ i,
+ svg {
+ margin-#{$global-left}: $spacing;
+
+ @if not $global-flexbox {
+ display: inline-block;
+ }
+ }
+ }
+ }
+ @else if $position == top {
+ li a {
+ @if $global-flexbox {
+ flex-flow: column nowrap;
+ }
+ @else {
+ text-align: center;
+ }
+
+ img,
+ i,
+ svg {
+ @if not $global-flexbox {
+ display: block;
+ margin: 0 auto $spacing;
+ }
+ @else {
+ align-self: stretch;
+ margin-bottom: $spacing;
+ text-align: center;
+ }
+ }
+ }
+ }
+ @else if $position == bottom {
+ li a {
+ @if $global-flexbox {
+ flex-flow: column nowrap;
+ }
+ @else {
+ text-align: center;
+ }
+
+ img,
+ i,
+ svg {
+ @if not $global-flexbox {
+ display: block;
+ margin: $spacing auto 0;
+ }
+ @else {
+ align-self: stretch;
+ margin-bottom: $spacing;
+ text-align: center;
+ }
+ }
+ }
+ }
+}
+
@mixin foundation-menu {
.menu {
@include menu-base;
@include menu-nested;
}
+ // Icon Base Styles
+ &.icons {
+ @include menu-icons;
+ }
+
+ // Icon Left
+ &.icon-left {
+ @include menu-icon-position(left);
+ }
+
+ // Icon Right
+ &.icon-right {
+ @include menu-icon-position(right);
+ }
+
+ // Icon Top
+ &.icon-top {
+ @include menu-icon-position(top);
+ }
+
+ // Icon Bottom
+ &.icon-bottom {
+ @include menu-icon-position(bottom);
+ }
+
// Active state
.active > a {
background: $menu-item-background-active;
<title>All Foundation Menu Options</title>
<link href="../motion-ui/dist/motion-ui.css" rel="stylesheet" />
<link href="../assets/css/foundation.css" rel="stylesheet" />
+ <link href="//cdnjs.cloudflare.com/ajax/libs/foundicons/3.0.0/foundation-icons.css" rel="stylesheet">
<style>
h1 {
}
</style>
</head>
+
<body>
<div class="row column">
<h1>Basic Menus</h1>
</ul>
</div>
+ <h3>Menu with Icons left</h3>
+ <div class="example">
+ <ul class="menu icons icon-left">
+ <li><a href="#"><i class="fi-list"></i>One</a></li>
+ <li><a href="#"><i class="fi-list"></i>Two</a></li>
+ <li><a href="#"><i class="fi-list"></i>Three</a></li>
+ <li><a href="#"><i class="fi-list"></i>Four</a></li>
+ </ul>
+ </div>
+
+ <h3>Menu with Icons Right</h3>
+ <div class="example">
+ <ul class="menu icons icon-right">
+ <li><a href="#">One<i class="fi-list"></i></a></li>
+ <li><a href="#">Two<i class="fi-list"></i></a></li>
+ <li><a href="#">Three<i class="fi-list"></i></a></li>
+ <li><a href="#">Four<i class="fi-list"></i></a></li>
+ </ul>
+ </div>
+
+ <h3>Menu with Icon Top</h3>
+ <div class="example">
+ <ul class="menu icons icon-top">
+ <li><a href="#"><i class="fi-list"></i>One</a></li>
+ <li><a href="#"><i class="fi-list"></i>Two</a></li>
+ <li><a href="#"><i class="fi-list"></i>Three</a></li>
+ <li><a href="#"><i class="fi-list"></i>Four</a></li>
+ </ul>
+ </div>
+
+ <h3>Menu with Icon Bottom</h3>
+ <div class="example">
+ <ul class="menu icons icon-bottom">
+ <li><a href="#">One<i class="fi-list"></i></a></li>
+ <li><a href="#">Two<i class="fi-list"></i></a></li>
+ <li><a href="#">Three<i class="fi-list"></i></a></li>
+ <li><a href="#">Four<i class="fi-list"></i></a></li>
+ </ul>
+ </div>
+
<h3>Active Menu Item Class</h3>
<div class="example">
<ul class="menu pills">