Skip to content
This repository was archived by the owner on Jul 11, 2023. It is now read-only.

Commit 632c029

Browse files
committedFeb 14, 2017
Update GreedyNav to use flexbox instead of display: table
- ref mmistakes#836
1 parent df4d77c commit 632c029

File tree

3 files changed

+71
-26
lines changed

3 files changed

+71
-26
lines changed
 

‎_includes/masthead.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@
22
<div class="masthead__inner-wrap">
33
<div class="masthead__menu">
44
<nav id="site-nav" class="greedy-nav">
5-
<button><div class="navicon"></div></button>
5+
<a class="site-title" href="{{ '/' | absolute_url }}">{{ site.title }}</a>
66
<ul class="visible-links">
7-
<li class="masthead__menu-item masthead__menu-item--lg"><a href="{{ '/' | absolute_url }}">{{ site.title }}</a></li>
87
{% for link in site.data.navigation.main %}
98
{% if link.url contains 'http' %}
109
{% assign domain = '' %}
@@ -14,6 +13,7 @@
1413
<li class="masthead__menu-item"><a href="{{ domain }}{{ link.url }}">{{ link.title }}</a></li>
1514
{% endfor %}
1615
</ul>
16+
<button><div class="navicon"></div></button>
1717
<ul class="hidden-links hidden"></ul>
1818
</nav>
1919
</div>

‎_sass/_masthead.scss

+29
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,12 @@
1414
&__inner-wrap {
1515
@include container;
1616
@include clearfix;
17+
display: -webkit-box;
18+
display: -ms-flexbox;
19+
display: flex;
20+
-webkit-box-pack: justify;
21+
-ms-flex-pack: justify;
22+
justify-content: space-between;
1723
padding: 1em 1em 1em;
1824
font-family: $sans-serif-narrow;
1925

@@ -31,7 +37,30 @@
3137
}
3238
}
3339

40+
.site-title {
41+
display: -webkit-box;
42+
display: -ms-flexbox;
43+
display: flex;
44+
padding: 0.5rem 0;
45+
-ms-flex-item-align: stretch;
46+
align-self: stretch;
47+
-webkit-box-align: center;
48+
-ms-flex-align: center;
49+
align-items: center;
50+
font-weight: bold;
51+
z-index: 20;
52+
}
53+
3454
.masthead__menu {
55+
width: 100%;
56+
57+
.site-nav {
58+
margin-left: 0;
59+
60+
@include breakpoint($small) {
61+
float: right;
62+
}
63+
}
3564

3665
ul {
3766
margin: 0;

‎_sass/_navigation.scss

+40-24
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,12 @@
175175

176176
.greedy-nav {
177177
position: relative;
178-
min-width: 250px;
178+
display: -webkit-box;
179+
display: -ms-flexbox;
180+
display: flex;
181+
-webkit-box-align: center;
182+
-ms-flex-align: center;
183+
align-items: center;
179184
background: $background-color;
180185

181186
a {
@@ -188,12 +193,16 @@
188193
&:hover {
189194
color: $masthead-link-color-hover;
190195
}
196+
197+
&.site-title {
198+
margin-left: 0;
199+
}
191200
}
192201

193202
button {
194-
position: absolute;
195-
height: 100%;
196-
right: 0;
203+
-ms-flex-item-align: stretch;
204+
-ms-grid-row-align: stretch;
205+
align-self: stretch;
197206
padding: 0 0.5rem;
198207
border: 0;
199208
outline: none;
@@ -203,19 +212,22 @@
203212
}
204213

205214
.visible-links {
206-
display: table;
215+
display: -webkit-box;
216+
display: -ms-flexbox;
217+
display: flex;
218+
-webkit-box-pack: end;
219+
-ms-flex-pack: end;
220+
justify-content: flex-end;
221+
-webkit-box-flex: 1;
222+
-ms-flex: 1;
223+
flex: 1;
224+
padding-right: 3.5rem;
225+
overflow: hidden;
207226

208227
li {
209-
display: table-cell;
210-
vertical-align: middle;
211-
212-
&:first-child {
213-
font-weight: bold;
214-
215-
a {
216-
margin-left: 0;
217-
}
218-
}
228+
-webkit-box-flex: 0;
229+
-ms-flex: none;
230+
flex: none;
219231

220232
&:last-child {
221233
a {
@@ -238,13 +250,11 @@
238250
-webkit-transition: $global-transition;
239251
transition: $global-transition;
240252
-webkit-transform: scaleX(0) translate3d(0, 0 , 0);
241-
-ms-transform: scaleX(0) translate3d(0, 0 , 0);
242253
transform: scaleX(0) translate3d(0, 0 , 0); /* hide*/
243254
}
244255

245256
&:hover:before {
246257
-webkit-transform: scaleX(1);
247-
-ms-transform: scaleX(1);
248258
transform: scaleX(1); /* reveal*/
249259
}
250260
}
@@ -261,6 +271,10 @@
261271
background: #fff;
262272
box-shadow: 0 0 10px rgba(#000, 0.25);
263273

274+
&.hidden {
275+
display: none;
276+
}
277+
264278
a {
265279
margin: 0;
266280
padding: 10px 20px;
@@ -348,11 +362,13 @@
348362
height: 0.125em;
349363
line-height: 1;
350364
background-color: $gray;
365+
-webkit-transition: 0.2s ease-out;
351366
transition: 0.2s ease-out;
352367
}
353368

354369
&:after {
355-
transform: rotate(90deg);
370+
-webkit-transform: rotate(90deg);
371+
transform: rotate(90deg);
356372
}
357373

358374
&:hover {
@@ -378,13 +394,15 @@
378394
}
379395
}
380396

381-
// on hover show expand
397+
/* on hover show expand*/
382398
label:hover:after {
383-
transform: rotate(90deg);
399+
-webkit-transform: rotate(90deg);
400+
transform: rotate(90deg);
384401
}
385402

386403
input:checked + label:hover:after {
387-
transform: rotate(0);
404+
-webkit-transform: rotate(0);
405+
transform: rotate(0);
388406
}
389407

390408
ul {
@@ -438,7 +456,6 @@
438456
-webkit-transition: 0.3s ease-in-out;
439457
transition: 0.3s ease-in-out;
440458
-webkit-transform: translate(0, 10%);
441-
-ms-transform: translate(0, 10%);
442459
transform: translate(0, 10%);
443460
}
444461
}
@@ -447,12 +464,11 @@
447464
.nav__list input:checked ~ .nav__items {
448465
-webkit-transition: 0.5s ease-in-out;
449466
transition: 0.5s ease-in-out;
450-
max-height: 9999px; // exaggerate max-height to accommodate tall lists
467+
max-height: 9999px; /* exaggerate max-height to accommodate tall lists*/
451468
overflow: visible;
452469
opacity: 1;
453470
margin-top: 1em;
454471
-webkit-transform: translate(0, 0);
455-
-ms-transform: translate(0, 0);
456472
transform: translate(0, 0);
457473
}
458474
}

0 commit comments

Comments
 (0)
This repository has been archived.