Compare commits
3 commits
38ce483e78
...
79c9ed7673
Author | SHA1 | Date | |
---|---|---|---|
79c9ed7673 | |||
625cffe55d | |||
4fa39b3c5e |
8 changed files with 324 additions and 33 deletions
Binary file not shown.
|
@ -138,4 +138,111 @@
|
|||
grid-template-columns: repeat(auto-fit, minmax(24ch, 1fr));
|
||||
gap: 2rem;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.custom-btn {
|
||||
width: 130px;
|
||||
height: 40px;
|
||||
color: #4c4f69;
|
||||
border-radius: 5px;
|
||||
padding: 10px 25px;
|
||||
font-family: 'Lato', sans-serif;
|
||||
font-weight: 500;
|
||||
background: transparent;
|
||||
cursor: pointer;
|
||||
transition: all 0.3s ease;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
box-shadow: inset 2px 2px 2px 0px rgba(255, 255, 255, .5),
|
||||
7px 7px 20px 0px rgba(0, 0, 0, .1),
|
||||
4px 4px 5px 0px rgba(0, 0, 0, .1);
|
||||
outline: none;
|
||||
}
|
||||
|
||||
/* 8 */
|
||||
.btn-1 {
|
||||
background-color: #c6d0f5;
|
||||
background-image: linear-gradient(315deg, #c6d0f5 0%, #fab387 74%);
|
||||
line-height: 42px;
|
||||
padding: 0;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.btn-1 span {
|
||||
position: relative;
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.btn-1:before,
|
||||
.btn-1:after {
|
||||
position: absolute;
|
||||
content: "";
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: #fab387;
|
||||
/*box-shadow: 4px 4px 6px 0 rgba(255,255,255,.5),
|
||||
-4px -4px 6px 0 rgba(116, 125, 136, .2),
|
||||
inset -4px -4px 6px 0 rgba(255,255,255,.5),
|
||||
inset 4px 4px 6px 0 rgba(116, 125, 136, .3);*/
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.btn-1:before {
|
||||
height: 0%;
|
||||
width: 2px;
|
||||
}
|
||||
|
||||
.btn-1:after {
|
||||
width: 0%;
|
||||
height: 2px;
|
||||
}
|
||||
|
||||
.btn-1:hover:before {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.btn-1:hover:after {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.btn-1:hover {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.btn-1 span:hover {
|
||||
color: #fab387;
|
||||
}
|
||||
|
||||
.btn-1 span:before,
|
||||
.btn-1 span:after {
|
||||
position: absolute;
|
||||
content: "";
|
||||
left: 0;
|
||||
top: 0;
|
||||
background: #fab387;
|
||||
/*box-shadow: 4px 4px 6px 0 rgba(255,255,255,.5),
|
||||
-4px -4px 6px 0 rgba(116, 125, 136, .2),
|
||||
inset -4px -4px 6px 0 rgba(255,255,255,.5),
|
||||
inset 4px 4px 6px 0 rgba(116, 125, 136, .3);*/
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.btn-1 span:before {
|
||||
width: 2px;
|
||||
height: 0%;
|
||||
}
|
||||
|
||||
.btn-1 span:after {
|
||||
height: 2px;
|
||||
width: 0%;
|
||||
}
|
||||
|
||||
.btn-1 span:hover:before {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.btn-1 span:hover:after {
|
||||
width: 100%;
|
||||
}
|
|
@ -13,7 +13,6 @@
|
|||
--accent-gradient: linear-gradient(45deg, rgb(var(--accent)), rgb(var(--accent-light)) 30%, white 60%);
|
||||
|
||||
font-family: system-ui, sans-serif;
|
||||
|
||||
}
|
||||
|
||||
html {
|
||||
|
@ -32,6 +31,10 @@ main {
|
|||
line-height: 1.6;
|
||||
}
|
||||
|
||||
audio {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 4rem;
|
||||
font-weight: 700;
|
||||
|
|
196
public/scripts/cursor.js
Normal file
196
public/scripts/cursor.js
Normal file
|
@ -0,0 +1,196 @@
|
|||
// <![CDATA[
|
||||
var colour="#f5e0dc"; // in addition to "random" can be set to any valid colour eg "#f0f" or "red"
|
||||
var sparkles=50;
|
||||
|
||||
/****************************
|
||||
* Tinkerbell Magic Sparkle *
|
||||
*(c)2005-13 mf2fm web-design*
|
||||
* http://www.mf2fm.com/rv *
|
||||
* DON'T EDIT BELOW THIS BOX *
|
||||
****************************/
|
||||
var x=ox=400;
|
||||
var y=oy=300;
|
||||
var swide=800;
|
||||
var shigh=600;
|
||||
var sleft=sdown=0;
|
||||
var tiny=new Array();
|
||||
var star=new Array();
|
||||
var starv=new Array();
|
||||
var starx=new Array();
|
||||
var stary=new Array();
|
||||
var tinyx=new Array();
|
||||
var tinyy=new Array();
|
||||
var tinyv=new Array();
|
||||
|
||||
window.onload=function() { if (document.getElementById) {
|
||||
var i, rats, rlef, rdow;
|
||||
for (var i=0; i<sparkles; i++) {
|
||||
var rats=createDiv(3, 3);
|
||||
rats.style.visibility="hidden";
|
||||
rats.style.zIndex="999";
|
||||
document.body.appendChild(tiny[i]=rats);
|
||||
starv[i]=0;
|
||||
tinyv[i]=0;
|
||||
var rats=createDiv(5, 5);
|
||||
rats.style.backgroundColor="transparent";
|
||||
rats.style.visibility="hidden";
|
||||
rats.style.zIndex="999";
|
||||
var rlef=createDiv(1, 5);
|
||||
var rdow=createDiv(5, 1);
|
||||
rats.appendChild(rlef);
|
||||
rats.appendChild(rdow);
|
||||
rlef.style.top="2px";
|
||||
rlef.style.left="0px";
|
||||
rdow.style.top="0px";
|
||||
rdow.style.left="2px";
|
||||
document.body.appendChild(star[i]=rats);
|
||||
}
|
||||
set_width();
|
||||
sparkle();
|
||||
}}
|
||||
|
||||
function sparkle() {
|
||||
var c;
|
||||
if (Math.abs(x-ox)>1 || Math.abs(y-oy)>1) {
|
||||
ox=x;
|
||||
oy=y;
|
||||
for (c=0; c<sparkles; c++) if (!starv[c]) {
|
||||
star[c].style.left=(starx[c]=x)+"px";
|
||||
star[c].style.top=(stary[c]=y+1)+"px";
|
||||
star[c].style.clip="rect(0px, 5px, 5px, 0px)";
|
||||
star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour;
|
||||
star[c].style.visibility="visible";
|
||||
starv[c]=50;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (c=0; c<sparkles; c++) {
|
||||
if (starv[c]) update_star(c);
|
||||
if (tinyv[c]) update_tiny(c);
|
||||
}
|
||||
setTimeout("sparkle()", 40);
|
||||
}
|
||||
|
||||
function update_star(i) {
|
||||
if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)";
|
||||
if (starv[i]) {
|
||||
stary[i]+=1+Math.random()*3;
|
||||
starx[i]+=(i%5-2)/5;
|
||||
if (stary[i]<shigh+sdown) {
|
||||
star[i].style.top=stary[i]+"px";
|
||||
star[i].style.left=starx[i]+"px";
|
||||
}
|
||||
else {
|
||||
star[i].style.visibility="hidden";
|
||||
starv[i]=0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
tinyv[i]=50;
|
||||
tiny[i].style.top=(tinyy[i]=stary[i])+"px";
|
||||
tiny[i].style.left=(tinyx[i]=starx[i])+"px";
|
||||
tiny[i].style.width="2px";
|
||||
tiny[i].style.height="2px";
|
||||
tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor;
|
||||
star[i].style.visibility="hidden";
|
||||
tiny[i].style.visibility="visible"
|
||||
}
|
||||
}
|
||||
|
||||
function update_tiny(i) {
|
||||
if (--tinyv[i]==25) {
|
||||
tiny[i].style.width="1px";
|
||||
tiny[i].style.height="1px";
|
||||
}
|
||||
if (tinyv[i]) {
|
||||
tinyy[i]+=1+Math.random()*3;
|
||||
tinyx[i]+=(i%5-2)/5;
|
||||
if (tinyy[i]<shigh+sdown) {
|
||||
tiny[i].style.top=tinyy[i]+"px";
|
||||
tiny[i].style.left=tinyx[i]+"px";
|
||||
}
|
||||
else {
|
||||
tiny[i].style.visibility="hidden";
|
||||
tinyv[i]=0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
else tiny[i].style.visibility="hidden";
|
||||
}
|
||||
|
||||
document.onmousemove=mouse;
|
||||
function mouse(e) {
|
||||
if (e) {
|
||||
y=e.pageY;
|
||||
x=e.pageX;
|
||||
}
|
||||
else {
|
||||
set_scroll();
|
||||
y=event.y+sdown;
|
||||
x=event.x+sleft;
|
||||
}
|
||||
}
|
||||
|
||||
window.onscroll=set_scroll;
|
||||
function set_scroll() {
|
||||
if (typeof(self.pageYOffset)=='number') {
|
||||
sdown=self.pageYOffset;
|
||||
sleft=self.pageXOffset;
|
||||
}
|
||||
else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) {
|
||||
sdown=document.body.scrollTop;
|
||||
sleft=document.body.scrollLeft;
|
||||
}
|
||||
else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
|
||||
sleft=document.documentElement.scrollLeft;
|
||||
sdown=document.documentElement.scrollTop;
|
||||
}
|
||||
else {
|
||||
sdown=0;
|
||||
sleft=0;
|
||||
}
|
||||
}
|
||||
|
||||
window.onresize=set_width;
|
||||
function set_width() {
|
||||
var sw_min=999999;
|
||||
var sh_min=999999;
|
||||
if (document.documentElement && document.documentElement.clientWidth) {
|
||||
if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth;
|
||||
if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight;
|
||||
}
|
||||
if (typeof(self.innerWidth)=='number' && self.innerWidth) {
|
||||
if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth;
|
||||
if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight;
|
||||
}
|
||||
if (document.body.clientWidth) {
|
||||
if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth;
|
||||
if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight;
|
||||
}
|
||||
if (sw_min==999999 || sh_min==999999) {
|
||||
sw_min=800;
|
||||
sh_min=600;
|
||||
}
|
||||
swide=sw_min;
|
||||
shigh=sh_min;
|
||||
}
|
||||
|
||||
function createDiv(height, width) {
|
||||
var div=document.createElement("div");
|
||||
div.style.position="absolute";
|
||||
div.style.height=height+"px";
|
||||
div.style.width=width+"px";
|
||||
div.style.overflow="hidden";
|
||||
return (div);
|
||||
}
|
||||
|
||||
function newColour() {
|
||||
var c=new Array();
|
||||
c[0]=255;
|
||||
c[1]=Math.floor(Math.random()*256);
|
||||
c[2]=Math.floor(Math.random()*(256-c[1]/2));
|
||||
c.sort(function(){return (0.5 - Math.random());});
|
||||
return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")");
|
||||
}
|
||||
// ]]>
|
7
public/scripts/fuckchrome.js
Normal file
7
public/scripts/fuckchrome.js
Normal file
|
@ -0,0 +1,7 @@
|
|||
|
||||
let chromium = /Chrome|Chromium|OPR|Opera|Edge|UC|QQ|Brave/.test(
|
||||
navigator.userAgent
|
||||
);
|
||||
let disclaimer = `<div class="web-disclaimer">`;
|
||||
if (chromium)
|
||||
window.location.replace("/nochrome");
|
|
@ -3,32 +3,11 @@
|
|||
|
||||
<center>
|
||||
<nav class="navbar" role="navigation" aria-label="main navigation">
|
||||
<div class="navbar-brand">
|
||||
<a
|
||||
role="button"
|
||||
class="navbar-burger"
|
||||
data-target="navMenu"
|
||||
aria-label="menu"
|
||||
aria-expanded="false"
|
||||
>
|
||||
<span aria-hidden="true"></span>
|
||||
<span aria-hidden="true"></span>
|
||||
<span aria-hidden="true"></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="navbar-menu" id="navMenu">
|
||||
<div class="navbar-start">
|
||||
<a class="navbar-item" href="/">
|
||||
<span class="text-gradient">LimePot</span>
|
||||
</a>
|
||||
|
||||
<a class="navbar-item" href="/projects">
|
||||
<span class="text-gradient">Projects</span>
|
||||
</a>
|
||||
|
||||
<a class="navbar-item" href="/blog">
|
||||
<span class="text-gradient">Blog</span>
|
||||
</a>
|
||||
<button class="custom-btn btn-1" type="button" onclick="location.href='/'" ><span>LimePot</span></button>
|
||||
<button class="custom-btn btn-1" type="button" onclick="location.href='/projects'" ><span>Projects</span></button>
|
||||
<button class="custom-btn btn-1" type="button" onclick="location.href='/blog'" ><span>Blog</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
|
|
@ -23,13 +23,7 @@ const { title } = Astro.props;
|
|||
</div>
|
||||
</section>
|
||||
<Footer />
|
||||
<script type="text/javascript">
|
||||
let chromium = /Chrome|Chromium|OPR|Opera|Edge|UC|QQ|Brave/.test(
|
||||
navigator.userAgent
|
||||
);
|
||||
let disclaimer = `<div class="web-disclaimer">`;
|
||||
if (chromium)
|
||||
window.location.replace("/nochrome");
|
||||
</script>
|
||||
<script type='text/javascript' src='/scripts/fuckchrome.js'></script>
|
||||
<script type='text/javascript' src='/scripts/cursor.js'></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -9,6 +9,11 @@ import Card from "../components/Card.astro";
|
|||
<marquee Behavior="Alternate">
|
||||
<h2 class="title">LimePotato</h1>
|
||||
</marquee>
|
||||
<hr>
|
||||
<figure>
|
||||
<figcaption>Some Ambience?</figcaption>
|
||||
<audio controls src="/assets/sounds/ambience/383506__klankbeeld__pinewood-in-memoriam-febr-05-nl-giersbergen-33db-170215_1085.flac" type="audio/flac">
|
||||
</figure>
|
||||
<hr />
|
||||
<p>
|
||||
Howdy! You can call me <span style="color: #fab387;">[Nelle]</span>,
|
||||
|
|
Reference in a new issue