lychee/src/styles/_content.scss
2015-01-20 13:20:17 +01:00

189 lines
3.7 KiB
SCSS

/**
* @copyright 2014 by Tobias Reich
*/
#content {
position: absolute;
padding: 50px 0 33px;
width: 100%;
min-height: calc(100% - 83px);
-webkit-overflow-scrolling: touch;
&::before {
content: '';
position: absolute;
width: 100%;
height: 1px;
border-top: 1px solid white(.02);
}
/* Albums and Photos ------------------------------------------------*/
.album,
.photo {
float: left;
position: relative;
width: 202px;
height: 202px;
margin: 30px 0 0 30px;
cursor: pointer;
img {
position: absolute;
width: 200px;
height: 200px;
background-color: #222;
box-shadow: 0 2px 5px black(.5);
border: 1px solid white(.5);
transition: opacity .3s ease-out, transform .3s ease-out, border-color .3s ease-out;
}
&:hover img,
&.active img {
border-color: $colorBlue;
}
}
/* Album ------------------------------------------------*/
.album {
img:first-child,
img:nth-child(2) {
transform: rotate(0) translateY(0) translateX(0);
opacity: 0;
}
&:hover img:nth-child(1),
&:hover img:nth-child(2) { opacity: 1; }
&:hover img:nth-child(1) { transform: rotate(-2deg) translateY(10px) translateX(-12px); }
&:hover img:nth-child(2) { transform: rotate(5deg) translateY(-8px) translateX(12px); }
}
/* Photo ------------------------------------------------*/
.photo:active {
transition-duration: .1s;
transform: scale(.98);
}
/* Album/Photo Overlay ------------------------------------------------*/
.album .overlay,
.photo .overlay {
position: absolute;
margin: 0 1px;
width: 200px;
background: black(.6);
background: linear-gradient(to bottom, black(0), black(.6));
bottom: 1px;
}
// No overlay for empty albums
.album img[data-type^='nonretina'] + .overlay {
background: none;
}
.photo .overlay { opacity: 0; }
.photo:hover .overlay,
.photo.active .overlay {
opacity: 1;
}
.album .overlay h1,
.photo .overlay h1 {
min-height: 19px;
width: 185px;
margin: 12px 0 5px 15px;
color: #fff;
text-shadow: 0 1px 3px black(.4);
font-size: 16px;
font-weight: bold;
overflow: hidden;
}
.album .overlay a,
.photo .overlay a {
display: block;
margin: 0 0 12px 15px;
font-size: 11px;
color: #bbb;
text-shadow: 0 1px 3px black(.4);
}
.photo .overlay a span { margin: 0 6px 0 0; }
.album img[data-type^='nonretina'] + .overlay h1,
.album img[data-type^='nonretina'] + .overlay a { text-shadow: none; }
/* Badges ------------------------------------------------*/
.album .badge,
.photo .badge {
position: absolute;
margin: -1px 0 0 12px;
padding: 12px 7px 3px 7px;
box-shadow: 0 0 2px black(.6);
background: $colorRed;
border-radius: 0 0 5px 5px;
border: 1px solid #fff;
border-top: none;
color: #fff;
font-size: 24px;
text-shadow: 0 1px 0 black(.4);
opacity: .9;
&:nth-child(2n) { margin-left: 57px; }
.iconic {
fill: #fff;
width: 21px;
filter: drop-shadow($shadowLight);
}
}
/* Divider ------------------------------------------------*/
.divider {
float: left;
margin: 50px 0 0;
padding: 10px 0 0;
width: 100%;
opacity: 0;
border-top: 1px solid white(.02);
box-shadow: $shadow;
&:first-child {
margin-top: 10px;
border-top: 0;
box-shadow: none;
}
h1 {
float: left;
margin: 0 0 0 30px;
color: white(.6);
font-size: 14px;
font-weight: bold;
text-shadow: $shadow;
}
}
}
/* No Content ------------------------------------------------*/
.no_content {
position: absolute;
top: 50%;
left: 50%;
padding-top: 20px;
color: rgba(10, 10, 10, 1);
color: black(.9);
text-shadow: 0 1px 0 white(.02);
text-align: center;
transform: translateX(-50%) translateY(-50%);
.icon { font-size: 80px; }
p {
font-size: 18px;
font-weight: bold;
}
}