Skip to content

Instantly share code, notes, and snippets.

@pm0u
Created February 1, 2019 16:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pm0u/d47436abf31910fdd47bb39d520e0fdd to your computer and use it in GitHub Desktop.
Save pm0u/d47436abf31910fdd47bb39d520e0fdd to your computer and use it in GitHub Desktop.
Spotify Css from clone
@charset "UTF-8";
body {
background: #181818;
font-family: "Roboto", sans-serif;
}
body a {
color: #aaaaaa;
}
body a:hover {
color: #c8c8c8;
}
.header {
background: #282828;
padding: 10px;
color: #aaaaaa;
border-bottom: 1px solid #181818;
display: flex;
flex-flow: row wrap;
align-items: center;
}
.header .page-flows .flow {
font-size: 20px;
color: #aaaaaa;
margin: 0 10px;
}
.header .page-flows .flow:hover {
color: white;
}
.header .page-flows .flow .disabled {
color: #5e5e5e;
}
.header .search {
margin-left: 1%;
}
.header .search input {
border-radius: 15px;
border: none;
background: white;
color: #181818;
padding-left: 30px;
outline: none;
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/7022/ios-search.svg);
background-repeat: no-repeat;
background-size: 10%;
background-position: 5px;
}
.header .user {
width: 300px;
margin-left: auto;
display: flex;
flex-flow: row wrap;
justify-content: space-between;
align-items: center;
}
.header .user i {
font-size: 20px;
}
.header .user i:hover {
color: white;
cursor: pointer;
}
.header .user__info img {
max-width: 30px;
max-height: 30px;
border-radius: 50%;
display: inline-block;
}
.header .user__actions button {
background: none;
border: none;
}
.header .user__actions .dropdown-menu {
background: #282828;
margin-top: 25px;
border-radius: 2px;
padding: 0;
border: none;
}
.header .user__actions .dropdown-menu:before {
font-family: "Ionicons";
content: "";
position: absolute;
top: -30px;
right: 7px;
color: #282828;
font-size: 36px;
}
.header .user__actions .dropdown-menu a {
color: #aaaaaa;
transition: all 0.2s ease;
}
.header .user__actions .dropdown-menu a:hover {
background: none;
transition: all 0.2s ease;
}
.header .user__actions .dropdown-menu li {
padding: 10px;
margin: 0;
transition: all 0.2s ease;
}
.header .user__actions .dropdown-menu li:hover {
background: #aaaaaa;
transition: all 0.2s ease;
}
.header .user__actions .dropdown-menu li:hover a {
color: #c8c8c8;
transition: all 0.2s ease;
}
.content {
display: flex;
flex-flow: row wrap;
}
.content__left {
width: 15%;
}
.content__middle {
width: 70%;
}
.content__right {
width: 15%;
}
@media (max-width: 1400px) {
.content__left {
width: 20%;
}
.content__middle {
width: 80%;
}
.content__right {
display: none;
}
}
@media (max-width: 768px) {
.content__left {
width: 100%;
}
.content__middle {
width: 100%;
}
}
.navigation {
padding: 15px;
background: #282828;
color: #aaaaaa;
overflow-y: scroll;
}
.navigation__list {
display: flex;
flex-flow: column wrap;
margin-bottom: 15px;
}
.navigation__list__header:after {
font-family: "Ionicons";
content: "";
}
.navigation__list .active:after {
font-family: "Ionicons";
content: "";
}
.navigation__list__item {
color: #aaaaaa;
padding: 5px 0;
display: flex;
flex-flow: row nowrap;
align-items: center;
}
.navigation__list__item:hover {
color: white;
text-decoration: none;
border-right: 3px solid #1ed760;
}
.navigation__list__item i {
width: 25px;
display: block;
}
@media (max-width: 768px) {
.navigation {
display: flex;
flex-flow: row wrap;
justify-content: space-around;
}
.navigation__list {
margin-bottom: 0;
width: calc( 100% / 3 );
text-align: center;
}
.navigation__list__item {
width: 100%;
text-align: center;
}
.navigation__list__item i {
display: none;
}
.navigation__list__item span {
margin: 0 auto;
}
.navigation__list__item:hover {
border: none;
}
}
.playlist {
padding: 15px;
background: #282828;
border-top: 1px solid #181818;
border-bottom: 1px solid #181818;
}
.playlist:hover {
background: #424242;
}
.playlist:hover a {
color: white;
}
.playlist a {
color: #aaaaaa;
display: flex;
flex-flow: row nowrap;
align-items: center;
}
.playlist a:hover {
text-decoration: none;
}
.playlist a i {
font-size: 24px;
color: white;
margin-right: 15px;
}
@media (max-width: 768px) {
.playlist {
display: none;
}
}
.playing {
background: #282828;
border-bottom: 1px solid #181818;
display: flex;
flex-flow: row nowrap;
align-items: center;
}
.playing__art img {
width: 50px;
height: 50px;
}
.playing__song {
color: #aaaaaa;
padding-left: 15px;
display: flex;
flex-flow: column wrap;
}
.playing__song a {
color: #aaaaaa;
}
.playing__song a:hover {
color: white;
cursor: pointer;
}
.playing__add {
margin-left: auto;
padding-right: 15px;
color: #aaaaaa;
}
@media (max-width: 768px) {
.playing {
border-top: 1px solid #181818;
}
}
.current-track {
background: #282828;
padding: 5px 15px;
display: flex;
flex-flow: row wrap;
align-items: center;
}
.current-track__actions {
width: 5%;
display: flex;
flex-flow: row nowrap;
justify-content: space-between;
align-items: center;
}
.current-track__actions a {
font-size: 24px;
color: #c8c8c8;
}
.current-track__actions a:hover {
color: white;
cursor: pointer;
}
.current-track__actions .play {
font-size: 36px;
}
.current-track__progress {
width: 70%;
padding: 0 30px;
color: #aaaaaa;
font-size: 11px;
display: flex;
flex-flow: row;
justify-content: space-between;
align-items: center;
}
.current-track__progress__bar {
width: 100%;
padding: 0 15px;
}
.current-track__progress__bar .noUi-target {
border: none;
height: 4px;
}
.current-track__progress__bar .noUi-base {
background: #1ed760;
}
.current-track__progress__bar .noUi-origin {
background: #5e5e5e;
}
.current-track__progress__bar .noUi-handle {
background: #c8c8c8;
width: 15px;
height: 15px;
border-radius: 50%;
box-shadow: none;
border: none;
left: 0;
display: none;
}
.current-track__progress__bar .noUi-handle:before, .current-track__progress__bar .noUi-handle:after {
background: none;
}
.current-track__progress:hover .noUi-handle {
display: block;
}
.current-track__options {
width: 25%;
display: flex;
flex-flow: row wrap;
align-items: center;
}
.current-track__options .lyrics {
font-size: 11px;
text-transform: uppercase;
width: 15%;
padding: 0 15px 0 0;
}
.current-track__options .controls {
width: 85%;
display: flex;
flex-flow: row wrap;
justify-content: space-between;
}
.current-track__options .controls .devices:hover {
text-decoration: none;
}
.current-track__options .controls .devices i {
margin-right: 5px;
}
.current-track__options .controls .devices span {
font-size: 11px;
text-transform: uppercase;
}
.current-track__options .controls .volume {
width: 25%;
display: flex;
flex-flow: row wrap;
align-items: center;
}
.current-track__options .controls .volume i {
width: 20px;
color: #aaaaaa;
}
.current-track__options .controls .volume #song-volume {
width: calc( 80% - 20px );
border: none;
height: 4px;
}
.current-track__options .controls .volume #song-volume .noUi-base {
background: #c8c8c8;
}
.current-track__options .controls .volume #song-volume .noUi-origin {
background: #5e5e5e;
}
.current-track__options .controls .volume #song-volume .noUi-handle {
background: #c8c8c8;
width: 15px;
height: 15px;
border-radius: 50%;
box-shadow: none;
border: none;
left: 0;
display: none;
}
.current-track__options .controls .volume #song-volume .noUi-handle:before, .current-track__options .controls .volume #song-volume .noUi-handle:after {
background: none;
}
.current-track__options .controls .volume #song-volume:hover .noUi-handle {
display: block;
}
@media (max-width: 1400px) {
.current-track__actions {
width: 10%;
}
.current-track__progress {
width: 50%;
}
.current-track__options {
width: 40%;
}
}
@media (max-width: 980px) {
.current-track__actions {
width: 10%;
}
.current-track__progress {
width: 40%;
}
.current-track__options {
width: 50%;
}
}
@media (max-width: 768px) {
.current-track__actions {
width: 25%;
}
.current-track__progress {
width: 75%;
}
.current-track__options {
width: 100%;
}
}
@media (max-width: 480px) {
.current-track__actions {
width: 100%;
justify-content: space-around;
padding: 5px 0;
}
.current-track__progress {
width: 100%;
padding: 5px 0;
}
.current-track__options {
width: 100%;
padding: 5px 0;
}
}
@media (max-width: 768px) {
.current-track__action {
padding-top: 15px;
}
}
.artist {
height: 617px;
overflow-y: scroll;
}
.artist__header {
height: 320px;
border-bottom: 1px solid #282828;
position: relative;
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/7022/spotify_img_bground.png);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
overflow: hidden;
z-index: 1;
display: flex;
flex-flow: row wrap;
justify-content: space-between;
align-items: flex-end;
}
.artist__header:before {
content: " ";
display: block;
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 0;
opacity: 0.15;
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/7022/g-eazy.png);
background-repeat: no-repeat;
background-size: cover;
background-position: top;
}
.artist__header .artist__info {
padding: 15px;
z-index: 1;
width: 80%;
margin-top: 78px;
display: flex;
flex-flow: row wrap;
align-items: flex-end;
}
.artist__header .artist__info .profile__img {
margin-right: 15px;
}
.artist__header .artist__info .profile__img img {
width: 150px;
height: 150px;
border-radius: 50%;
}
.artist__header .artist__info__type {
color: #aaaaaa;
text-transform: uppercase;
font-size: 11px;
letter-spacing: 1px;
}
.artist__header .artist__info__name {
color: white;
font-size: 36px;
font-weight: 100;
padding: 0 0 10px 0;
}
.artist__header .artist__info__actions {
display: flex;
flex-flow: row wrap;
}
.artist__header .artist__info__actions button {
margin-right: 10px;
height: 27px;
display: flex;
flex-flow: row wrap;
align-items: center;
padding: 0 15px;
font-weight: 500;
}
.artist__header .artist__info__actions button i {
font-size: 20px;
margin-right: 5px;
}
.artist__header .artist__info__actions .more {
width: 27px;
height: 27px;
border-radius: 50%;
padding: 0;
text-align: center;
}
.artist__header .artist__info__actions .more i {
margin: 0;
padding-left: 6px;
}
.artist__header .artist__listeners {
width: 20%;
z-index: 1;
padding: 15px;
text-align: right;
color: #aaaaaa;
font-weight: 100;
font-size: 16px;
letter-spacing: 1px;
}
.artist__header .artist__listeners__label {
font-weight: 300;
text-transform: uppercase;
font-size: 12px;
letter-spacing: 1px;
}
.artist__header .artist__navigation {
width: 100%;
z-index: 1;
background: rgba(24, 24, 24, 0.6);
display: flex;
flex-flow: row wrap;
justify-content: space-between;
align-items: center;
}
.artist__header .artist__navigation ul {
border: none;
}
.artist__header .artist__navigation ul li {
padding: 0 15px;
}
.artist__header .artist__navigation ul li a {
padding: 15px 0;
color: #aaaaaa;
border: none;
text-transform: uppercase;
letter-spacing: 1px;
transition: all 0.4s ease;
border-bottom: 4px solid rgba(0, 0, 0, 0);
}
.artist__header .artist__navigation ul li a:hover {
background: none;
border: none;
color: white;
transition: all 0.4s ease;
border-bottom: 4px solid rgba(0, 0, 0, 0);
}
.artist__header .artist__navigation ul li.active a {
color: white;
background: none;
border: none;
border-bottom: 4px solid #1ed760;
}
.artist__header .artist__navigation ul li.active a:hover {
border-bottom: 4px solid #1ed760;
}
.artist__header .artist__navigation__friends {
padding: 15px;
}
.artist__header .artist__navigation__friends img {
width: 30px;
height: 30px;
border-radius: 50%;
position: relative;
}
.artist__header .artist__navigation__friends .tooltip {
z-index: 1;
position: absolute;
}
.artist.is-verified .profile__img {
position: relative;
}
.artist.is-verified .profile__img:after {
font-family: "Ionicons";
content: "";
position: absolute;
bottom: 5px;
right: 25px;
color: white;
background: #4688d7;
width: 20px;
height: 20px;
border-radius: 50%;
text-align: center;
font-size: 18px;
line-height: 1;
}
.artist__content {
padding: 15px;
}
.artist__content .overview {
display: flex;
flex-flow: row wrap;
}
.artist__content .overview__artist {
padding-right: 15px;
width: 70%;
}
.artist__content .overview__artist .latest-release {
margin-bottom: 30px;
display: flex;
flex-flow: row wrap;
}
.artist__content .overview__artist .latest-release__art {
width: 75px;
}
.artist__content .overview__artist .latest-release__art img {
width: 75px;
height: 75px;
}
.artist__content .overview__artist .latest-release__song {
width: calc( 100% - 75px );
padding: 10px 15px;
background: #282828;
color: #aaaaaa;
display: flex;
flex-flow: column wrap;
justify-content: space-between;
}
.artist__content .overview__artist .latest-release__song__title {
color: #c8c8c8;
}
.artist__content .overview__related {
width: 30%;
}
@media (max-width: 1024px) {
.artist__content .overview__artist {
width: 100%;
}
.artist__content .overview__related {
width: 100%;
margin-top: 15px;
}
}
@media (max-width: 768px) {
.artist__content .overview__artist {
padding-right: 0;
}
}
@media (max-width: 768px) {
.artist {
overflow-y: auto;
}
}
@media (max-width: 522px) {
.artist__header {
height: auto;
flex-flow: column wrap;
}
.artist__header .artist__info {
margin-top: 0;
width: 100%;
display: flex;
flex-flow: column wrap;
align-items: center;
text-align: center;
}
.artist__header .artist__info .profile__img {
margin-right: 0;
}
.artist__header .artist__info__type {
margin-top: 10px;
}
.artist__header .artist__listeners {
width: 100%;
text-align: center;
}
}
.tracks {
display: flex;
flex-flow: column wrap;
margin-bottom: 15px;
}
.tracks__heading {
color: #aaaaaa;
height: 42px;
display: flex;
flex-flow: row wrap;
align-items: center;
}
.tracks__heading__number {
margin-left: 10px;
font-style: italic;
}
.tracks__heading__title {
margin-left: 70px;
width: 45%;
text-transform: uppercase;
letter-spacing: 1px;
}
.tracks__heading__length {
margin-left: auto;
font-size: 20px;
}
.tracks__heading__popularity {
font-size: 20px;
margin-left: 55px;
padding-right: 10px;
}
.tracks .track {
border-top: 1px solid #282828;
height: 42px;
display: flex;
flex-flow: row wrap;
align-items: center;
}
.tracks .track:hover {
background: #282828;
}
.tracks .track:last-child {
border-bottom: 1px solid #282828;
}
.tracks .track__art img {
width: 42px;
height: 42px;
}
.tracks .track__number {
margin-left: 10px;
color: #aaaaaa;
width: 12px;
}
.tracks .track__added {
margin-left: 30px;
color: #c8c8c8;
}
.tracks .track__added .added {
color: #c8c8c8;
}
.tracks .track__added .not-added {
color: #aaaaaa;
}
.tracks .track__title {
width: 45%;
margin-left: 30px;
color: white;
}
.tracks .track__title.featured .title:after {
content: "-";
margin: 0 5px;
}
.tracks .track__title.featured .feature {
color: #aaaaaa;
}
.tracks .track__title.featured .feature:after {
content: ",";
margin-right: 5px;
}
.tracks .track__title.featured .feature:last-child:after {
content: "";
margin-right: 0;
}
.tracks .track__title.featured .feature:hover {
cursor: pointer;
color: #c8c8c8;
text-decoration: underline;
}
.tracks .track__explicit .label {
border: 1px;
border-style: solid;
border-color: #424242;
color: #424242;
text-transform: uppercase;
}
.tracks .track__plays {
color: #aaaaaa;
margin-left: auto;
padding-right: 10px;
}
.tracks .track__length {
margin-left: auto;
color: #aaaaaa;
}
.tracks .track__popularity {
margin-left: 46px;
padding-right: 10px;
font-size: 20px;
color: #aaaaaa;
}
@media (max-width: 1200px) {
.tracks__heading__title {
width: auto;
}
.tracks__heading__popularity {
display: none;
}
.tracks .track__title {
width: auto !important;
}
.tracks .track__explicit {
display: none;
}
.tracks .track__popularity {
display: none;
}
}
.related-artists {
display: flex;
flex-flow: column wrap;
}
.related-artists .related-artist {
background: #282828;
padding: 5px;
margin-bottom: 2px;
}
.related-artists .related-artist:hover {
background: #373737;
text-decoration: none;
}
.related-artists .related-artist__img img {
width: 42px;
height: 42px;
border-radius: 50%;
}
.related-artists .related-artist__name {
margin-left: 15px;
color: white;
}
@media (max-width: 1024px) {
.related-artists {
flex-flow: row wrap;
}
.related-artists .related-artist {
margin: 10px;
width: calc( (100% / 3) - 20px );
}
}
@media (max-width: 768px) {
.related-artists .related-artist {
margin: 5px;
width: calc( (100% / 2) - 10px );
}
}
@media (max-width: 480px) {
.related-artists .related-artist {
margin: 5px;
width: 20%;
background: none;
}
.related-artists .related-artist:hover {
background: none;
opacity: 0.6;
}
.related-artists .related-artist__name {
display: none;
}
}
.overview__albums {
width: 100%;
margin-top: 30px;
}
.overview__albums__head {
border-bottom: 1px solid #282828;
margin-bottom: 10px;
display: flex;
flex-flow: row wrap;
justify-content: space-between;
align-items: center;
}
.overview__albums__head .view-type {
color: white;
margin-bottom: 4px;
}
.overview__albums__head .view-type .active {
background: #282828;
padding: 8px;
border-radius: 50%;
}
.overview__albums__head .view-type i {
padding: 8px;
border-radius: 50%;
}
.overview__albums__head .view-type i:hover {
padding: 8px;
border-radius: 50%;
background: #353535;
cursor: pointer;
}
.album__info {
margin-bottom: 15px;
display: flex;
flex-flow: row wrap;
}
.album__info__art img {
width: 135px;
height: 135px;
}
.album__info__meta {
width: calc( 100% - 150px);
margin-left: 15px;
display: flex;
flex-flow: column wrap;
}
.album__info__meta .album__year {
color: #aaaaaa;
letter-spacing: 1px;
}
.album__info__meta .album__name {
color: white;
font-size: 30px;
font-weight: 100;
}
.album__info__meta .album__actions {
margin-top: auto;
}
.album__info__meta .album__actions .save {
padding-left: 30px;
padding-right: 30px;
margin-right: 10px;
}
.album__info__meta .album__actions .save:hover {
border-color: #1ed760;
}
.album__info__meta .album__actions .more {
width: 27px;
height: 27px;
border-radius: 50%;
padding: 0;
text-align: center;
}
.album .track__title {
width: 70%;
}
@media (max-width: 1200px) {
.album .tracks .track {
height: auto;
padding: 10px 0;
}
}
.social {
padding: 15px;
text-align: center;
overflow-y: scroll;
}
.social .friends {
display: flex;
flex-flow: column wrap;
margin-bottom: 15px;
}
.social .friends .friend {
padding: 15px 0;
display: flex;
flex-flow: row nowrap;
align-items: center;
}
.social .friends .friend:first-child {
padding-top: 0;
}
.social .friends .friend i {
font-size: 20px;
margin-right: 15px;
}
.media-cards {
display: flex;
flex-flow: row wrap;
}
.media-cards .media-card {
margin: 15px;
width: calc( (100% / 4) - 30px );
}
.media-cards .media-card__image {
height: 200px;
background-repeat: no-repeat;
background-position: center;
background-size: cover;
display: flex;
align-items: center;
}
.media-cards .media-card__image i {
color: white;
font-size: 72px;
margin: 0 auto;
opacity: 0;
transition: all 0.5s ease;
text-shadow: 1px 5px 15px #181818;
}
.media-cards .media-card__image i:hover {
cursor: pointer;
}
.media-cards .media-card__image:hover i {
opacity: 1;
transition: all 0.5s ease;
}
.media-cards .media-card__footer {
display: block;
background: #282828;
padding: 15px;
color: white;
}
.media-cards .media-card__footer:hover {
cursor: pointer;
}
@media (max-width: 1100px) {
.media-cards .media-card {
width: calc( (100% / 3) - 30px );
}
}
@media (max-width: 768px) {
.media-cards .media-card {
width: calc( (100% / 2) - 30px );
}
}
@media (max-width: 480px) {
.media-cards .media-card {
margin: 15px 0;
width: 100%;
}
}
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-thumb {
border-radius: 4px;
background: #373737;
}
@media (max-width: 650px) {
.header .window__actions {
width: 15%;
}
.header .page-flows {
width: 20%;
margin: 0;
}
.header .search {
width: 65%;
margin: 0;
}
.header .search input {
width: 100%;
background-size: 7%;
}
.header .user {
width: 100%;
margin-top: 15px;
justify-content: space-around;
}
}
.h1 {
font-size: 36px;
}
.h2, .navigation__list__header {
font-size: 11px;
text-transform: uppercase;
letter-spacing: 1px;
margin-bottom: 5px;
}
.red {
color: #fc615c;
}
.red:hover {
color: #fb302a;
}
.yellow {
color: #fdbe41;
}
.yellow:hover {
color: #fcad0f;
}
.green {
color: #34c94a;
}
.green:hover {
color: #2aa03b;
}
button {
border-radius: 20px;
border: none;
padding: 5px 15px;
text-transform: uppercase;
letter-spacing: 1px;
font-size: 11px;
outline: none;
}
button:hover {
cursor: pointer;
}
.button-dark {
background: #1ed760;
color: white;
border: 1px solid #1ed760;
}
.button-dark:hover {
background: #43e57d;
}
.button-light {
background: none;
color: #c8c8c8;
border: 1px solid #c8c8c8;
}
.button-light:hover {
border-color: white;
color: white;
}
.section-title {
text-transform: uppercase;
color: #aaaaaa;
letter-spacing: 1.25px;
font-size: 13.2px;
margin-bottom: 10px;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment