diff --git a/src/menus/css/menus-core.css b/src/menus/css/menus-core.css
index 771c5a3..0e6cd86 100644
--- a/src/menus/css/menus-core.css
+++ b/src/menus/css/menus-core.css
@@ -1,22 +1,24 @@
/*csslint adjoining-classes: false, box-model:false*/
-.pure-menu ul, .pure-menu li {
+.pure-menu-list,
+.pure-menu-item {
position: relative;
}
-.pure-menu ul {
+.pure-menu-list {
list-style: none;
margin: 0;
padding: 0;
+ display: inline-block;
}
-.pure-menu li {
+.pure-menu-item {
padding: 0;
margin: 0;
height: 100%;
+ text-align: left;
}
-.pure-menu a,
-.pure-menu .pure-menu-heading {
+.pure-menu-link,
+.pure-menu-heading,
+.pure-menu-responsive-toggle {
display: block;
- line-height: 1.5em;
- padding: 5px 20px;
text-decoration: none;
white-space: nowrap;
}
@@ -28,18 +30,7 @@
margin: 0;
vertical-align: middle;
}
-.pure-menu-horizontal > ul {
- display: inline-block;
- *display: inline;
- zoom: 1;
- vertical-align: middle;
-}
-.pure-menu li a { padding: 5px 20px; }
-
-.pure-menu-can-have-children > .pure-menu-label {
- padding-right: 30px;
-}
/* FIXED MENU */
.pure-menu-fixed {
@@ -58,7 +49,8 @@
}
/* Initial menus should be inline-block so that they are horizontal */
-.pure-menu-horizontal li {
+.pure-menu-horizontal .pure-menu-item,
+.pure-menu-horizontal .pure-menu-heading {
display: inline-block;
*display: inline;
zoom: 1;
@@ -66,54 +58,34 @@
}
/* Submenus should still be display: block; */
-.pure-menu-horizontal li li {
+.pure-menu-item .pure-menu-item {
display: block;
}
-/* Adjusting separator for vertical menus */
-.pure-menu-horizontal .pure-menu-separator {
- height: 50%;
- width: 1px;
- margin: 0 7px;
-}
-
-/* Submenus should be horizontal separator again */
-.pure-menu-horizontal li .pure-menu-separator {
- height: 1px;
- width: auto;
- margin: 7px 2px;
-}
-
/* RESPONSIVE MENUS */
/* Hide the toggle button by default. It will show on small screen sizes */
-.pure-menu-responsive .pure-menu-toggle {
- float: right;
- text-transform: uppercase;
- font-size: 80%;
+.pure-menu-responsive .pure-menu-list {
display: none;
}
-/* If the menu is open, and the viewport is larger than 767px, we
- still want the toggle button to show.
-*/
-.pure-menu-responsive.pure-menu-active .pure-menu-toggle {
+.pure-menu-responsive-toggle {
display: block;
}
-.pure-menu-responsive .pure-menu-toggle:after {
+.pure-menu-responsive-toggle:after {
content: "\25BE";
float: right;
- /* These specific fonts have the Unicode char we need. */
font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'DejaVu Sans', sans-serif;
margin-right: -15px;
margin-top: -1px;
}
-.pure-menu-responsive.pure-menu-active ul, .pure-menu-responsive.pure-menu-active li {
+.pure-menu-is-active .pure-menu-list,
+.pure-menu-is-active .pure-menu-item {
display: block;
}
-.pure-menu-responsive.pure-menu-active .pure-menu-separator {
+.pure-menu-is-active .pure-menu-separator {
width: auto;
height: 1px;
}
diff --git a/src/menus/css/menus-dropdown.css b/src/menus/css/menus-dropdown.css
new file mode 100644
index 0000000..3642d56
--- /dev/null
+++ b/src/menus/css/menus-dropdown.css
@@ -0,0 +1,40 @@
+/* By default, don't show the .pure-menu-children. */
+.pure-menu-children {
+ display: none;
+ position: absolute; /* absolute positioned inside a relative container */
+ margin: 0;
+ padding: 0;
+}
+
+/* Vertical Menus - when an item is interacted with, show the children */
+.pure-menu-item:hover > .pure-menu-children,
+.pure-menu-item:focus > .pure-menu-children {
+ display: block;
+ top: 0;
+ left: 100%;
+ width: 100%;
+}
+
+/* Horizontal Menus - when an item is interacted with, show the children */
+.pure-menu-horizontal .pure-menu-item:hover > .pure-menu-children,
+.pure-menu-horizontal .pure-menu-item:focus > .pure-menu-children {
+ top: 100%;
+ left: 0;
+ width: inherit;
+}
+
+.pure-menu-is-active .pure-menu-children {
+ display: block;
+ position: static;
+}
+
+/* Regular Menus - show the dropdown arrow */
+.pure-menu-has-children > .pure-menu-link:after {
+ padding-left: 0.5em;
+ content: "\25B8";
+}
+
+/* Horizontal Menus - show the dropdown arrow */
+.pure-menu-horizontal .pure-menu-has-children > .pure-menu-link:after {
+ content: "\25BE";
+}
diff --git a/src/menus/css/menus-paginator.css b/src/menus/css/menus-paginator.css
deleted file mode 100644
index bf248dc..0000000
--- a/src/menus/css/menus-paginator.css
+++ /dev/null
@@ -1,55 +0,0 @@
-/*csslint box-model:false*/
-/*TODO: Remove this lint rule override after a refactor of this code.*/
-
-
-.pure-paginator {
-
- /* `pure-g` Grid styles */
- letter-spacing: -0.31em; /* Webkit: collapse white-space between units */
- *letter-spacing: normal; /* reset IE < 8 */
- *word-spacing: -0.43em; /* IE < 8: collapse white-space between units */
- text-rendering: optimizespeed; /* Webkit: fixes text-rendering: optimizeLegibility */
-
- /* `pure-paginator` Specific styles */
- list-style: none;
- margin: 0;
- padding: 0;
-}
-.opera-only :-o-prefocus,
-.pure-paginator {
- word-spacing: -0.43em;
-}
-
-/* `pure-u` Grid styles */
-.pure-paginator li {
- display: inline-block;
- *display: inline; /* IE < 8: fake inline-block */
- zoom: 1;
- letter-spacing: normal;
- word-spacing: normal;
- vertical-align: top;
- text-rendering: auto;
-}
-
-
-.pure-paginator .pure-button {
- border-radius: 0;
- padding: 0.8em 1.4em;
- vertical-align: top;
- height: 1.1em;
-}
-.pure-paginator .pure-button:focus,
-.pure-paginator .pure-button:active {
- outline-style: none;
-}
-.pure-paginator .prev,
-.pure-paginator .next {
- color: #C0C1C3;
- text-shadow: 0 -1px 0 rgba(0,0,0, 0.45);
-}
-.pure-paginator .prev {
- border-radius: 2px 0 0 2px;
-}
-.pure-paginator .next {
- border-radius: 0 2px 2px 0;
-}
diff --git a/src/menus/css/menus-r.css b/src/menus/css/menus-r.css
index 31e8e86..d8afe7b 100644
--- a/src/menus/css/menus-r.css
+++ b/src/menus/css/menus-r.css
@@ -1,16 +1,8 @@
-/*adjoining-classes: false*/
-@media (max-width: 767px) {
- .pure-menu-responsive .pure-menu-toggle {
- display: block;
+@media (min-width: 48em) {
+ .pure-menu-responsive .pure-menu-list {
+ display: inline-block;
}
- .pure-menu-responsive ul {
+ .pure-menu-responsive-toggle {
display: none;
}
- .pure-menu-responsive.pure-menu.active ul {
- display: inline-block;
- *display: inline;
- zoom: 1;
- vertical-align: middle;
- }
-
-}
+}
\ No newline at end of file
diff --git a/src/menus/css/menus.css b/src/menus/css/menus.css
index b3931fd..587beca 100644
--- a/src/menus/css/menus.css
+++ b/src/menus/css/menus.css
@@ -1,55 +1,15 @@
-/*csslint adjoining-classes: false, duplicate-properties:false*/
-
-/* MENUS STYLING */
-/* Focus style for a dropdown menu-item when the parent has been opened */
-.pure-menu {
- background: #fff; /* need this to make menus stand out from page background */
- border: 1px solid #eee;
-}
-.pure-menu a {
- color: #666;
-}
-/* Hover and focus styles */
-.pure-menu li a:hover,
-.pure-menu li a:focus {
- background: #dedede;
- *background: #dedede;
- background: rgba(0,0,0,0.15);
-}
-
-/* DISABLED STATES */
-/* need the .pure-menu prefix so that people over-riding `a` don't over-ride pure-menu-disabled too */
-.pure-menu .pure-menu-disabled a,
-.pure-menu .pure-menu-disabled a:hover,
-.pure-menu .pure-menu-disabled a:focus {
- color: #bababa;
- *color: #bababa;
- color: rgba(0,0,0, 0.5);
- background: transparent;
-}
-
-
.pure-menu-heading {
- color: #565d64;
- text-transform: uppercase;
- font-size: 90%;
- margin-top: 0.5em;
- border-bottom: 1px solid #eee;
+ font-weight: bold;
}
-.pure-menu-horizontal .pure-menu-heading {
- border-bottom: none;
+.pure-menu-responsive-toggle {
+ float: right;
}
-/* ACTIVE MENU ITEM */
-.pure-menu .pure-menu-selected a {
- color: #000;
+.pure-menu-link {
+ padding: 0.3em 0.5em;
}
-/* FIXED MENU */
-.pure-menu-fixed {
- border: none;
- border-bottom: 1px solid #b7b7b7;
- *border-bottom: 1px solid #b7b7b7;
- border-bottom: 1px solid rgba(0,0,0,0.4);
-}
+.pure-menu-is-active .pure-menu-children {
+ padding-left: 0.5em;
+}
\ No newline at end of file
diff --git a/src/menus/tests/manual/menus.html b/src/menus/tests/manual/menus.html
index 941852a..dbe57f6 100644
--- a/src/menus/tests/manual/menus.html
+++ b/src/menus/tests/manual/menus.html
@@ -7,216 +7,115 @@
-
+
-
-
-
-
-
-
-
Horizontal Menu
-
-
- You can mark the active menu element by adding the .pure-menu-selected
class to the list item.
-
-
-
-
-
Vertical Menu
-
-
-
-
-
-
-
Fixed Menus
-
-
- Fixed menus can be created by adding the pure-menu-fixed
class name to the wrapper. This will fix a menu to the top of the page.
-
-
-
-
-
-
-
-
-
Responsive Menu
-
-
-
-
Customizing Menu
-
-
-
-
-
-
-
Paginator
-
-
- - «
- - 1
- - 2
- - 3
- - 4
- - 5
- - »
+
+
+ div.pure-menu.pure-menu-horizontal
+
-
+
+
+ div.pure-menu
+
+
+ div.pure-menu, with nested children
+
+
+ div.pure-menu.pure-menu-horizontal.pure-menu-responsive
+
+
+
+ div.pure-menu.pure-menu-horizontal.pure-menu-responsive, with nested children
+
+
+