Resolve "use CSS for header"

This commit is contained in:
2025-08-16 00:40:32 +02:00
parent 60d314abaf
commit c8736577e5
18 changed files with 464 additions and 162 deletions
+5 -5
View File
@@ -1,10 +1,10 @@
<!DOCTYPE html>
<!doctype html>
<html lang="">
<head>
<meta charset="UTF-8">
<link rel="icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Vite App</title>
<meta charset="UTF-8" />
<link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Kontor</title>
</head>
<body>
<div id="app"></div>
+4 -46
View File
@@ -1,62 +1,20 @@
<script setup lang="ts">
import { RouterLink, RouterView } from 'vue-router'
import { RouterView } from 'vue-router'
import MainNavbar from '@/components/MainNavbar.vue'
</script>
<template>
<header>
<img alt="Vue logo" class="logo" src="@/assets/logo.svg" width="125" height="125" />
<div class="wrapper">
<nav>
<RouterLink to="/">Home</RouterLink>
<RouterLink to="/about">About</RouterLink>
</nav>
</div>
<MainNavbar />
</header>
<RouterView />
</template>
<style scoped>
header {
line-height: 1.5;
max-height: 100vh;
}
.logo {
display: block;
margin: 0 auto 2rem;
}
nav {
width: 100%;
font-size: 12px;
text-align: center;
margin-top: 2rem;
}
nav a.router-link-exact-active {
color: var(--color-text);
}
nav a.router-link-exact-active:hover {
background-color: transparent;
}
nav a {
display: inline-block;
padding: 0 1rem;
border-left: 1px solid var(--color-border);
}
nav a:first-of-type {
border: 0;
}
@media (min-width: 1024px) {
header {
display: flex;
display: inline;
place-items: center;
padding-right: calc(var(--section-gap) / 2);
}
+4 -39
View File
@@ -1,5 +1,5 @@
/* color palette from <https://github.com/vuejs/theme> */
:root {
/* :root {
--vt-c-white: #ffffff;
--vt-c-white-soft: #f8f8f8;
--vt-c-white-mute: #f2f2f2;
@@ -19,7 +19,7 @@
--vt-c-text-light-2: rgba(60, 60, 60, 0.66);
--vt-c-text-dark-1: var(--vt-c-white);
--vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
}
} */
/* semantic color variables for this project */
:root {
@@ -36,7 +36,7 @@
--section-gap: 160px;
}
@media (prefers-color-scheme: dark) {
/* @media (prefers-color-scheme: dark) {
:root {
--color-background: var(--vt-c-black);
--color-background-soft: var(--vt-c-black-soft);
@@ -48,39 +48,4 @@
--color-heading: var(--vt-c-text-dark-1);
--color-text: var(--vt-c-text-dark-2);
}
}
*,
*::before,
*::after {
box-sizing: border-box;
margin: 0;
font-weight: normal;
}
body {
min-height: 100vh;
color: var(--color-text);
background: var(--color-background);
transition:
color 0.5s,
background-color 0.5s;
line-height: 1.6;
font-family:
Inter,
-apple-system,
BlinkMacSystemFont,
'Segoe UI',
Roboto,
Oxygen,
Ubuntu,
Cantarell,
'Fira Sans',
'Droid Sans',
'Helvetica Neue',
sans-serif;
font-size: 15px;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
} */
+10 -9
View File
@@ -1,35 +1,36 @@
@import './base.css';
#app {
/* #app {
max-width: 1280px;
margin: 0 auto;
padding: 2rem;
font-weight: normal;
}
} */
a,
/* a,
.green {
text-decoration: none;
color: hsla(160, 100%, 37%, 1);
transition: 0.4s;
padding: 3px;
}
} */
@media (hover: hover) {
/* @media (hover: hover) {
a:hover {
background-color: hsla(160, 100%, 37%, 0.2);
}
}
} */
@media (min-width: 1024px) {
/* @media (min-width: 1024px) {
body {
display: flex;
place-items: center;
}
#app {
#app {
display: grid;
grid-template-columns: 1fr 1fr;
padding: 0 2rem;
}
}
} */
+75
View File
@@ -0,0 +1,75 @@
<script setup lang="ts">
import { RouterLink } from 'vue-router'
</script>
<template>
<ul>
<li><RouterLink to="/">Home</RouterLink></li>
<li><RouterLink to="/comics">Comics</RouterLink></li>
<li><RouterLink to="/tysc">TYSC</RouterLink></li>
<li><RouterLink to="/mediq">Media</RouterLink></li>
<li style="float: right"><RouterLink to="/about">About</RouterLink></li>
</ul>
</template>
<style lang="css" scoped>
nav {
width: 100%;
font-size: 12px;
text-align: left;
margin-top: 2rem;
}
nav a.router-link-exact-active {
color: var(--color-text);
}
nav a.router-link-exact-active:hover {
background-color: transparent;
}
nav a {
display: inline-block;
padding: 0 1rem;
border-left: 1px solid var(--color-border);
}
nav a:first-of-type {
border: 0;
}
ul {
position: sticky;
width: 90%;
align-items: center;
top: 0;
list-style-type: none;
margin: 1em;
padding: 1em;
overflow: hidden;
background-color: lightgray;
border-radius: 10px;
}
li {
float: left;
border-right: 1px solid #bbb;
}
li:last-child {
border-right: none;
}
li a {
display: block;
color: darkblue;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
li a:hover:not(.active) {
background-color: gray;
}
.active {
background-color: #04aa6d;
}
</style>
+6
View File
@@ -1,5 +1,6 @@
import { createRouter, createWebHistory } from 'vue-router'
import HomeView from '../views/HomeView.vue'
import ComicsView from '@/views/ComicsView.vue'
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
@@ -9,6 +10,11 @@ const router = createRouter({
name: 'home',
component: HomeView,
},
{
path: '/comics',
name: 'comics',
component: ComicsView,
},
{
path: '/about',
name: 'about',
+6
View File
@@ -0,0 +1,6 @@
<script setup lang="ts"></script>
<template>
<div>
<h2>Comics</h2>
</div>
</template>