UNPKG

scms

Version:

Skrap Content Management System for blogs and etc...

444 lines (417 loc) 11 kB
/* -------------------------------- Primary style -------------------------------- */ *, *::after, *::before { box-sizing: border-box; } html { font-size: 62.5%; } body { font-size: 1.6rem; font-family: "Source Sans Pro", sans-serif; color: #343642; background-color: #ffffff; } a { color: #982b3c; text-decoration: none; } button { cursor: pointer; border: none; background-color: transparent; outline: none; font-size: 1.6rem; } /* -------------------------------- Images block -------------------------------- */ .cd-image-block { position: relative; } .cd-image-block::before { /* this is the layer used to cover the .cd-image-block when the content block becomes visible - mobile only */ content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; background-color: rgba(52, 54, 66, 0.6); opacity: 0; visibility: hidden; -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s; -moz-transition: opacity 0.3s 0s, visibility 0s 0.3s; transition: opacity 0.3s 0s, visibility 0s 0.3s; } .cd-image-block.content-block-is-visible::before { opacity: 1; visibility: visible; -webkit-transition: opacity 0.3s 0s, visibility 0s 0s; -moz-transition: opacity 0.3s 0s, visibility 0s 0s; transition: opacity 0.3s 0s, visibility 0s 0s; } @media only screen and (min-width: 768px) { .cd-image-block::before { display: none; } } .cd-images-list::before { /* never visible - this is used in jQuery to check the current MQ */ content: 'mobile'; display: none; } .cd-images-list > li { height: 250px; background: #979c9c url(../img/img-1.jpg) no-repeat center center; background-size: cover; } .cd-images-list > li:nth-of-type(2) { background: #343642 url(../img/img-2.jpg) no-repeat center center; background-size: cover; } .cd-images-list > li:nth-of-type(3) { background: #982b3c url(../img/img-3.jpg) no-repeat center center; background-size: cover; } .cd-images-list > li:nth-of-type(4) { background: #338899 url(../img/img-4.jpg) no-repeat center center; background-size: cover; } .cd-images-list > li > a { /* used to vertically align the h2 child - mobile version only */ display: table; height: 100%; width: 100%; } .cd-images-list h2 { /* used to vertically align h2 - mobile version only */ display: table-cell; vertical-align: middle; text-align: center; font-size: 3rem; color: #ffffff; font-weight: 700; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @media only screen and (min-width: 768px) { .cd-images-list::before { /* never visible - this is used in jQuery to check the current MQ */ content: 'desktop'; } .cd-images-list > li > a { display: block; padding: 4em 3em; cursor: default; pointer-events: none; } .cd-images-list h2 { font-size: 5.5rem; text-align: left; } } /* -------------------------------- Content block -------------------------------- */ .cd-content-block { /* move the block outside the viewport (to the right) - mobile only */ position: fixed; z-index: 1; top: 0; left: 0; height: 100%; -webkit-transform: translateX(100%); -moz-transform: translateX(100%); -ms-transform: translateX(100%); -o-transform: translateX(100%); transform: translateX(100%); -webkit-transition: -webkit-transform 0.3s; -moz-transition: -moz-transform 0.3s; transition: transform 0.3s; } .cd-content-block.is-visible { -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0); } .cd-content-block > ul { height: 100%; } .cd-content-block > ul > li { position: absolute; height: 100%; padding: 2em; overflow-y: scroll; background-color: #ffffff; opacity: 0; visibility: hidden; } .cd-content-block > ul > li.is-selected { /* this is the selected content */ position: relative; opacity: 1; visibility: visible; -webkit-overflow-scrolling: touch; } .cd-content-block h2 { line-height: 1.2; font-weight: 700; font-size: 2.3rem; margin-bottom: 1em; } .cd-content-block p { margin-bottom: 2em; line-height: 1.6; color: #85868d; } .cd-content-block .cd-close { /* 'X' icon to close the content block - mobile only */ position: fixed; top: 0; right: 0; height: 44px; width: 44px; /* image replacement */ overflow: hidden; text-indent: 100%; white-space: nowrap; color: transparent; -webkit-transform: scale(0); -moz-transform: scale(0); -ms-transform: scale(0); -o-transform: scale(0); transform: scale(0); -webkit-transition: -webkit-transform 0.2s; -moz-transition: -moz-transform 0.2s; transition: transform 0.2s; } .cd-content-block .cd-close::after, .cd-content-block .cd-close::before { /* these are the 2 lines of the 'X' icon */ content: ''; position: absolute; left: 50%; top: 50%; width: 2px; height: 24px; background-color: #343642; /* Force Hardware Acceleration */ -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform: translateZ(0); -moz-transform: translateZ(0); -ms-transform: translateZ(0); -o-transform: translateZ(0); transform: translateZ(0); } .cd-content-block .cd-close::after { -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg); -moz-transform: translateX(-50%) translateY(-50%) rotate(45deg); -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg); -o-transform: translateX(-50%) translateY(-50%) rotate(45deg); transform: translateX(-50%) translateY(-50%) rotate(45deg); } .cd-content-block .cd-close::before { -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg); -moz-transform: translateX(-50%) translateY(-50%) rotate(-45deg); -ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg); -o-transform: translateX(-50%) translateY(-50%) rotate(-45deg); transform: translateX(-50%) translateY(-50%) rotate(-45deg); } .cd-content-block .cd-close.is-scaled-up { -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1); } .no-touch .cd-content-block .cd-close.is-scaled-up:hover { -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2); } @media only screen and (min-width: 768px) { .cd-content-block { /* reset style */ position: static; -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0); } .cd-content-block > ul > li { /* reset style */ opacity: 1; visibility: visible; padding: 4em 3em; } .cd-content-block > ul > li.overflow-hidden { /* this class is used during the animation (slider change) to hide the scrolling bar */ overflow: hidden; } .cd-content-block h2 { font-size: 3rem; } .cd-content-block .cd-close { display: none; } } /* ---------------------------------------------- Desktop slider - both image and content blocks ---------------------------------------------- */ @media only screen and (min-width: 768px) { .cd-image-block, .cd-content-block { /* slider style - desktop version only */ width: 50%; float: left; height: 100vh; overflow: hidden; } .cd-image-block > ul, .cd-content-block > ul { position: relative; height: 100%; } .cd-image-block > ul > li, .cd-content-block > ul > li { position: absolute; top: 0; left: 0; height: 100%; width: 100%; /* Force Hardware Acceleration */ -webkit-transform: translateZ(0); -moz-transform: translateZ(0); -ms-transform: translateZ(0); -o-transform: translateZ(0); transform: translateZ(0); -webkit-backface-visibility: hidden; backface-visibility: hidden; will-change: transform; /* by default, the items are moved to the right - relative to their parent elements */ -webkit-transform: translateX(100%); -moz-transform: translateX(100%); -ms-transform: translateX(100%); -o-transform: translateX(100%); transform: translateX(100%); -webkit-transition: -webkit-transform 0.5s; -moz-transition: -moz-transform 0.5s; transition: transform 0.5s; } .cd-image-block > ul > li.is-selected, .cd-content-block > ul > li.is-selected { /* this is the visible item */ position: absolute; -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0); } .cd-image-block > ul > li.move-left, .cd-content-block > ul > li.move-left { /* this is the item hidden on the left */ -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); -ms-transform: translateX(-100%); -o-transform: translateX(-100%); transform: translateX(-100%); } } /* -------------------------------- Slider navigation -------------------------------- */ .block-navigation { /* this is the slider navigation - desktop version only */ display: none; } @media only screen and (min-width: 768px) { .block-navigation { display: block; position: fixed; bottom: 0; left: 0; width: 50%; } .block-navigation::after { clear: both; content: ""; display: table; } .block-navigation li { width: 50%; height: 50px; line-height: 50px; text-align: center; background-color: rgba(0, 0, 0, 0.5); -webkit-transition: background 0.2s; -moz-transition: background 0.2s; transition: background 0.2s; } .block-navigation li:hover { background-color: rgba(0, 0, 0, 0.7); } .block-navigation li:first-of-type { float: left; } .block-navigation li:last-of-type { float: right; } .block-navigation button { display: block; height: 100%; width: 100%; color: #ffffff; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .block-navigation button.inactive { opacity: .3; cursor: not-allowed; } } /* -------------------------------- Javascript disabled -------------------------------- */ @media only screen and (min-width: 768px) { .no-js .cd-content-block { display: none; } .no-js .cd-image-block { width: 100%; overflow: visible; } .no-js .cd-images-list::after { clear: both; content: ""; display: table; } .no-js .cd-images-list > li { position: static; width: 50%; float: left; height: 400px; -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0); } .no-js .cd-images-list > li.is-selected { position: static; } .no-js .cd-images-list > li > a { cursor: pointer; pointer-events: auto; } .no-js .block-navigation { display: none; } }