Compare commits

..

4 Commits

Author SHA1 Message Date
nico.hdr8
054715688f fix(navbar): other blur config 2025-10-08 16:39:22 +02:00
nico.hdr8
cb044eb720 fix(navbar): make blur behind navigation-bar bigger 2025-10-08 16:33:56 +02:00
nico.hdr8
b1a16e6bb8 fix(core): compress images 2025-10-08 16:03:36 +02:00
nico.hdr8
0979f62718 feat(background): make stars faster 2025-10-08 09:12:29 +02:00
7 changed files with 8 additions and 46 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 629 KiB

View File

@@ -20,7 +20,7 @@ export class Background {
private minBlink = 0.2; private minBlink = 0.2;
private maxBlink = 1; private maxBlink = 1;
private blinkSpeed = 0.002; // Stern blinkt langsamer oder schneller private blinkSpeed = 0.002; // Stern blinkt langsamer oder schneller
private maxSpeed = 0.1; // Sternbewegungsgeschwindigkeit private maxSpeed = .8; // Sternbewegungsgeschwindigkeit
private parallaxFactor = 0.5; // Scroll-Parallax-Faktor private parallaxFactor = 0.5; // Scroll-Parallax-Faktor
// Feature toggles // Feature toggles
@@ -47,8 +47,6 @@ export class Background {
this.bodyHeight = document.body.scrollHeight + 110; // navbar height this.bodyHeight = document.body.scrollHeight + 110; // navbar height
console.log(this.bodyHeight)
for (let i = 0; i < this.numStars * (this.bodyHeight / this.height); i++) { for (let i = 0; i < this.numStars * (this.bodyHeight / this.height); i++) {
this.stars.push({ this.stars.push({
x: Math.random() * this.width, x: Math.random() * this.width,

View File

@@ -73,5 +73,4 @@
<div class="block md:hidden w-full h-full fixed top-0 left-0 z-40 backdrop-blur-md"></div> <div class="block md:hidden w-full h-full fixed top-0 left-0 z-40 backdrop-blur-md"></div>
} }
<div class="blur blur1"></div> <div class="z-10 backdrop-blur-xl fixed top-0 left-0 w-full h-[150px] mask-b-from-70%"></div>
<div class="blur blur2"></div>

View File

@@ -35,33 +35,6 @@ ul li a {
} }
.mobile-menu ul li a { .mobile-menu ul li a {
font-size: 1.3rem; font-size: 1rem;
padding: 15px 30px; padding: 15px 30px;
} }
.blur {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 120px;
pointer-events: none;
}
.blur1 {
z-index: 10;
backdrop-filter: blur(3px);
mask-image: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 1) 70%, rgba(0, 0, 0, 0) 100%);
-webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 1) 70%, rgba(0, 0, 0, 0) 100%);
}
.blur2 {
z-index: 20;
backdrop-filter: blur(5px);
mask-image: linear-gradient(to top, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 1) 85%, rgba(0, 0, 0, 1) 100%);
-webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 1) 85%, rgba(0, 0, 0, 1) 100%);
}
.blurred {
backdrop-filter: blur(5px);
}

View File

@@ -1,16 +1,12 @@
<main class="flex flex-row flex-wrap justify-center items-center gap-10 py-10"> <main class="flex flex-row flex-wrap justify-center items-center gap-10 py-10"
<div class="lg:w-[40%] w-[80%] text-center lg:text-left" pAnimateOnScroll
pAnimateOnScroll enterClass="animate-enter fade-in-10 slide-in-from-t-8 animate-duration-1000">
enterClass="animate-enter fade-in-10 slide-in-from-{{ isMobile() ? 't' : 'l' }}-8 animate-duration-1000" <div class="lg:w-[40%] w-[80%] text-center lg:text-left">
leaveClass="animate-leave fade-out-0">
<span class="block text-[3rem]/[1.1] lg:text-[4rem]/[1.1] font-bold mb-4" [innerHTML]="'home.header' | translate"></span> <span class="block text-[3rem]/[1.1] lg:text-[4rem]/[1.1] font-bold mb-4" [innerHTML]="'home.header' | translate"></span>
<span class="block text-[1rem]/[1.3] lg:text-[1.5rem]/[1.3] text-gray">{{ 'home.subheader' | translate }}</span> <span class="block text-[1rem]/[1.3] lg:text-[1.5rem]/[1.3] text-gray">{{ 'home.subheader' | translate }}</span>
<a class="block mt-5" href="https://www.google.com/maps/place/Dobersberg,+Nieder%C3%B6sterreich" target="_blank"><p-chip label="Dobersberg, Niederösterreich" icon="fa-solid fa-location-dot"/></a> <a class="block mt-5" href="https://www.google.com/maps/place/Dobersberg,+Nieder%C3%B6sterreich" target="_blank"><p-chip label="Dobersberg, Niederösterreich" icon="fa-solid fa-location-dot"/></a>
</div> </div>
<div class="lg:w-[30%] w-[80%] text-center" <div class="lg:w-[30%] w-[80%] text-center">
pAnimateOnScroll
enterClass="animate-enter fade-in-10 slide-in-from-{{ isMobile() ? 'b' : 'r' }}-8 animate-duration-1000"
leaveClass="animate-leave fade-out-0">
<img src="img/me.png" alt=""> <img src="img/me.png" alt="">
<div class="pt-5 p-3 flex gap-3 flex-wrap justify-center"> <div class="pt-5 p-3 flex gap-3 flex-wrap justify-center">
<a pButton outlined severity="secondary" label="nico@td-haider.at" icon="fa-solid fa-envelope" href="mailto:nico@td-haider.at"></a> <a pButton outlined severity="secondary" label="nico@td-haider.at" icon="fa-solid fa-envelope" href="mailto:nico@td-haider.at"></a>

View File

@@ -13,8 +13,4 @@ import { AnimateOnScrollModule } from 'primeng/animateonscroll';
}) })
export class Home { export class Home {
isMobile() {
return window.innerWidth < 1024;
}
} }