Fix compatibility and sizing
This commit is contained in:
parent
b388498e8f
commit
aa9047c0d8
9 changed files with 107 additions and 81 deletions
|
|
@ -37,6 +37,15 @@ a {
|
||||||
html {
|
html {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|
||||||
|
overflow: hidden;
|
||||||
|
@media (min-width: $breakpoint-width) and (max-width: 999px) {
|
||||||
|
@include zoom(0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (min-width: 1000px) and (max-width: 1440px) {
|
||||||
|
@include zoom(0.875);
|
||||||
|
}
|
||||||
|
|
||||||
@include on-small-screen {
|
@include on-small-screen {
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
> aside {
|
> aside {
|
||||||
margin: var(--large-margin) auto var(--line-height) auto;
|
margin: var(--large-margin) auto 0 auto;
|
||||||
|
padding-bottom: var(--line-height); // margin-bottom doesn't work in Firefox
|
||||||
|
|
||||||
> p {
|
> p {
|
||||||
@include special-text-font();
|
@include special-text-font();
|
||||||
|
|
|
||||||
|
|
@ -11,9 +11,10 @@ export const generate = ({
|
||||||
photo: html;
|
photo: html;
|
||||||
}): html => `
|
}): html => `
|
||||||
<header id="about">
|
<header id="about">
|
||||||
${photo}
|
<div class="photo-container">
|
||||||
|
${photo}
|
||||||
<div class="placeholder"></div>
|
<div class="placeholder"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<h1>${name}</h1>
|
<h1>${name}</h1>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,53 +2,23 @@
|
||||||
@use '../../style/mixins' as *;
|
@use '../../style/mixins' as *;
|
||||||
|
|
||||||
#about {
|
#about {
|
||||||
text-align: center;
|
|
||||||
box-shadow: var(--shadow);
|
box-shadow: var(--shadow);
|
||||||
padding: var(--normal-margin);
|
padding: var(--normal-margin);
|
||||||
background-color: var(--accent-color);
|
background-color: var(--accent-color);
|
||||||
font-size: 0;
|
|
||||||
|
|
||||||
::selection {
|
|
||||||
background-color: var(--very-light-text-color);
|
|
||||||
color: var(--accent-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
h1,
|
|
||||||
.placeholder {
|
|
||||||
@include title-font();
|
|
||||||
}
|
|
||||||
|
|
||||||
$img-size: 125px;
|
|
||||||
.image {
|
|
||||||
@include square($img-size);
|
|
||||||
border-radius: 100%;
|
|
||||||
box-shadow: var(--shadow);
|
|
||||||
margin: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
p {
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1,
|
|
||||||
p,
|
|
||||||
a {
|
|
||||||
color: var(--very-light-text-color);
|
|
||||||
margin-top: var(--line-height);
|
|
||||||
|
|
||||||
:focus:not(:hover) {
|
|
||||||
outline: var(--very-light-text-color) solid var(--line-width);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
border-bottom: 2px solid var(--very-light-text-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
@include on-small-screen {
|
@include on-small-screen {
|
||||||
:focus:not(:hover) {
|
:focus:not(:hover) {
|
||||||
outline: var(--very-light-text-color) solid var(--line-width);
|
outline: var(--very-light-text-color) solid var(--line-width);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$img-size: 125px;
|
||||||
|
> .photo-container > .image {
|
||||||
|
@include square($img-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
> h1 {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@include on-large-screen {
|
@include on-large-screen {
|
||||||
|
|
@ -57,27 +27,65 @@
|
||||||
width: var(--body-width);
|
width: var(--body-width);
|
||||||
margin: calc(#{var(--normal-margin)} + #{$img-size} * 1 / 3) auto var(--large-margin)
|
margin: calc(#{var(--normal-margin)} + #{$img-size} * 1 / 3) auto var(--large-margin)
|
||||||
auto;
|
auto;
|
||||||
position: relative;
|
|
||||||
border-radius: var(--border-radius);
|
border-radius: var(--border-radius);
|
||||||
|
|
||||||
.image {
|
> .photo-container {
|
||||||
@include square($img-size);
|
position: relative;
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
> .image {
|
||||||
top: 0;
|
@include square($img-size);
|
||||||
transform: translateY(math.div(-$img-size, 3)) translateX(math.div(-$img-size, 3));
|
position: absolute;
|
||||||
|
left: calc(#{math.div(-$img-size, 3)} - var(--normal-margin));
|
||||||
|
top: calc(#{math.div(-$img-size, 3)} - var(--normal-margin));
|
||||||
|
}
|
||||||
|
|
||||||
|
> .placeholder {
|
||||||
|
@include square(calc(#{$img-size} * 2 / 3 - #{var(--normal-margin)}));
|
||||||
|
box-sizing: content-box;
|
||||||
|
float: left;
|
||||||
|
margin: 0 0.75ex 0.5ex 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.placeholder {
|
> h1 {
|
||||||
@include square(calc(#{$img-size} * 2 / 3 - #{var(--normal-margin)}));
|
|
||||||
box-sizing: content-box;
|
|
||||||
float: left;
|
|
||||||
margin: 0 0.75ex 0.5ex 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
text-align: left;
|
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
::selection {
|
||||||
|
background-color: var(--very-light-text-color);
|
||||||
|
color: var(--accent-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
> h1,
|
||||||
|
> .photo-container > .placeholder {
|
||||||
|
@include title-font();
|
||||||
|
}
|
||||||
|
|
||||||
|
> .photo-container {
|
||||||
|
> .image {
|
||||||
|
border-radius: 100%;
|
||||||
|
box-shadow: var(--shadow);
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
> h1,
|
||||||
|
> p,
|
||||||
|
a {
|
||||||
|
color: var(--very-light-text-color);
|
||||||
|
margin-top: var(--line-height);
|
||||||
|
|
||||||
|
:focus:not(:hover) {
|
||||||
|
outline: var(--very-light-text-color) solid var(--line-width);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
> p {
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
border-bottom: 2px solid var(--very-light-text-color);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,11 @@
|
||||||
@use '../../../style/mixins' as *;
|
@use '../../../style/mixins' as *;
|
||||||
|
|
||||||
#theme-switcher {
|
#theme-switcher {
|
||||||
@include on-large-screen {
|
|
||||||
position: absolute;
|
|
||||||
top: calc(-1 * var(--normal-margin));
|
|
||||||
left: calc(50% + 50vw);
|
|
||||||
transform: translateX(calc(-100% - var(--normal-margin))) translateY(-50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
@include on-small-screen {
|
|
||||||
position: relative;
|
|
||||||
margin-top: var(--normal-margin);
|
|
||||||
}
|
|
||||||
|
|
||||||
background-color: var(--accent-color);
|
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
background-color: var(--accent-color);
|
||||||
-webkit-appearance: none;
|
-webkit-appearance: none;
|
||||||
-moz-appearance: none;
|
-moz-appearance: none;
|
||||||
|
display: block;
|
||||||
|
|
||||||
$size: var(--icon-size);
|
$size: var(--icon-size);
|
||||||
width: calc(2 * #{$size});
|
width: calc(2 * #{$size});
|
||||||
|
|
@ -27,6 +16,17 @@
|
||||||
border-radius: 1000px;
|
border-radius: 1000px;
|
||||||
box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, 0.175), inset 0 0 1px rgba(0, 0, 0, 0.4);
|
box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, 0.175), inset 0 0 1px rgba(0, 0, 0, 0.4);
|
||||||
|
|
||||||
|
@include on-large-screen {
|
||||||
|
position: absolute;
|
||||||
|
top: var(--normal-margin);
|
||||||
|
right: var(--normal-margin);
|
||||||
|
}
|
||||||
|
|
||||||
|
@include on-small-screen {
|
||||||
|
position: relative;
|
||||||
|
margin: var(--normal-margin) auto 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
&:before {
|
&:before {
|
||||||
// moon + sun
|
// moon + sun
|
||||||
@include square($icon-size);
|
@include square($icon-size);
|
||||||
|
|
@ -70,7 +70,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
&:after {
|
&:after {
|
||||||
background-color: transparent;
|
|
||||||
transform: translateY(-50%) translateX(calc(#{$size} * 2 - #{$icon-size}));
|
transform: translateY(-50%) translateX(calc(#{$size} * 2 - #{$icon-size}));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,13 +15,13 @@
|
||||||
@include square(auto);
|
@include square(auto);
|
||||||
|
|
||||||
@include on-large-screen {
|
@include on-large-screen {
|
||||||
max-width: 80vw;
|
max-width: 80%;
|
||||||
max-height: 80vh;
|
max-height: 80%;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include on-small-screen {
|
@include on-small-screen {
|
||||||
max-width: 95vw;
|
max-width: 95%;
|
||||||
max-height: 80vh;
|
max-height: 80%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: var(--small-margin);
|
bottom: var(--small-margin);
|
||||||
right: var(--small-margin);
|
right: var(--normal-margin);
|
||||||
padding: 4px;
|
padding: 4px;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
$breakpoint-width: 800px !default;
|
@use 'sass:math';
|
||||||
|
|
||||||
|
$breakpoint-width: 700px !default;
|
||||||
|
|
||||||
@mixin on-small-screen() {
|
@mixin on-small-screen() {
|
||||||
@media (max-width: ($breakpoint-width - 1px)) {
|
@media (max-width: ($breakpoint-width - 1px)) {
|
||||||
|
|
@ -18,6 +20,13 @@ $breakpoint-width: 800px !default;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@mixin zoom($q) {
|
||||||
|
transform: scale($q);
|
||||||
|
transform-origin: top center;
|
||||||
|
height: math.div(100%, $q);
|
||||||
|
margin: 0 (0.5 - math.div(0.5, $q)) * 100%;
|
||||||
|
}
|
||||||
|
|
||||||
@mixin image-button($icon-size) {
|
@mixin image-button($icon-size) {
|
||||||
display: block;
|
display: block;
|
||||||
box-sizing: content-box;
|
box-sizing: content-box;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@
|
||||||
--accent-color: #b7455e;
|
--accent-color: #b7455e;
|
||||||
--sun-color: #f7f78c;
|
--sun-color: #f7f78c;
|
||||||
--very-light-text-color: #ffffff;
|
--very-light-text-color: #ffffff;
|
||||||
|
|
||||||
--background: #ffffff;
|
--background: #ffffff;
|
||||||
--normal-text-color: #31343f;
|
--normal-text-color: #31343f;
|
||||||
--card-color: #ffffff;
|
--card-color: #ffffff;
|
||||||
|
|
@ -27,7 +26,7 @@
|
||||||
--inset-shadow: inset 0 -9px 7px -7px rgb(0, 0, 0, 0.15);
|
--inset-shadow: inset 0 -9px 7px -7px rgb(0, 0, 0, 0.15);
|
||||||
--icon-size: 45px;
|
--icon-size: 45px;
|
||||||
--large-icon-size: 60px;
|
--large-icon-size: 60px;
|
||||||
--body-width: min(85%, 830px);
|
--body-width: min(80%, 830px);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue