<div class="l-login">
<div class="square blue-dark left-bottom hu_hu_animation ">
</div>
<div class="square red top-right hu__hu_r_ ">
</div>
<div class="l-login__form">
<img class="l-login__form-logo zoomInDown" src="https://www.borusanenbw.com.tr/_assets/img/visual-gallery/logo.jpg" alt="Company Logo" />
<div class="material-input__group">
<i class="mdi mdi-account"></i>
<input type="text" class="material-input__group__input iconic" required>
<span class="material-input__group__highlight"></span>
<span class="material-input__group-bar"></span>
<label class="material-input__group__label iconic">Username or email address</label>
</div>
<div class="material-input__group">
<i class="mdi mdi-account"></i>
<input type="text" class="material-input__group__input iconic" required>
<span class="material-input__group__highlight"></span>
<span class="material-input__group-bar"></span>
<label class="material-input__group__label iconic">Password</label>
</div>
<button class="l-login__form__button"> <span >Login</span>
<svg version="1.1" class="progress-svg circular-loader speed-normal" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80" height="80"
viewBox="0 0 100 100" enable-background="new 0 0 0 0" xml:space="preserve" style="display:none">
<path d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50">
</path>
</svg>
</button>
</div>
<div class="c-wind-turbine big">
<div class="c-wind-turbine__inner">
<svg version="1.1" id="Capa_1" class="c-wind-turbine__propeller big" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" viewBox="0 0 50 50" style="enable-background:new 0 0 50 50;" xml:space="preserve">
<circle style="fill:transparent;" cx="25" cy="25" r="25"/>
<polyline style="fill:none;stroke-width:2;stroke-linecap:round;stroke-miterlimit:10;" points="16,34 25,25 34,16"/>
<polyline style="fill:none;stroke-width:2;stroke-linecap:round;stroke-miterlimit:10;" points="16,16 25,25 34,34"/>
<g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g>
</svg>
<svg version="1.1" id="Capa_1_poll" class="c-wind-turbine__poll big" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" width="100" height="225" width="554.625px" height="554.625px" viewBox="0 0 554.625 554.625"
style="enable-background:new 0 0 554.625 554.625;" xml:space="preserve">
<g>
<polygon points="293.772,554.625 280.222,258.188 265.486,258.188 253.925,554.625"/>
<circle cx="273.853" cy="212.766" r="19.823"/>
</g>
<g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g>
</svg>
</div>
</div>
<div class="c-wind-turbine">
<div class="c-wind-turbine__inner">
<svg version="1.1" id="Capa_1" class="c-wind-turbine__propeller" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" viewBox="0 0 50 50" style="enable-background:new 0 0 50 50;" xml:space="preserve">
<circle style="fill:transparent;" cx="25" cy="25" r="25"/>
<polyline style="fill:none;stroke-width:2;stroke-linecap:round;stroke-miterlimit:10;" points="16,34 25,25 34,16"/>
<polyline style="fill:none;stroke-width:2;stroke-linecap:round;stroke-miterlimit:10;" points="16,16 25,25 34,34"/>
<g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g>
</svg>
<svg version="1.1" id="Capa_1_poll" class="c-wind-turbine__poll" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" width="100" height="225" width="554.625px" height="554.625px" viewBox="0 0 554.625 554.625"
style="enable-background:new 0 0 554.625 554.625;" xml:space="preserve">
<g>
<polygon points="293.772,554.625 280.222,258.188 265.486,258.188 253.925,554.625 "/>
<circle cx="273.853" cy="212.766" r="19.823"/>
</g>
<g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g>
</svg>
</div>
</div>
</div>
$colors:(
body-background-color: #FFF,
material-input-border-bottom: 1px solid #757575,
material-input-focus-border-bottom: 1px solid #757575,
material-input-label-color: #999,
material-input-focus-label-color: #d75a4a,
material-input-bar-before-color: #d75a4a,
material-input-icon-color: #ee3b33,
material-input-text-color: #000,
oval-button-background-color: #01579B,
oval-button-color: #FFFFFF,
progress-svg-path-color: #FFF,
square-top-color: #d75a4a,
square-bottom-color: #01579B,
turbine-poll-polygon-color: #d75a4a,
turbine-poll-circle-color: #d75a4a,
turbine-poll-propeller-color: #d75a4a,
turbine-poll-big-polygon-color: #d75a4a,
turbine-poll-big-circle-color: #d75a4a,
turbine-poll-big-propeller-color: #d75a4a,
//THEME 2
/*
body-background-color:#F1F1F1,
material-input-border-bottom:1px solid #757575,
material-input-focus-border-bottom:1px solid #757575,
material-input-label-color:#273043,
material-input-focus-label-color:#273043,
material-input-bar-before-color:#175676,
material-input-icon-color:#175676,
material-input-text-color:#000,
oval-button-background-color:#175676,
oval-button-color:#F1F1F1,
progress-svg-path-color:#F1F1F1,
square-top-color:#273043,
square-bottom-color:#175676,
turbine-poll-polygon-color:#d75a4a,
turbine-poll-circle-color:#d75a4a,
turbine-poll-propeller-color:#d75a4a,
turbine-poll-big-polygon-color:#d75a4a,
turbine-poll-big-circle-color:#d75a4a,
turbine-poll-big-propeller-color:#d75a4a,
*/
//THEME 3
/*
body-background-color: #FAE3E3,
material-input-border-bottom: 1px solid #6A9685,
material-input-focus-border-bottom: 1px solid #A76571,
material-input-label-color: #565264,
material-input-focus-label-color: #565264,
material-input-bar-before-color: #A76571,
material-input-icon-color: #A76571,
material-input-text-color: #000,
oval-button-background-color: #A76571,
oval-button-color: #F1F1F1,
progress-svg-path-color: #F1F1F1,
square-top-color: #A76571,
square-bottom-color: #565264,
turbine-poll-polygon-color: #A76571,
turbine-poll-circle-color: #A76571,
turbine-poll-propeller-color: #A76571,
turbine-poll-big-polygon-color: #565264,
turbine-poll-big-circle-color: #565264,
turbine-poll-big-propeller-color: #565264,*/
);
@mixin animation ($delay, $duration, $animation, $fill-mode, $iteration-count, $timing-function) {
animation-name: $animation;
animation-delay: $delay;
animation-duration: $duration;
animation-fill-mode: $fill-mode;
animation-iteration-count: $iteration-count;
animation-timing-function: $timing-function;
animation-name: $animation;
animation-delay: $delay;
animation-duration: $duration;
animation-fill-mode: $fill-mode;
animation-iteration-count: $iteration-count;
animation-timing-function: $timing-function;
animation-name: $animation;
animation-delay: $delay;
animation-duration: $duration;
animation-fill-mode: $fill-mode;
animation-iteration-count: $iteration-count;
animation-timing-function: $timing-function;
}
.progress-svg {
width: 65px;
height: 65px;
margin-top: -20px;
path {
fill: map-get($colors,'progress-svg-path-color');
}
}
body {
background-color: map-get($colors,'body-background-color');
}
/* ********* INPUT *********** */
@media screen and (min-width:1200px) {
html, body, app-root {
height: 100%;
}
}
.l-login {
transition: opacity .8s ease-in-out;
position: fixed;
height: 100%;
width: 100%;
top: 0;
left: 0;
background: map-get($colors,'body-background-color');
opacity: 1;
z-index: 100;
text-align: center;
vertical-align: middle;
display: flex;
justify-content: center;
align-items: center;
&__form {
&-logo {
width: 300px;
margin-bottom: 45px;
}
&__button {
max-height: 50px;
background-color: map-get($colors,'oval-button-background-color');
color: map-get($colors,'oval-button-color');
padding: 13px 10px;
border-radius: 30px;
font-size: 18px;
width: 90%;
margin: 0 auto;
border: none;
outline: none;
fill: transparent;
transition: all .5s;
box-shadow: 0px 1px 11px 1px rgba(110, 106, 106, 0.8);
&:hover {
box-shadow: 0px 3px 13px 3px rgba(110, 106, 106, 0.8);
}
}
}
.square{
width: 250px;
height: 250px;
position: absolute;
border-radius: 30px;
transform: rotate(20deg);
transform: rotate(20deg);
transform: rotate(20deg);
&.blue-dark {
background-color: map-get($colors,'square-bottom-color');
}
&.red {
background-color: map-get($colors,'square-top-color');
}
&.left{
&-bottom {
bottom: -40px;
left: -100px;
box-shadow: 1px 4px 25px rgba(0, 0, 0, 0.33);
}
}
&.top {
&-right {
top: -40px;
right: -100px;
box-shadow: -5px 4px 9px rgba(0, 0, 0, 0.31)
}
}
}
&__progress{
&-img{
height: 40px;
width: 40px;
animation-duration: 1.5s;
animation-delay: .7s;
}
}
}
/* ------- MATERIAL-INPUT ------- */
.material-input {
&__group {
position: relative;
margin-bottom: 25px;
i {
position: absolute;
top: 6px;
left: 5px;
color: map-get($colors,'material-input-icon-color');
font-size: 23px;
}
&__error {
margin-top: 4px;
margin-left: 4px;
color: #D75A4A;
display: block;
text-align: left;
}
&__label {
font-size: 18px;
font-weight: normal;
position: absolute;
pointer-events: none;
left: 5px;
top: 10px;
transition: 0.2s ease all;
transition: 0.2s ease all;
transition: 0.2s ease all;
color: map-get($colors,'material-input-label-color');
&.iconic {
left: 40px;
}
}
&__input {
font-family: 'Ubuntu', sans-serif;
font-size: 18px;
padding: 10px 10px 10px 5px;
display: block;
width: 100%;
border: none;
border-bottom: map-get($colors,'material-input-border-bottom');
background: transparent;
transition: all .7s;
transition: all .5s;
color: map-get($colors,'material-input-text-color');
&.textarea {
resize: vertical;
overflow: auto;
}
&.iconic {
padding: 10px 10px 5px 40px;
&:focus {
&~ label {
top: -20px;
left: 5px;
color: #000;
font-size: 14px;
& ~ .material-input__group-bar:after {
width: 50%;
}
& ~ .material-input__group-bar:before {
width: 50%;
}
}
}
}
&:focus {
outline: none;
border-bottom: 1px solid map-get($colors,'material-input-bar-before-color');
&~ label {
top: -20px;
font-size: 14px;
}
& ~ .material-input__group-bar:before {
width: 50%;
}
& ~ .material-input__group-bar:after {
width: 50%;
}
}
}
&-bar {
position: relative;
display: block;
&:before {
content: '';
height: 2px;
width: 0;
bottom: 1px;
position: absolute;
transition: 0.2s ease all;
transition: 0.2s ease all;
transition: 0.2s ease all;
background: map-get($colors,'material-input-bar-before-color');
left: 50%;
}
&:after {
content: '';
height: 2px;
width: 0;
bottom: 1px;
position: absolute;
transition: 0.2s ease all;
transition: 0.2s ease all;
transition: 0.2s ease all;
background: map-get($colors,'material-input-bar-before-color');
right: 50%;
}
}
&__highlight {
position: absolute;
height: 60%;
width: 100px;
top: 25%;
left: 0;
pointer-events: none;
opacity: 0.5;
}
}
}
.c-wind-turbine {
position: absolute;
bottom: 20px;
right: 100px;
height: 128px;
width:128px;
&.big {
position: absolute;
bottom: 20px;
right: 200px;
height: 128px;
width:128px;
}
&__inner {
position: relative;
}
&__propeller {
width: 128px;
height: 128px;
@include animation(0, .9s, rotate, forwards, infinite, linear);
polyline {
stroke: map-get($colors,'turbine-poll-propeller-color');
}
&.big {
top: -32px;
position: absolute;
left: 25px;
polyline {
stroke: map-get($colors,'turbine-poll-big-propeller-color');
}
}
}
&__poll {
width: 150px;
height: 350px;
position: absolute;
top: -95px;
left: -10px;
polygon {
fill: map-get($colors,'turbine-poll-polygon-color');
}
circle {
fill: map-get($colors,'turbine-poll-circle-color');
}
&.big {
width: 200px;
height: 500px;
top: -195px;
polygon {
fill: map-get($colors,'turbine-poll-big-polygon-color');
}
circle {
fill: map-get($colors,'turbine-poll-big-circle-color');
}
}
}
}
@media screen and (max-width: 650px){
.wind-turbine-parent {
visibility: hidden;
}
}
@media screen and (max-height: 800px){
.square{
width: 175px;
height: 175px;
}
}
@media screen and (max-height: 580px){
.square.top-right {
top: -80px;
}
.square.left-bottom {
bottom: -80px;
}
}
.circular-loader {
margin: -20px 5px;
fill: #009688;
&.speed {
&-slow {
animation: spin .8s linear infinite;
animation: spin .8s linear infinite;
animation: spin .8s linear infinite;
}
&-normal {
animation: spin .4s linear infinite;
animation: spin .4s linear infinite;
animation: spin .4s linear infinite;
animation: spin .4s linear infinite;
}
&-fast {
animation: spin .2s linear infinite;
animation: spin .2s linear infinite;
animation: spin .2s linear infinite;
}
}
}
@mixin animation-mixin ($animation_name) {
@-webkit-keyframes #{$animation_name} {
@content;
}
@-moz-keyframes #{$animation_name} {
@content;
}
@keyframes #{$animation_name} {
@content;
}
}
@include animation-mixin (hu__hu__) {
0%{
left: -100px;
}
50% {
left: -80px;
}
100%{
left: -100px;
}
}
@include animation-mixin (hu__hu_r_) {
0%{
right: -100px;
}
50% {
right: -80px;
}
100%{
right: -100px;
}
}
@include animation-mixin (spin) {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
@include animation-mixin (inputHighlighter) {
from {
background: map-get($colors,'inputhighlighter-background-color');
}
to {
width:0;
background: transparent;
}
}
@include animation-mixin (rotate) {
0% {
transform: rotate(0deg);
transform-origin: center;
}
50% {
transform: rotate(180deg);
transform-origin: center;
}
100% {
transform: rotate(360deg);
transform-origin: center;
}
}
.hu_hu_animation {
@include animation(0, 2.5s, hu__hu__, forwards, infinite, ease-in-out);
}
.hu__hu_r_ {
@include animation(0, 2.5s, hu__hu__r_, forwards, infinite, ease-in-out);
}
View Compiled
This Pen doesn't use any external JavaScript resources.