175 lines
3.7 KiB
Svelte
175 lines
3.7 KiB
Svelte
<div id="app">
|
|
<div class="content-wrap">
|
|
<div class="container">
|
|
<header class="header">
|
|
<div class="brand"><a href="/">Edu</a></div>
|
|
<nav class="header-nav">
|
|
<ul class="list list-reset">
|
|
<li><a href="/about">About</a></li>
|
|
<li><a href="/learn">Learn</a></li>
|
|
<li><a href="/browse">Browse</a></li>
|
|
<li><a href="/contribute">Contribute</a></li>
|
|
</ul>
|
|
</nav>
|
|
</header>
|
|
|
|
<slot></slot>
|
|
</div>
|
|
|
|
<footer class="footer">
|
|
<div class="container">
|
|
<div class="footer-blocks">
|
|
<div class="footer-block">
|
|
<div class="footer-block-title">Eduproj</div>
|
|
<ul class="list-reset">
|
|
<li><a href="https://git.mzhang.io/michael/eduproj" target="_blank">Source Code</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="footer-block">
|
|
<div class="footer-block-title">For Students</div>
|
|
<ul class="list-reset">
|
|
<li><a href="/about">Edu</a></li>
|
|
<li><a href="/about">Edu</a></li>
|
|
<li><a href="/about">Edu</a></li>
|
|
<li><a href="/about">Edu</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="footer-block">
|
|
<div class="footer-block-title">About Us</div>
|
|
<ul class="list-reset">
|
|
<li><a href="/about">About Me</a></li>
|
|
<li><a href="/about">About Me</a></li>
|
|
<li><a href="/about">About Me</a></li>
|
|
<li><a href="/about">About Me</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
</div>
|
|
</div>
|
|
|
|
<style lang="scss" scoped>
|
|
$footer-height: 180px;
|
|
|
|
#app {
|
|
font-family: Heebo, sans-serif;
|
|
position: relative;
|
|
min-height: 100vh;
|
|
|
|
.content-wrap {
|
|
border-top: 10px solid #c00;
|
|
padding-bottom: $footer-height;
|
|
|
|
> .container {
|
|
padding-bottom: 36px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.container {
|
|
padding-right: 15px;
|
|
padding-left: 15px;
|
|
margin-right: auto;
|
|
margin-left: auto;
|
|
}
|
|
@media (min-width: 768px) {
|
|
.container {
|
|
width: 750px;
|
|
}
|
|
}
|
|
@media (min-width: 992px) {
|
|
.container {
|
|
width: 970px;
|
|
}
|
|
}
|
|
@media (min-width: 1200px) {
|
|
.container {
|
|
width: 1170px;
|
|
}
|
|
}
|
|
|
|
.list-reset {
|
|
list-style: none;
|
|
padding: 0;
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
.header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
height: 80px;
|
|
|
|
.brand {
|
|
margin-right: 32px;
|
|
|
|
a {
|
|
color: black;
|
|
font-weight: bold;
|
|
text-decoration: none;
|
|
font-size: 1.5em;
|
|
}
|
|
}
|
|
|
|
.header-nav {
|
|
flex-grow: 1;
|
|
|
|
.list {
|
|
display: flex;
|
|
align-items: center;
|
|
flex-grow: 1;
|
|
white-space: nowrap;
|
|
margin-bottom: 0;
|
|
|
|
li {
|
|
margin: 0;
|
|
box-sizing: inherit;
|
|
|
|
a {
|
|
display: block;
|
|
text-decoration: none;
|
|
color: black;
|
|
padding: 0 32px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.footer {
|
|
background-color: #eee;
|
|
position: absolute;
|
|
bottom: 0;
|
|
width: 100%;
|
|
height: $footer-height;
|
|
padding-top: 24px;
|
|
|
|
.footer-blocks {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
margin-right: -24px;
|
|
margin-left: -24px;
|
|
margin-top: -12px;
|
|
|
|
.footer-block {
|
|
flex-grow: 1;
|
|
flex-basis: 160px;
|
|
box-sizing: content-box;
|
|
padding: 12px 24px;
|
|
|
|
.footer-block-title {
|
|
text-transform: uppercase;
|
|
font-weight: bold;
|
|
line-height: 22px;
|
|
}
|
|
|
|
a {
|
|
color: lighten(black, 20%);
|
|
text-decoration: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</style>
|