Flexbox
Top Menü
by marusti
HTML
<div class="flexcontainer">
<input type="checkbox" id="responsive-nav">
<label for="responsive-nav" class="responsive-nav-label"><span>☰</span> Menü</label>
<nav>
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a>
<ul>
<li><a href="#">About</a></li>
<li><a href="#">Clients</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
</li>
<li><a href="#">Clients</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
</nav>
<header><img src="http://via.placeholder.com/1920x400"></header>
<main>
<h1>HTML Ipsum Presents</h1>
<p><strong>Pellentesque habitant morbi tristique</strong> senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. <em>Aenean ultricies mi vitae est.</em> Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, <code>commodo vitae</code>, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci,
sagittis tempus lacus enim ac dui. <a href="#">Donec non enim</a> in turpis pulvinar facilisis. Ut felis.</p>
<h2>Header Level 2</h2>
<ol>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
<li>Aliquam tincidunt mauris eu risus.</li>
</ol>
<blockquote>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus magna. Cras in mi at felis aliquet congue. Ut a est eget ligula molestie gravida. Curabitur massa. Donec eleifend, libero at sagittis mollis, tellus est malesuada tellus, at luctus
turpis elit sit amet quam. Vivamus pretium ornare est.</p>
</blockquote>
<h3>Header Level 3</h3>
<ul>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
<li>Aliquam tincidunt mauris eu risus.</li>
</ul>
...
CSS
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 16px;
line-height: 1.5;
max-width: 1920px;
margin: 0 auto
}
.flexcontainer {
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
flex-direction: column;
}
.flexcontainer>* {}
#responsive-nav {
display: none
}
.responsive-nav-label {
font-size: 150%;
padding-left: .5em
}
nav {
display: none
}
input[type=checkbox]:checked~nav {
display: block;
}
nav ul {
list-style-type: none
}
nav ul ul {
padding-left: 1em
}
nav a {
display: flex;
padding: 1em;
text-decoration: none;
}
/*header {background: url ()}*/
footer {
padding: 1em;
background: black;
color: white
}
img {
max-width: 100%;
height: auto
}
@media only screen and (min-width: 768px) {
/* For desktop: */
header {
order: 1
}
nav {
order: 2;
display: block
}
nav ul {
display: -webkit-flex;
display: flex;
-webkit-flex-flow: row wrap;
justify-content: flex-end;
background: black;
}
nav a {
/*display: block;
padding: .5em;*/
color: white
}
nav a:hover {
background: #404040;
}
nav ul ul {
position: absolute;
list-style: none;
visibility: hidden;
display: inline-block;
padding: 0
}
nav ul li:hover ul {
visibility: visible
}
main {
order: 3
}
footer {
order: 4
}
.responsive-nav-label {
display: none
}
}
@media only screen and (min-width: 1200px) {
/* For large desktop: */
}