phongdt:header footer

This commit is contained in:
Duong Truong Phong
2024-05-30 22:57:45 +07:00
parent dd09434deb
commit 3b435e22ea
18 changed files with 787 additions and 467 deletions
@@ -1,237 +1,69 @@
<script setup lang="ts">
</script>
<template>
<div>
useCmsPageStore
</div>
<footer class="border-t bg-white mt-6">
<div id="footer-desktop" class="px-4 mx-auto max-w-7xl 2xl:px-0 pt-4">
<div class="grid gap-4 font-semibold md:grid-cols-12 text-sm mb-2">
<div class="col-span-8">
<div class="grid grid-cols-2 md:grid-cols-3 gap-4">
</div>
</div>
<div class="col-span-4 grid gap-4 sm:border-l sm:pl-4 auto-rows-max">
<div>
<p class="mb-2 uppercase text-xl font-bold">Liên hệ</p>
<div class="flex flex-col gap-3 whitespace-nowrap">
<div class="flex items-center max-w-full gap-2">
<Icon name="fa6-solid:building" />
<span class="text-sm hover-underline" title="Trụ sở chính: T.5 93A, Thụy Khuê, TP.Hà Nội">Toà Soạn</span>
</div>
<div class="flex items-center max-w-full gap-2">
<Icon name="fa6-solid:envelope" />
<a href="mailto:ktdtonline@gmail.com" class="text-sm hover-underline">
contact@vpress.vn
</a>
</div>
<div class="flex items-center max-w-full gap-2">
<Icon name="fa6-solid:handshake" />
<span class="text-sm">Hợp tác bản quyền</span>
</div>
</div>
</div>
<div>
<p class="mb-2 text-neutral-500">Đường dây nóng</p>
<div class="flex flex-col lg:(flex-row justify-between)">
<div class="flex flex-col">
<span class="text-lg font-bold tracking-wide">0123456789</span>
<p class="text-sm text-neutral-500">( Nội)</p>
</div>
<div class="flex flex-col">
<span class="text-lg font-bold tracking-wide">0123456789</span>
<p class="text-sm text-neutral-500">(Hồ Chí Minh)</p>
</div>
</div>
</div>
</div>
</div>
<hr />
<div class="flex flex-col items-center justify-between gap-4 my-2 sm:flex-row">
<div class="flex items-center justify-center sm:order-1">
<span>Hệ thống đang chạy thử nghiệm</span>
</div>
<div class="flex items-center justify-center gap-4 sm:order-3">
<a href="https://www.facebook.com" title="Theo dõi chúng tôi trên facebook" class="grid duration-300 border rounded-full w-9 h-9 border-neutral-200 text-neutral-500 place-items-center hover:bg-blue-500 hover:text-white hover:border-blue-500">
<Icon name="fa6-brands:facebook-f" />
</a>
<a href="https://www.youtube.com" title="Theo dõi chúng tôi trên youtube" class="grid duration-300 border rounded-full w-9 h-9 border-neutral-200 text-neutral-500 place-items-center hover:bg-black hover:text-white hover:border-black">
<Icon name="ion:logo-youtube" />
</a>
<a href="https://www.tiktok.com" title="Theo dõi chúng tôi trên tiktok" class="grid border rounded-full w-9 h-9 border-neutral-200 text-neutral-500 place-items-center hover:bg-black hover:text-white hover:border-black">
<Icon name="fa6-brands:tiktok" />
</a>
</div>
<div class="flex items-center justify-center gap-4 sm:ml-auto sm:order-2">
<a href="#!" class="text-sm lg:text-base text-neutral-500">RSS</a>
</div>
</div>
<hr />
</div>
</footer>
</template>
<style lang="scss" scoped>
.col-span-8 {
grid-column: span 8 / span 8;
@media (max-width: 1150px) {
grid-column: span 7 / span 7;
}
}
.col-span-12 {
grid-column: span 12 / span 12 !important;
}
.mbootom-5 {
margin-bottom: 5px;
}
.mbootom-14 {
margin-bottom: 14px;
}
.text-neutral-500 {
color: #737373;
}
.grid-col-2 {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
&.grid-col-1 {
grid-template-columns: repeat(1, minmax(0, 1fr));
}
}
.flex-col {
display: flex;
flex-direction: column;
.text-span {
font-size: 1rem;
line-height: 1.75rem;
font-weight: 700;
letter-spacing: 0.025em;
flex: 1;
word-break: break-word;
}
.text-a {
font-size: 0.8rem;
line-height: 1rem;
}
}
.lg-row {
@media (min-width: 1300px) {
flex-direction: row;
justify-content: space-between;
}
}
.footer1 {
margin-top: 1.5rem;
background-color: #ffffff;
color: black;
border-top: 1px solid #bfbfbf;
&-wrap {
max-width: 90%;
margin: auto;
padding-top: 1rem;
padding-left: 0;
padding-right: 0;
.section-right {
display: grid;
margin-bottom: 0.5rem;
gap: 1rem;
font-size: 0.8rem;
line-height: 1.25rem;
font-weight: 400;
@media (min-width: 950px) {
grid-template-columns: repeat(12, minmax(0, 1fr));
}
.footer-category {
display: grid;
gap: 1rem;
height: 100%;
/* grid-template-columns: repeat(5, minmax(0, 1fr)); */
&.grid-col-3 {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
&.grid-col-2 {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.item-nav {
padding: 10px;
.text {
font-size: 0.8rem;
line-height: 1.25rem;
color: black;
}
}
.drag-new {
display: flex;
justify-content: center;
align-items: center;
border-radius: 6px;
background: #215486;
font-size: 40px;
color: #fff;
margin: 0 11px;
max-width: 200px;
height: 30px;
}
}
&-4 {
display: grid;
grid-column: span 4 / span 4;
grid-auto-rows: max;
gap: 1rem;
&.border-top-left-0 {
border-left: 0;
border-top: 1px solid #bfbfbf;
padding-top: 1rem;
}
@media (max-width: 1150px) {
grid-column: span 5 / span 5;
}
@media (min-width: 950px) {
padding-left: 1rem;
border-left: 1px solid #bfbfbf;
}
.text {
margin-bottom: 0.5rem;
font-size: 1rem;
line-height: 1.75rem;
font-weight: 700;
text-transform: uppercase;
&-wrap {
display: flex;
flex-direction: column;
gap: 0.75rem;
white-space: nowrap;
.text-item {
display: flex;
gap: 0.5rem;
align-items: center;
max-width: 100%;
.text-child {
font-size: 0.8rem;
line-height: 1.25rem;
flex: 1;
word-break: break-word;
}
}
}
}
}
}
.section-bottom {
display: flex;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
flex-direction: column;
gap: 1rem;
justify-content: space-between;
align-items: center;
@media (min-width: 640px) {
flex-direction: row;
}
.ssr {
display: flex;
gap: 1rem;
justify-content: center;
align-items: center;
a {
font-size: 0.8rem;
color: #737373;
line-height: 1.25rem;
@media (min-width: 1024px) {
font-size: 1rem;
line-height: 1.5rem;
}
}
}
&__left {
display: flex;
justify-content: center;
align-items: center;
@media (min-width: 640px) {
order: 1;
}
}
&__right {
display: flex;
gap: 1rem;
justify-content: center;
align-items: center;
.icon1 {
color: #737373;
display: grid;
place-items: center;
border-radius: 9999px;
border: 1px solid #737373;
transition-duration: 300ms;
width: 32px;
height: 32px;
}
@media (min-width: 640px) {
order: 3;
}
}
}
}
}
</style>