Based on:
A Pen by Chris Coyier on CodePen.
| <div class="wrap" id="wrap"> | |
| <header class="top-header"> | |
| <span class="menu-icon">☰</span> | |
| </header> | |
| <div class="search"> | |
| <input type="search" placeholder="Search or type URL" /> | |
| </div> | |
| <div class="top"> | |
| <div class="hero"></div> | |
| </div> | |
| <main> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| </main> | |
| </div> |
| var wrap = $("#wrap"); | |
| wrap.on("scroll", function(e) { | |
| if (this.scrollTop > 147) { | |
| wrap.addClass("fix-search"); | |
| } else { | |
| wrap.removeClass("fix-search"); | |
| } | |
| }); |
Based on:
A Pen by Chris Coyier on CodePen.
| * { | |
| box-sizing: border-box; | |
| } | |
| body { | |
| margin: 0; | |
| } | |
| .wrap { | |
| width: 320px; | |
| border: 1px solid #ccc; | |
| height: 480px; | |
| overflow: auto; | |
| position: relative; | |
| } | |
| .top-header { | |
| position: fixed; | |
| top: 0; | |
| left: 0; | |
| width: 320px; | |
| height: 60px; | |
| .menu-icon { | |
| position: absolute; | |
| top: 0; | |
| right: 0; | |
| padding: 18px 20px; | |
| } | |
| .fix-search & { | |
| background: #eee; | |
| } | |
| } | |
| .search { | |
| position: absolute; | |
| top: 155px; | |
| left: 20px; | |
| right: 20px; | |
| input { | |
| width: 280px; | |
| border: 1px solid #ccc; | |
| padding: 8px; | |
| font-size: 15px; | |
| transition: width 0.2s; | |
| -webkit-appearance: none; | |
| } | |
| .fix-search & { | |
| position: fixed; | |
| top: 10px; | |
| input { | |
| width: 250px; | |
| } | |
| } | |
| } | |
| .top { | |
| height: 250px; | |
| padding-top: 40px; | |
| } | |
| .hero { | |
| width: 200px; | |
| height: 100px; | |
| background: #ccc; | |
| margin: 0 auto; | |
| } | |
| main { | |
| padding: 0 20px; | |
| display: flex; | |
| flex-wrap: wrap; | |
| justify-content: space-between; | |
| div { | |
| width: 130px; | |
| height: 80px; | |
| background: #ccc; | |
| margin: 0 0 20px 0; | |
| } | |
| } |