Alexander1337 commited on
Commit
99a0edc
·
verified ·
1 Parent(s): 6a50caf

<!DOCTYPE html>

Browse files

<html lang="sv">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bildgalleri</title>
<style>
body {
font-family: Arial, sans-serif;
background-color: #f4f4f4;
margin: 0;
padding: 20px;
}

h1 {
text-align: center;
margin-bottom: 30px;
}

/* Grid för bilder */
.gallery {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 20px;
}

.gallery img {
width: 100%;
border-radius: 10px;
cursor: pointer;
transition: transform 0.3s, box-shadow 0.3s;
}

.gallery img:hover {
transform: scale(1.05);
box-shadow: 0 8px 16px rgba(0,0,0,0.3);
}

/* Ljusbox */
.lightbox {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.8);
display: none;
justify-content: center;
align-items: center;
z-index: 1000;
}

.lightbox img {
max-width: 90%;
max-height: 90%;
border-radius: 10px;
}

.lightbox:target {
display: flex;
}

/* Stäng-knapp */
.close {
position: absolute;
top: 20px;
right: 30px;
font-size: 2rem;
color: white;
text-decoration: none;
}
</style>
</head>
<body>

<h1>Min Bildgalleri</h1>

<div class="gallery">
<a href="#img1"><img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770072235/260c3f64-d8ed-477d-b62a-07a174991a39_qa4zui.jpg" alt="Bild 1"></a>
<a href="#img2"><img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071792/116793853_1720734278103001_2838411385229802706_n_1_amarng.jpg" alt="Bild 2"></a>
<a href="#img3"><img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071777/505614071_3142653765911038_1307952678568576126_n_cc5ddo.jpg" alt="Bild 3"></a>
</div>

<!-- Ljusboxar -->
<div id="img1" class="lightbox">
<a href="#" class="close">×</a>
<img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770072235/260c3f64-d8ed-477d-b62a-07a174991a39_qa4zui.jpg" alt="Bild 1">
</div>

<div id="img2" class="lightbox">
<a href="#" class="close">×</a>
<img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071792/116793853_1720734278103001_2838411385229802706_n_1_amarng.jpg" alt="Bild 2">
</div>

<div id="img3" class="lightbox">
<a href="#" class="close">×</a>
<img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071777/505614071_3142653765911038_1307952678568576126_n_cc5ddo.jpg" alt="Bild 3">
</div>

</body>
</html>

Files changed (5) hide show
  1. components/footer.js +1 -1
  2. components/header.js +3 -2
  3. gallery.html +94 -0
  4. index.html +1 -11
  5. style.css +3 -20
components/footer.js CHANGED
@@ -124,7 +124,7 @@ class FooterComponent extends HTMLElement {
124
  </div>
125
  </div>
126
  <div class="footer-bottom">
127
- <p>Alexander Adolfsson Coaching | Hem | Om mig | Tjänster | Priser | Boka | Kontakt</p>
128
  <p>📸 Instagram: <a href="https://www.instagram.com/ptalexadolfsson/" target="_blank">@ptalexadolfsson</a> | 🎵 TikTok: <a href="https://www.tiktok.com/@ptalexanderadolfsson?lang=sv-SE" target="_blank">@ptalexanderadolfsson</a> | 📘 Facebook: <a href="https://www.facebook.com/profile.php?id=61583938018630" target="_blank">Alexander Adolfsson</a> | ▶️ YouTube: <a href="https://www.youtube.com/@alexanderadolfsson9295" target="_blank">Alexander Adolfsson</a></p>
129
  <p>&copy; 2026 Alexander Adolfsson Coaching. Alla rättigheter reserverade.</p>
130
  </div>
 
124
  </div>
125
  </div>
126
  <div class="footer-bottom">
127
+ <p>Alexander Adolfsson Coaching | Hem | Om mig | Tjänster | Priser | Boka | Galleri | Kontakt</p>
128
  <p>📸 Instagram: <a href="https://www.instagram.com/ptalexadolfsson/" target="_blank">@ptalexadolfsson</a> | 🎵 TikTok: <a href="https://www.tiktok.com/@ptalexanderadolfsson?lang=sv-SE" target="_blank">@ptalexanderadolfsson</a> | 📘 Facebook: <a href="https://www.facebook.com/profile.php?id=61583938018630" target="_blank">Alexander Adolfsson</a> | ▶️ YouTube: <a href="https://www.youtube.com/@alexanderadolfsson9295" target="_blank">Alexander Adolfsson</a></p>
129
  <p>&copy; 2026 Alexander Adolfsson Coaching. Alla rättigheter reserverade.</p>
130
  </div>
components/header.js CHANGED
@@ -87,17 +87,18 @@ class HeaderComponent extends HTMLElement {
87
  <span>MinHemsida</span>
88
  </div>
89
  <ul class="nav-links">
90
- <li><a href="#"><i data-feather="home"></i> Hem</a></li>
91
  <li><a href="#"><i data-feather="user"></i> Om mig</a></li>
92
  <li><a href="#"><i data-feather="list"></i> Tjänster</a></li>
93
  <li><a href="#"><i data-feather="dollar-sign"></i> Priser</a></li>
94
  <li><a href="#"><i data-feather="calendar"></i> Boka</a></li>
 
95
  <li><a href="#"><i data-feather="mail"></i> Kontakt</a></li>
96
  </ul>
97
  <button class="mobile-menu-btn">
98
  <i data-feather="menu"></i>
99
  </button>
100
- </nav>
101
  </header>
102
  `;
103
 
 
87
  <span>MinHemsida</span>
88
  </div>
89
  <ul class="nav-links">
90
+ <li><a href="/"><i data-feather="home"></i> Hem</a></li>
91
  <li><a href="#"><i data-feather="user"></i> Om mig</a></li>
92
  <li><a href="#"><i data-feather="list"></i> Tjänster</a></li>
93
  <li><a href="#"><i data-feather="dollar-sign"></i> Priser</a></li>
94
  <li><a href="#"><i data-feather="calendar"></i> Boka</a></li>
95
+ <li><a href="gallery.html"><i data-feather="image"></i> Galleri</a></li>
96
  <li><a href="#"><i data-feather="mail"></i> Kontakt</a></li>
97
  </ul>
98
  <button class="mobile-menu-btn">
99
  <i data-feather="menu"></i>
100
  </button>
101
+ </nav>
102
  </header>
103
  `;
104
 
gallery.html ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="sv">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Bildgalleri - Alexander Adolfsson Coaching</title>
7
+ <link rel="stylesheet" href="style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ </head>
10
+ <body>
11
+ <custom-header></custom-header>
12
+
13
+ <main class="container mx-auto px-4 py-8">
14
+ <h1 class="text-3xl font-bold text-center mb-8">Mitt Bildgalleri</h1>
15
+
16
+ <div class="gallery grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-6">
17
+ <a href="#img1" class="block">
18
+ <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770072235/260c3f64-d8ed-477d-b62a-07a174991a39_qa4zui.jpg" alt="Träningsresultat 1" class="w-full h-64 object-cover rounded-lg shadow-md hover:shadow-xl transition-shadow duration-300">
19
+ </a>
20
+ <a href="#img2" class="block">
21
+ <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071792/116793853_1720734278103001_2838411385229802706_n_1_amarng.jpg" alt="Träningsresultat 2" class="w-full h-64 object-cover rounded-lg shadow-md hover:shadow-xl transition-shadow duration-300">
22
+ </a>
23
+ <a href="#img3" class="block">
24
+ <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071777/505614071_3142653765911038_1307952678568576126_n_cc5ddo.jpg" alt="Träningsresultat 3" class="w-full h-64 object-cover rounded-lg shadow-md hover:shadow-xl transition-shadow duration-300">
25
+ </a>
26
+ </div>
27
+
28
+ <!-- Lightboxes -->
29
+ <div id="img1" class="lightbox fixed inset-0 bg-black bg-opacity-80 flex items-center justify-center z-50 hidden">
30
+ <a href="#" class="close absolute top-4 right-8 text-4xl text-white">&times;</a>
31
+ <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770072235/260c3f64-d8ed-477d-b62a-07a174991a39_qa4zui.jpg" alt="Träningsresultat 1" class="max-w-4xl max-h-[90vh] rounded-lg">
32
+ </div>
33
+
34
+ <div id="img2" class="lightbox fixed inset-0 bg-black bg-opacity-80 flex items-center justify-center z-50 hidden">
35
+ <a href="#" class="close absolute top-4 right-8 text-4xl text-white">&times;</a>
36
+ <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071792/116793853_1720734278103001_2838411385229802706_n_1_amarng.jpg" alt="Träningsresultat 2" class="max-w-4xl max-h-[90vh] rounded-lg">
37
+ </div>
38
+
39
+ <div id="img3" class="lightbox fixed inset-0 bg-black bg-opacity-80 flex items-center justify-center z-50 hidden">
40
+ <a href="#" class="close absolute top-4 right-8 text-4xl text-white">&times;</a>
41
+ <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071777/505614071_3142653765911038_1307952678568576126_n_cc5ddo.jpg" alt="Träningsresultat 3" class="max-w-4xl max-h-[90vh] rounded-lg">
42
+ </div>
43
+ </main>
44
+
45
+ <custom-footer></custom-footer>
46
+
47
+ <script src="components/header.js"></script>
48
+ <script src="components/footer.js"></script>
49
+ <script>
50
+ // Lightbox functionality
51
+ document.addEventListener('DOMContentLoaded', function() {
52
+ const lightboxes = document.querySelectorAll('.lightbox');
53
+
54
+ lightboxes.forEach(lightbox => {
55
+ const closeBtn = lightbox.querySelector('.close');
56
+
57
+ // Close lightbox when clicking on close button
58
+ closeBtn.addEventListener('click', function(e) {
59
+ e.preventDefault();
60
+ lightbox.classList.add('hidden');
61
+ window.location.hash = '';
62
+ });
63
+
64
+ // Close lightbox when clicking outside the image
65
+ lightbox.addEventListener('click', function(e) {
66
+ if (e.target === lightbox) {
67
+ lightbox.classList.add('hidden');
68
+ window.location.hash = '';
69
+ }
70
+ });
71
+ });
72
+
73
+ // Show lightbox when hash changes
74
+ window.addEventListener('hashchange', function() {
75
+ lightboxes.forEach(lightbox => {
76
+ if (window.location.hash === '#' + lightbox.id) {
77
+ lightbox.classList.remove('hidden');
78
+ } else {
79
+ lightbox.classList.add('hidden');
80
+ }
81
+ });
82
+ });
83
+
84
+ // Show lightbox on initial load if hash exists
85
+ if (window.location.hash) {
86
+ const targetLightbox = document.querySelector(window.location.hash);
87
+ if (targetLightbox) {
88
+ targetLightbox.classList.remove('hidden');
89
+ }
90
+ }
91
+ });
92
+ </script>
93
+ </body>
94
+ </html>
index.html CHANGED
@@ -145,17 +145,7 @@
145
  <p><i class="fas fa-envelope"></i> E-post: <a href="mailto:alexander.pt.adolfsson@gmail.com">alexander.pt.adolfsson@gmail.com</a></p>
146
  <p><i class="fas fa-phone"></i> Telefon: <a href="tel:0736405008">073-640 50 08</a></p>
147
  <p><i class="fas fa-map-marker-alt"></i> Plats: Borås, Sverige</p>
148
- </div>
149
- </section>
150
-
151
- <!-- Gallery -->
152
- <section id="gallery">
153
- <div class="gallery">
154
- <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071792/116793853_1720734278103001_2838411385229802706_n_1_amarng.jpg">
155
- <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071777/505614071_3142653765911038_1307952678568576126_n_cc5ddo.jpg">
156
- <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071762/pexels-photo-376464_br5ucq.jpg">
157
- <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071721/11062b_f11d2809bac34baaadb2950e9d15f8a3_mv2_o2ltbl.avif">
158
- <img src="https://res.cloudinary.com/dttivz1il/image/upload/v1770071709/11062b_b80bd0860f1749178b81eee39e3bc15b_mv2_d_4538_3119_s_4_2_tbiobt.avif">
159
  </div>
160
  </section>
161
  </main>
 
145
  <p><i class="fas fa-envelope"></i> E-post: <a href="mailto:alexander.pt.adolfsson@gmail.com">alexander.pt.adolfsson@gmail.com</a></p>
146
  <p><i class="fas fa-phone"></i> Telefon: <a href="tel:0736405008">073-640 50 08</a></p>
147
  <p><i class="fas fa-map-marker-alt"></i> Plats: Borås, Sverige</p>
148
+ <p><i class="fas fa-images"></i> <a href="gallery.html">Se mitt bildgalleri</a></p>
 
 
 
 
 
 
 
 
 
 
149
  </div>
150
  </section>
151
  </main>
style.css CHANGED
@@ -13,7 +13,7 @@
13
  body {
14
  font-family: 'Inter', sans-serif;
15
  margin: 0;
16
- padding: 0;
17
  line-height: 1.6;
18
  scroll-behavior: smooth;
19
  background: #fff;
@@ -274,6 +274,7 @@ ul.check li {
274
  font-size: 1.1rem;
275
  color: #333;
276
  }
 
277
  ul.check li::before {
278
  content: "✓";
279
  position: absolute;
@@ -290,28 +291,10 @@ ul.check li::before {
290
  font-weight: bold;
291
  font-size: 14px;
292
  }
293
- /* Gallery */
294
- .gallery {
295
- display: grid;
296
- gap: 12px;
297
- grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
298
- margin: 20px 0;
299
- }
300
- .gallery img {
301
- width: 100%;
302
- height: 100%;
303
- object-fit: cover;
304
- border-radius: 12px;
305
- box-shadow: 0 8px 20px rgba(0,0,0,0.15);
306
- transition: transform .3s ease;
307
- }
308
- .gallery img:hover {
309
- transform: scale(1.05);
310
- }
311
  /* Kontakt */
312
  #contact {
313
  background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
314
- color: white;
315
  border-radius: 20px;
316
  padding: 3rem;
317
  }
 
13
  body {
14
  font-family: 'Inter', sans-serif;
15
  margin: 0;
16
+ padding: 0;
17
  line-height: 1.6;
18
  scroll-behavior: smooth;
19
  background: #fff;
 
274
  font-size: 1.1rem;
275
  color: #333;
276
  }
277
+
278
  ul.check li::before {
279
  content: "✓";
280
  position: absolute;
 
291
  font-weight: bold;
292
  font-size: 14px;
293
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
294
  /* Kontakt */
295
  #contact {
296
  background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
297
+ color: white;
298
  border-radius: 20px;
299
  padding: 3rem;
300
  }