@@ -471,24 +604,6 @@
-
-
@section jsLib {
diff --git a/TWA-App/wwwroot/css/site.css b/TWA-App/wwwroot/css/site.css
index 04e46ff..8b31f92 100644
--- a/TWA-App/wwwroot/css/site.css
+++ b/TWA-App/wwwroot/css/site.css
@@ -202,6 +202,10 @@ body {
background: var(--text-color-white)
}
+.nav-login{
+ margin: 0 20px
+}
+
.navmain {
font-weight: 600;
font-size: 1rem
@@ -331,10 +335,8 @@ body {
.m-header .hd-close {
font-size: 1.5em;
position: absolute;
- top: 5px;
- right: 5px;
- width: 30px;
- height: 30px;
+ top: 20px;
+ right: 20px;
}
@@ -603,16 +605,19 @@ div[class*=sec]{
.ico-menu {
margin-left: 0;
background-color: transparent;
+ cursor:pointer
}
.ico-menu div {
- background-color: transparent !important
+ background-color: transparent !important;
+ cursor: pointer
}
.ico-menu span {
background-color: var(--text-color-white) !important;
border-radius: 2px;
height: 2px !important;
+ cursor: pointer
}
.ico-menu:hover div:first-child span, .ico-menu.active div:first-child span {
@@ -645,7 +650,6 @@ div[class*=sec]{
.section .sub-title {
color: var(--color-primary);
-
text-transform: capitalize;
font-weight: 700;
letter-spacing: 1px;
@@ -834,7 +838,8 @@ div[class*=sec]{
background-color: #070613;
opacity: .4;
}
- .section-break .sub-title{
+ .section-break .sub-title {
+ text-align: center;
margin-bottom: 10px
}
.section-break .title{
@@ -1140,13 +1145,31 @@ div[class*=sec]{
.partner-section{
padding: 80px 0
}
+
+.partner-section:before{
+ opacity: .1 !important
+}
+
+/***End Section***/
+
+/***Quoute Section****/
+.tabQuoute .tabcontent {
+ padding: 30px
+}
/***End Section***/
/**Blog Section*/
-
-.blog-section .title{
+.blog-section .title {
text-align: center
}
+.blog-section .grid-image{
+ overflow:hidden;
+ max-height:230px;
+}
+
+.blog-section .grid{
+ height: calc(100% - 40px)
+}
.blog-author {
position: absolute;
top: -25px;
@@ -1157,6 +1180,11 @@ div[class*=sec]{
min-width: 140px;
box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.06);
}
+
+.grid-body .title {
+ text-align: left !important
+}
+
.blog-author-content span{
color: var(--text-color-lW5)
}
@@ -1297,7 +1325,7 @@ div[class*=sec]{
top: 0;
left: 0;
width: 100%;
- height: calc(var(--vh, 1vh) * 100);
+ height: calc(var(--vh, 1vh) * 110);
z-index: -1;
}
@@ -1308,7 +1336,6 @@ div[class*=sec]{
height: 100%;
width: 100%;
object-fit: cover;
- transition: transform 0.1s linear;
transform: translateX(-50%) translateY(0); /* chỉ dịch ngang center */
}
@@ -1332,3 +1359,68 @@ div[class*=sec]{
transition: all ease-in .4s;
}
/*End Ovelay*/
+/****************** ATabs ***********************/
+.atabs {
+ display: inline-flex;
+ font-weight: 600;
+ padding: 1px 0;
+}
+
+ .atabs .item {
+
+ padding: 20px 25px;
+ color: var(--text-color-dark);
+ line-height: 2.1;
+ transition: color .15s ease-in-out, border-color .15s ease-in-out;
+ }
+
+ .atabs .item:not([disabled]):not(.active):hover {
+ color: var(--color-primary)
+ }
+
+ .atabs .item[disabled] {
+ cursor: default;
+ color: var(--text-disable)
+ }
+
+.animationSlide {
+ width: 100%;
+ overflow-x: hidden;
+}
+
+ .animationSlide .slideContent {
+ display: inline-flex;
+ transition: transform .6s ease-in-out
+ }
+
+ .animationSlide .tabcontent.show {
+ opacity: 1;
+ }
+
+ .animationSlide .tabcontent {
+ opacity: 0;
+ }
+
+.animationFade .tabcontent {
+ opacity: 0;
+ display: none;
+}
+
+ .animationFade .tabcontent.show {
+ display: block;
+ }
+
+.tabcontents {
+ border: 1px solid var(--text-color-lW1)
+}
+
+.tabcontent.fade {
+ transition: opacity .6s linear;
+}
+
+.atabs .item.active {
+ color: var(--color-primary);
+ border-bottom: 2px solid var(--color-primary)
+}
+
+/********************* End ***********************/
diff --git a/TWA-App/wwwroot/images/banner/airline.jpg b/TWA-App/wwwroot/images/banner/airline.jpg
new file mode 100644
index 0000000..6a65a5a
Binary files /dev/null and b/TWA-App/wwwroot/images/banner/airline.jpg differ
diff --git a/TWA-App/wwwroot/images/banner/drone1.jpg b/TWA-App/wwwroot/images/banner/drone1.jpg
new file mode 100644
index 0000000..ce2335e
Binary files /dev/null and b/TWA-App/wwwroot/images/banner/drone1.jpg differ
diff --git a/TWA-App/wwwroot/js/js-page/1000.js b/TWA-App/wwwroot/js/js-page/1000.js
index 47a5a9f..b92ec5d 100644
--- a/TWA-App/wwwroot/js/js-page/1000.js
+++ b/TWA-App/wwwroot/js/js-page/1000.js
@@ -1,4 +1,4 @@
-
+import ATab from '/js/libs/js-ATab.js';
function isInViewport(element) {
const rect = element.getBoundingClientRect();
return (
@@ -20,7 +20,24 @@ function updateActiveSlideShow(swiperInstance) {
window.L1000 = function () {
const swiper = new Swiper('.mainSlider', {
loop: true,
+ effect: 'fade',
+ fadeEffect: {
+ crossFade: true, // ảnh cũ mờ dần, ảnh mới xuất hiện
+ },
+ autoplay: {
+ delay: 5000, // 5s
+ disableOnInteraction: false, // không dừng khi hover hay click
+ },
+ loop: true, // bật loop để chạy liên tục
+ speed: 1000,
+ navigation: {
+ nextEl: ".swiper-button-next",
+ prevEl: ".swiper-button-prev",
+ },
on: {
+ init: function () {
+ updateActiveSlideShow(this);
+ },
slideChangeTransitionEnd: function () {
updateActiveSlideShow(this);
}
@@ -43,6 +60,7 @@ window.L1000 = function () {
}
}
});
+ var tabs = new ATab(document.querySelector(".tabQuoute .atabs"), document.querySelector(".tabQuoute .tabcontents"));
const parallaxEls = document.querySelectorAll('.parallax');
let ticking = false;
diff --git a/TWA-App/wwwroot/js/js-page/asyncLayout.js b/TWA-App/wwwroot/js/js-page/asyncLayout.js
index bcb7977..6099d3a 100644
--- a/TWA-App/wwwroot/js/js-page/asyncLayout.js
+++ b/TWA-App/wwwroot/js/js-page/asyncLayout.js
@@ -16,7 +16,7 @@ class AsyncLayout extends ALayout {
this.isLoaded = false;
this.layMNav = ``;
this.fHeader = `