parent
7f6062dfb7
commit
bba8b8a756
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 2.0 KiB |
@ -0,0 +1,52 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="cs" class="">
|
||||||
|
<head>
|
||||||
|
<title>N.E.B.E.</title>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<link rel="stylesheet" href="style.scss" type="text/css" media="screen"/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<a href="https://www.nebe.app/app/" target="_blank">
|
||||||
|
<main class="wrapper">
|
||||||
|
<div class="background"></div>
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
<article class="headline"></article>
|
||||||
|
|
||||||
|
<article class="subheadline model"></article>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="product-wrapper">
|
||||||
|
<div class="product"></div>
|
||||||
|
|
||||||
|
<div class="product__badge">
|
||||||
|
<span class="product__badge-text">5 year warranty</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="product__price">
|
||||||
|
<article><span id="price" data-product-price></span> €</article>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="countdown">
|
||||||
|
<div class="countdown__description"></div>
|
||||||
|
|
||||||
|
<span class="countdown__timer" id="countdown"></span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="cta">
|
||||||
|
<div class="cta__inner"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="logo">
|
||||||
|
<img src="logo.png" alt="N.E.B.E." width="30">
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script src="../assets/scripts.js"></script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
After Width: | Height: | Size: 964 B |
@ -0,0 +1,168 @@
|
|||||||
|
@import '../assets/main';
|
||||||
|
|
||||||
|
$width: 300px;
|
||||||
|
$height: 600px;
|
||||||
|
|
||||||
|
.wrapper {
|
||||||
|
width: $width;
|
||||||
|
height: $height;
|
||||||
|
overflow: hidden;
|
||||||
|
font-family: DINProBold, sans-serif;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
.cta {
|
||||||
|
transform: scale(1.1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.background {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
background: linear-gradient(180deg, rgba(106,228,168,1) 0%, rgba(195,244,220,1) 100%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
width: 286px;
|
||||||
|
position: absolute;
|
||||||
|
top: 5px;
|
||||||
|
left: 6px;
|
||||||
|
height: 190px;
|
||||||
|
text-align: center;
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.headline {
|
||||||
|
max-height: 2.4em;
|
||||||
|
margin-top: 20px;
|
||||||
|
font-family: CallingCodeBold, sans-serif;
|
||||||
|
color: #22a875;
|
||||||
|
font-size: 26px;
|
||||||
|
font-weight: 700;
|
||||||
|
line-height: 1.2;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.subheadline {
|
||||||
|
font-family: DINProBold, sans-serif;
|
||||||
|
color: #4f46de;
|
||||||
|
font-size: 22px;
|
||||||
|
font-weight: 400;
|
||||||
|
margin-top: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.product-wrapper {
|
||||||
|
position: relative;
|
||||||
|
top: 180px;
|
||||||
|
left: calc((300px - 150px) / 2);
|
||||||
|
width: 150px;
|
||||||
|
height: 160px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.product {
|
||||||
|
position: absolute;
|
||||||
|
top: 5px;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
&__price {
|
||||||
|
position: absolute;
|
||||||
|
top: 340px;
|
||||||
|
right: 0;
|
||||||
|
font-family: DINProBold, sans-serif;
|
||||||
|
font-size: 27px;
|
||||||
|
font-weight: 800;
|
||||||
|
line-height: 1;
|
||||||
|
background-image: url("../assets/flag-orange.svg");
|
||||||
|
background-size: cover;
|
||||||
|
background-position: left;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
padding: 10px 10px 10px 30px;
|
||||||
|
color: $color-white;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
backface-visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__badge {
|
||||||
|
position: absolute;
|
||||||
|
top: 20px;
|
||||||
|
left: -50px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
width: 80px;
|
||||||
|
height: 80px;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: url("badge.png");
|
||||||
|
background-size: contain;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 25px;
|
||||||
|
text-align: center;
|
||||||
|
z-index: 3;
|
||||||
|
|
||||||
|
&-text {
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 700;
|
||||||
|
letter-spacing: -0.025em;
|
||||||
|
line-height: 1.2;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: $color-white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.countdown {
|
||||||
|
position: absolute;
|
||||||
|
top: 405px;
|
||||||
|
left: 50%;
|
||||||
|
transform: translateX(-50%);
|
||||||
|
min-width: 230px;
|
||||||
|
color: #1c0c3e;
|
||||||
|
font-family: CallingCodeBold, sans-serif;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
&__description {
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__timer {
|
||||||
|
display: inline-block;
|
||||||
|
margin-top: 5px;
|
||||||
|
min-width: 220px;
|
||||||
|
font-size: 22px;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cta {
|
||||||
|
position: absolute;
|
||||||
|
top: 490px;
|
||||||
|
left: calc((300px - 160px) / 2);
|
||||||
|
width: 160px;
|
||||||
|
z-index: 1;
|
||||||
|
transition: transform 0.4s ease-in-out;
|
||||||
|
will-change: transform;
|
||||||
|
|
||||||
|
&__inner {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
height: 48px;
|
||||||
|
background-color: #4f46de;
|
||||||
|
display: inline-block;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 48px;
|
||||||
|
font-weight: 700;
|
||||||
|
color: $color-white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 10px;
|
||||||
|
right: 20px;
|
||||||
|
}
|
After Width: | Height: | Size: 745 B |
@ -0,0 +1,47 @@
|
|||||||
|
$color-white: #ffffff;
|
||||||
|
$color-black: #000000;
|
||||||
|
$color-red: #ff0000 ;
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: DINProRegular;
|
||||||
|
src: url(https://cdn.nebe.app/demo/fonts/DINPro-Regular.ttf) format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: DINProBold;
|
||||||
|
src: url(https://cdn.nebe.app/demo/fonts/DINPro-Bold.ttf) format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: CallingCodeBold;
|
||||||
|
src: url(https://cdn.nebe.app/demo/fonts/callingcode-bold.otf) format("opentype");
|
||||||
|
}
|
||||||
|
|
||||||
|
* {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
html, body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wrapper {
|
||||||
|
position: relative;
|
||||||
|
display: block;
|
||||||
|
font-family: 'Roboto', sans-serif;
|
||||||
|
color: $color-white;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.product {
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-size: contain;
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
window.FILL = (inputs) => {
|
||||||
|
window.creative = new Creative(inputs);
|
||||||
|
|
||||||
|
window.clickTag = inputs.link;
|
||||||
|
document.querySelector('a').setAttribute('href', window.clickTag);
|
||||||
|
};
|
||||||
|
|
||||||
|
function Creative(inputs) {
|
||||||
|
this.inputs = inputs;
|
||||||
|
this.backgroundeEl = document.querySelector('.background');
|
||||||
|
this.headlineEl = document.querySelector('.headline');
|
||||||
|
this.modellEl = document.querySelector('.model');
|
||||||
|
this.badgeEl = document.querySelector('.product__badge');
|
||||||
|
this.priceEl = document.getElementById('price');
|
||||||
|
this.countdownTextEl = document.querySelector('.countdown__description');
|
||||||
|
this.countdownDateEl = document.getElementById('countdown');
|
||||||
|
this.ctaEl = document.querySelector('.cta__inner');
|
||||||
|
|
||||||
|
this.backgroundeEl.style.background = this.inputs.background;
|
||||||
|
this.headlineEl.innerHTML = this.inputs.headline;
|
||||||
|
this.modellEl.innerHTML = this.inputs.model;
|
||||||
|
this.countdownTextEl.innerHTML = this.inputs.countdown_text;
|
||||||
|
this.countdownDateEl.innerHTML = this.inputs.countdown_date;
|
||||||
|
this.ctaEl.innerHTML = this.inputs.cta;
|
||||||
|
|
||||||
|
if (this.inputs.badge === 'Ano') {
|
||||||
|
this.badgeEl.style.display = 'flex';
|
||||||
|
} else {
|
||||||
|
this.badgeEl.style.display = 'none';
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelector('[data-product-price]').innerHTML = this.inputs.price;
|
||||||
|
|
||||||
|
document.querySelector('.product').style.backgroundImage = `url("${this.inputs.image_link}")`;
|
||||||
|
|
||||||
|
if (!document.querySelector('.product').style.backgroundImage.length) {
|
||||||
|
throw new Error('Image is not inserted into template');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"name": "Demo Image",
|
||||||
|
"description": "Template for image campaigns",
|
||||||
|
"tags": [
|
||||||
|
"Demo",
|
||||||
|
"Template"
|
||||||
|
],
|
||||||
|
"format": "image"
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"background": {
|
||||||
|
"label": "Background CSS",
|
||||||
|
"description": "Příklad: rgba(106,228,168,1)",
|
||||||
|
"value": "linear-gradient(180deg, rgba(106,228,168,1) 0%, rgba(195,244,220,1) 100%)",
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"headline": {
|
||||||
|
"label": "Nadpis",
|
||||||
|
"value": "Kitty financial services",
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"model": {
|
||||||
|
"label": "Model",
|
||||||
|
"value": "Maneki-neko cat",
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"badge": {
|
||||||
|
"label": "Zobrazit badge",
|
||||||
|
"value": "Ano",
|
||||||
|
"type": "enum",
|
||||||
|
"options": [
|
||||||
|
"Ano",
|
||||||
|
"Ne"
|
||||||
|
],
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"image_link": {
|
||||||
|
"label": "URL obrázku",
|
||||||
|
"type": "url",
|
||||||
|
"value": "https://cdn.nebe.app/demo/print/product.svg"
|
||||||
|
},
|
||||||
|
"price": {
|
||||||
|
"label": "Cena",
|
||||||
|
"value": "80"
|
||||||
|
},
|
||||||
|
"countdown_text": {
|
||||||
|
"label": "Text: Kdy končí nabídka",
|
||||||
|
"value": "Offer expires on",
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"countdown_date": {
|
||||||
|
"label": "Hodnota: Kdy končí nabídka",
|
||||||
|
"value": "30. 6. 2020 v 18hod",
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"cta": {
|
||||||
|
"label": "Text CTA tlačítka",
|
||||||
|
"value": "Buy",
|
||||||
|
"prefill": true
|
||||||
|
},
|
||||||
|
"link": {
|
||||||
|
"label": "Odkaz",
|
||||||
|
"value": "https://www.nebe.app/app",
|
||||||
|
"prefill": true
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue