diff --git a/portfolio/public/images/diapos/MLD.png b/portfolio/public/images/diapos/MLD.png index f694d9a..6bc6157 100644 Binary files a/portfolio/public/images/diapos/MLD.png and b/portfolio/public/images/diapos/MLD.png differ diff --git a/portfolio/public/images/diapos/usecase1.png b/portfolio/public/images/diapos/usecase1.png index cc7e1fa..9cf1953 100644 Binary files a/portfolio/public/images/diapos/usecase1.png and b/portfolio/public/images/diapos/usecase1.png differ diff --git a/portfolio/src/components/CubicMenu/CubicMenu.jsx b/portfolio/src/components/CubicMenu/CubicMenu.jsx index 30a8ed5..e020645 100644 --- a/portfolio/src/components/CubicMenu/CubicMenu.jsx +++ b/portfolio/src/components/CubicMenu/CubicMenu.jsx @@ -54,7 +54,7 @@ const CubicMenu = () => {
setMenuOpen(!isMenuOpen)} > diff --git a/portfolio/src/components/CubicMenu/CubicMenu.scss b/portfolio/src/components/CubicMenu/CubicMenu.scss index d898c9e..774dd25 100644 --- a/portfolio/src/components/CubicMenu/CubicMenu.scss +++ b/portfolio/src/components/CubicMenu/CubicMenu.scss @@ -4,7 +4,7 @@ .nav { position: absolute; - width: 100vw; + width: 97vw ; height: 0; padding: 10px; padding-top: 30px; diff --git a/portfolio/src/components/Project/Cube/Cube.jsx b/portfolio/src/components/Project/Cube/Cube.jsx index a9186c8..ef59de9 100644 --- a/portfolio/src/components/Project/Cube/Cube.jsx +++ b/portfolio/src/components/Project/Cube/Cube.jsx @@ -224,7 +224,7 @@ export default function Cube(props) { }`} id={`scene${id}`} > -
+
md +@media screen and ( min-width: $md ) { + // Increase font size and middle line. + .info{ + font-size: 1em; + line-height: 1em; + border-right: thick double $primary-color; + + // Replace description table and increse font size. + &__description { + line-height: 1.5em; + font-size: 1.4em; + } + } + +} + +// When viewport width > lg +@media screen and ( min-width: $xl ) { + // Increase font size and middle line. + .info{ + font-size: 1.2em; + line-height: 1.2em; + border-right: thick double $primary-color; + + // Replace description table and increse font size. + &__description { + align-items: flex-start; + line-height: 1.5em; + font-size: 1.4em; + padding-top: 40%; + } + } + +} + +// when viewport width < $md and height < $sm ( mobile landscape mode ) +@media screen and ( max-width: $md ) and ( max-height: $sm ) and (orientation: landscape) { + .info{ + width : 100vw; + border-right: thick double $primary-color; + grid-template-columns: 50% 50%; + grid-template-rows: auto 60px; + column-gap: 2px; + + &__description { + padding: auto auto; + overflow: hidden; + grid-column-start: 1; + grid-column-end: 2; + } + &__table{ + grid-column-start: 1; + grid-column-end: 2; + } + + &__links{ + grid-column-start: 2; + grid-column-end: 3; + } + } } \ No newline at end of file diff --git a/portfolio/src/components/Project/Project.jsx b/portfolio/src/components/Project/Project.jsx index e22df99..b58e2ca 100644 --- a/portfolio/src/components/Project/Project.jsx +++ b/portfolio/src/components/Project/Project.jsx @@ -17,7 +17,7 @@ export default function Project(props) {

{projectItems.details.name}

- +
diff --git a/portfolio/src/components/Project/Project.scss b/portfolio/src/components/Project/Project.scss index d2e24f7..c753fd7 100644 --- a/portfolio/src/components/Project/Project.scss +++ b/portfolio/src/components/Project/Project.scss @@ -9,21 +9,6 @@ grid-template-columns: 100%; overflow: hidden; border: thick double $primary-color; - @include breakpoint_height( sm, max ){ - grid-template-rows: 90px 1fr; - grid-template-columns: 50% 50%; - } - @include breakpoint_height( sm ){ - @include breakpoint(sm){ - width: 85vw; - height: 80%; - margin: 70px 7.5vw; - } - @include breakpoint(md) { - grid-template-rows: 70px 1fr; - grid-template-columns: min(400px, 50%) auto; - } - } &__title { height: 100%; background-color: fade-out($color: $primary-color, $amount: 0.5); @@ -32,41 +17,12 @@ justify-content: center; align-items: center; z-index: 100; - @include breakpoint_height( sm, max ){ - grid-column-start: 1; - grid-column-end: 3; - justify-content: start; - align-items: start; - padding:10px 10px; - } - @include breakpoint_height( sm ){ - @include breakpoint(md) { - grid-column-start: 1; - grid-column-end: 3; - } - } h2 { color: black; } } &__cube { height: 100%; - @include breakpoint_height( sm, max ){ - grid-column-start: 2; - grid-column-end: 3; - grid-row-start: 2; - grid-row-end: 3; - height: 100%; - } - @include breakpoint_height( sm ){ - @include breakpoint(md) { - grid-column-start: 2; - grid-column-end: 3; - grid-row-start: 2; - grid-row-end: 3; - height: 100%; - } - } .layout { width: 100%; height: calc(100% - 60px); @@ -74,12 +30,6 @@ .scene { position: relative; top: 20%; - @include breakpoint_height( sm ){ - @include breakpoint(md) { - top: -10%; - left: 5%; - } - } .cube { user-select: none; pointer-events: none; @@ -89,16 +39,6 @@ } &__info { height: 100%; - @include breakpoint_height( sm ){ - @include breakpoint(md) { - grid-column-start: 1; - grid-column-end: 2; - grid-row-start: 2; - grid-row-end: 3; - height: 100%; - overflow-y: hidden; - } - } &::-webkit-scrollbar { width: 11px; } @@ -114,3 +54,106 @@ } } } + +// When viewport width > sm +@media screen and (min-width: $sm) { + .project{ + // shorten the size of the project card to include sidebars. + width: calc(100% - 140px); + height: calc(100% - 90px); + } + +} + +// When viewport width > md +@media screen and (min-width: $md) { + .project{ + // Switch to 2 columns with shoter header. + grid-template-rows: 70px 1fr; + grid-template-columns: min(400px, 50%) auto; + + // the header spread to 2 columns. + &__title{ + grid-column-start: 1; + grid-column-end: 3; + } + + // The cube goes on the right side column + &__cube { + grid-column-start: 2; + grid-column-end: 3; + grid-row-start: 2; + grid-row-end: 3; + height: 100%; + // adjust cube position + .layout{ + .scene{ + top: -10%; + left: 5%; + } + } + } + + // The info goes on the left side column + &__info { + grid-column-start: 1; + grid-column-end: 2; + grid-row-start: 2; + grid-row-end: 3; + height: 100%; + overflow-y: hidden; + } + } +} + +// When viewport width > sm +@media screen and (min-width: $xl) { + .project{ + // shorten the size of the project card to include sidebars. + width: calc(100% - 140px); + height: 90%; + margin: 0 0; + + } + +} + +// when viewport width < $md and height < $sm ( mobile landscape mode ) +@media screen and ( max-width: $md ) and ( max-height: $sm ) and (orientation: landscape) { + .project{ + // Switch to 2 columns. + grid-template-rows: 70px 1fr; + grid-template-columns: 50% 50%; + justify-content: start; + align-items: start; + width: 100vw; + height: 100%; + margin: 0 0; + + // the header spread to 2 columns. + &__title{ + grid-column-start: 1; + grid-column-end: 3; + align-items: end; + padding-bottom: 5px; + } + + // The cube goes on the right side column + &__cube { + grid-column-start: 2; + grid-column-end: 3; + grid-row-start: 2; + grid-row-end: 3; + height: 100%; + // adjust cube position + .layout{ + .scene{ + top: -10%; + left: 5%; + } + } + } + } +} + + diff --git a/portfolio/src/components/Sidebar/Sidebar.scss b/portfolio/src/components/Sidebar/Sidebar.scss index 1065936..c92ca12 100644 --- a/portfolio/src/components/Sidebar/Sidebar.scss +++ b/portfolio/src/components/Sidebar/Sidebar.scss @@ -4,9 +4,7 @@ .Sidebar { position: absolute; height: 100%; - width: 7.5%; - min-width: 30px; - max-width: 70px; + width: 70px; background-color: fade-out($primary-color, 0.85); transition: opacity 1.4s ease, background-color 2s ease; display: none; @@ -15,14 +13,6 @@ z-index: 900; user-select: none; cursor: url(../../../public/images/cursors-pointer.png), pointer; - @include breakpoint_height( sm ){ - @include breakpoint(sm){ - display : flex; - } - } - @include breakpoint( lg ){ - display: flex; - } &__text { color: lighten($primary-color, 40%); writing-mode: vertical-rl; @@ -62,3 +52,16 @@ } } } + +@media screen and ( min-width: $sm ){ + .Sidebar{ + display : flex; + } +} + +// when viewport width < $md and height < $sm ( mobile landscape mode ) +@media screen and ( max-width: $md ) and ( max-height: $sm ) { + .Sidebar{ + display: none; + } +} \ No newline at end of file diff --git a/portfolio/src/components/Slide/VSlide.scss b/portfolio/src/components/Slide/VSlide.scss index d719b56..acc469a 100644 --- a/portfolio/src/components/Slide/VSlide.scss +++ b/portfolio/src/components/Slide/VSlide.scss @@ -3,9 +3,11 @@ .Vslide { display: flex; - flex-direction: column; + + justify-content: center; flex-wrap: wrap; height: 100%; + width: 100%; position: absolute; overflow: hidden; transform: translateY(0); diff --git a/portfolio/src/data/works.js b/portfolio/src/data/works.js index 3574b3f..bc7ca43 100644 --- a/portfolio/src/data/works.js +++ b/portfolio/src/data/works.js @@ -49,14 +49,9 @@ const projects = { }, { type: "diapo", - title: "Use case 1", + title: "Use case", image: "/images/diapos/usecase1.png" }, - { - type: "diapo", - title: "Use case 2", - image: "/images/diapos/usecase2.png" - }, { type: "diapo", title: "MLD", diff --git a/portfolio/src/pages/ProjectsPage/ProjectsPage.jsx b/portfolio/src/pages/ProjectsPage/ProjectsPage.jsx index 97cda70..fcc3ce7 100644 --- a/portfolio/src/pages/ProjectsPage/ProjectsPage.jsx +++ b/portfolio/src/pages/ProjectsPage/ProjectsPage.jsx @@ -68,13 +68,13 @@ export default function ProjectsPage() {