From 79f45f2b595525e879902da3eab1fd9a707d35c6 Mon Sep 17 00:00:00 2001 From: kj1352 Date: Thu, 7 Jan 2021 17:46:58 +0530 Subject: [PATCH] UI polishing for home page --- src/app/home-details/home-details.page.html | 4 +- src/app/home-details/home-details.page.scss | 51 ++++++++++++------ src/app/home/home.page.html | 57 ++++++++++++++++++--- src/app/home/home.page.scss | 8 --- src/app/home/home.page.ts | 47 +++++------------ 5 files changed, 102 insertions(+), 65 deletions(-) diff --git a/src/app/home-details/home-details.page.html b/src/app/home-details/home-details.page.html index 4485b1c..0b78cc8 100644 --- a/src/app/home-details/home-details.page.html +++ b/src/app/home-details/home-details.page.html @@ -12,11 +12,11 @@ - -

{{ newsDetails.heading }}

+ +
{{ newsDetails.description }}
diff --git a/src/app/home-details/home-details.page.scss b/src/app/home-details/home-details.page.scss index 8ace88b..8053944 100644 --- a/src/app/home-details/home-details.page.scss +++ b/src/app/home-details/home-details.page.scss @@ -43,19 +43,49 @@ height: 40%; overflow: hidden; + h4 { + font-size: 1.2rem; + margin: 0px; + line-height: 1.5; + font-weight: 500; + transition: opacity 0.1s; + padding: 10px 0; + position: absolute; + color: white; + bottom: 45px; + left: 6%; + width: 88%; + animation: fadeInFromBottom 0.5s forwards; + } + button { width: 40px; height: 40px; position: absolute; - bottom: 10px; - right: 10px; + top: calc(50% - 20px); + left: calc(50% - 20px); display: flex; align-items: center; justify-content: center; background-color: rgba(var(--brand-red-rgb), 0.5); border-radius: 50%; - transform: translate(calc(-50vw + 40px), -15vh); - + animation: popin 0.3s forwards; + animation-delay: 0.5s; + transform: scale(0); + + @keyframes popin { + 0% { + transform: scale(0); + } + + 50% { + transform: scale(1.4); + } + + 100% { + transform: scale(1); + } + } ion-icon { color: white; @@ -82,7 +112,7 @@ .content { background-color: white; - padding: 0px 5% 5% 5%; + padding: 5%; margin: 0 auto; border-radius: 0px; transition: border-radius 0.3s, transform 0.3s, width 0.3s, margin 0.3s, box-shadow 0.3s; @@ -107,17 +137,6 @@ } } -h4 { - font-size: 1.2rem; - margin: 0px; - line-height: 1.5; - font-weight: 500; - color: var(--brand-black); - transition: opacity 0.1s; - background-color: white; - padding: 10px 0; -} - .details { margin: 0px; font-size: 0.9rem; diff --git a/src/app/home/home.page.html b/src/app/home/home.page.html index 527d6cc..c36e334 100644 --- a/src/app/home/home.page.html +++ b/src/app/home/home.page.html @@ -14,9 +14,10 @@
- + - +
@@ -26,9 +27,7 @@ -
@@ -55,7 +54,53 @@
- + + + + + +
+
+ +
+ + + + +
+ +
+

{{ news.heading }}

+ +
+ {{ news.description }} +
+
+ +
+
+ + + +
+ + diff --git a/src/app/home/home.page.scss b/src/app/home/home.page.scss index 6a760db..0112e03 100644 --- a/src/app/home/home.page.scss +++ b/src/app/home/home.page.scss @@ -202,14 +202,6 @@ ion-slides { } } - // &.bookmark-button { - // &.active { - // ion-icon, span { - // color: var(--light-grey); - // } - // } - // } - span { vertical-align: middle; color: var(--light-grey); diff --git a/src/app/home/home.page.ts b/src/app/home/home.page.ts index facca54..2aa4e75 100644 --- a/src/app/home/home.page.ts +++ b/src/app/home/home.page.ts @@ -26,12 +26,17 @@ export type INews = { }) export class HomePage implements OnInit { - @ViewChild('slides', {static: false}) slides: IonSlides; + @ViewChild('slides') slides: IonSlides; selectedTab: string = 'news'; selectedArticle: number = null; - slideOpts = { }; + slideOpts = { + slidesPerView: 1.3, + spaceBetween: 30, + slidesOffsetBefore: 30, + slidesOffsetAfter: 30, + }; newsData: Array = []; @@ -78,44 +83,20 @@ export class HomePage implements OnInit { isBookmarked: false, likes: 308, comments: [] - }]; - - this.slideOpts = { - slidesPerView: 1.3, - spaceBetween: 30, - slidesOffsetBefore: 30, - slidesOffsetAfter: 30, - }; - + }]; } - expandArticle(index: number) { - this.selectedArticle = index; - - this.slideOpts = { - slidesPerView: 1, - spaceBetween: 0, - slidesOffsetBefore: 0, - slidesOffsetAfter: 0, - }; + ngAfterViewInit() { + this.selectedArticle = 0; + } - // setTimeout(() => { - // this.slides.slideTo(index); - // }, 200); + getIndex(e: any) { + console.log(this.slides); } showNewsDetails(news: any) { this.router.navigate(['/home-details', { news: JSON.stringify(news) }]) } - closeArticle() { - this.selectedArticle = null; - - this.slideOpts = { - slidesPerView: 1.3, - spaceBetween: 30, - slidesOffsetBefore: 30, - slidesOffsetAfter: 30, - }; - } + }