// ------------------------------------ posts ------------------------------------ // .posts-wrapper{ padding: 0; margin-bottom: 20px; } .single-post .posts{ margin-bottom: 10px; .post{ border-radius: 3px; @extend .has-shadow; } } // ------------------------------------ post ------------------------------------ // .post{ padding: 10px 0px 10px 10px; border-radius: 0px; margin-bottom: 0px; border-bottom:1px solid $lightest-grey; display: flex; align-items: center; position:relative; width:100%; background: white; &:first-child{ border-radius: 3px 3px 0px 0px; } &:last-child{ border-radius: 0px 0px 3px 3px; } &.animate{ transition: ease-out, top, 400ms, 0ms; } &.inactive{ .post-content{ background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVQYV2NkIALMnDlTkpGQOpCi9PT053gVwhSBDMOpEFkRToXoirAqxKYIQyEuRSgK8SmCKySkCKyQGEUghQC5OyXvW/4BHwAAAABJRU5ErkJggg=='); } } .post-share{ display: none; } &.show-actions{ .post-content{ display: none; } .post-share, .post-discuss, .post-upvote{ display: block; } } } // ------------------------------ posts-list layout ------------------------------ // .posts-list{ .post-module{ flex-shrink: 0; flex-grow: 0; margin-right: 10px; } .post-rank{ @include small{ display: none; } .post-rank-inner{ height: 25px; position: relative; } span{ position:absolute; top:0px; left:-60px; display:block; height:25px; line-height:25px; width:30px; text-align:right; font-size:18px; // font-weight:bold; color:black(0.2); } } .post-upvote{ order: 1; @include small{ display: none; } } .post-content{ order: 2; width: 100%; // can shrink on mobile or desktop flex-shrink: 1; @include medium-large{ // but can only grow on desktop flex-grow: 1; // only be a flex container on desktop display: flex; } align-items: center; } .post-info{ flex-grow: 1; } .post-share{ order: 3; } .post-discuss{ order: 7; padding-top: 6px; } .post-share, .post-discuss{ // width: 60px; text-align: center; // height: 60px; // position: relative; // top: -5px; } .post-actions{ order: 8; } .post-avatars{ order: 6 } &.show-actions{ .post-share, .post-discuss, .post-upvote{ flex-grow: 1; } } } // ------------------------------ posts-grid layout ------------------------------ // .posts-grid{ display: flex; flex-wrap: wrap; justify-content: center; .post{ width: calc((100% - 20px)/3); margin-right: 10px; margin-bottom: 10px; display: block; padding: 0; position: relative; padding-bottom: 40px; &:nth-of-type(3n){ margin-right: 0; } &:after{ content: " "; display: block; position: absolute; bottom: 40px; left: 0px; width: 100%; border-bottom: 1px solid $lightest-grey; } } .post-rank{ span{ position: absolute; top: 0px; right: 0px; z-index: 1; background: black(0.4); color: white; height: 24px; width: 24px; line-height: 24px; vertical-align: middle; text-align: center; font-size: 14px; // border-radius: 100%; // box-shadow: 0px 0px 2px white(0.5); } } .post-upvote{ position: absolute; left: 3px; bottom: 3px; } .post-content{ display: block; } .post-thumbnail{ margin-right: 0px; a{ width: 100%; } } .post-info{ padding: 10px; } .no-thumbnail .post-info{ padding-right: 35px; } .post-avatars{ position: absolute; right: 48px; bottom: 0px; padding: 8px 0px; } .post-discuss{ position: absolute; right: 8px; bottom: 0px; padding: 8px 0px 2px 0px; } } // -------------------------------- post modules --------------------------------- // .post-module.post-rank{ margin: 0; } .post-upvote{ .upvote-link{ position: relative; // top: 17px; // transform: translateY(-50%); display: block; text-align: center; i{ opacity: 0.4; display: inline-block; border-radius: 50%; border: 1px solid rgba($red, 0.3); font-size:10px; width: 24px; height: 24px; text-align:center; // line-height:$grid-unit; color:rgba($red, 0.8); text-shadow:0px 1px 0px white; line-height: 2.3; margin: 5px; &:before{ top: 0px; } &.icon-check{ display:none; } } .action-label{ display:none; @include small{ display: block; } } &.not-voted:hover{ i{ opacity: 1; text-shadow:none; } } &.voted{ cursor:default; i.icon-up{ display:none; } i.icon-check{ border: 1px solid rgba($blue, 0.6); display: inline-block; color:rgba($blue, 0.8); opacity: 0.5; } } } } .post-content{ min-height: $grid-unit - 30px; .post-sticky{ display: block; position: absolute; right: -40px; top: 16px; font-size: 24px; i{ color: $light-text; } span{ display: none; } } } .post-avatars{ display: inline-block; display: flex; @include small{ display: none; } .author-avatar{ display: block; } .post-commenters{ display: block; border-left: 1px solid black(0.2); padding-left: 5px; } .avatar-link{ display: inline-block; margin-right: 5px; &:last-child{ margin-right: 0px; } } .avatar{ display: inline-block; height: 24px; width: 24px; vertical-align: middle; } } .post-author{ .avatar{ display: inline-block; width: 20px; height: 20px; vertical-align: middle; margin-right: 5px; } } .post-discuss{ .action-label{ @include medium-large{ display: none; } } } .post-actions{ display: none; text-align: right; @include small{ display: block; } a{ display: block; width: 36px; height: 36px; padding: 6px; span{ display: block; height: 100%; width: 100%; border-radius: 3px; border: 1px solid rgba($red, 0.3); color: rgba($red, 0.8); text-align: center; line-height: 14px; font-weight: bold; font-size: 20px; } } } // -------------------------------- post content --------------------------------- // .post-heading{ margin-bottom: 3px; line-height: 1.2; .post-title{ @include small{ font-size: 15px; } @include medium-large{ font-size:18px; } font-weight:normal; &:visited{ color:$grey; } } .post-domain{ color:$light-text; @include small{ font-size: 13px; } @include medium-large{ font-size:14px; } font-weight:normal; } } .post-meta{ font-size:13px; color:$light-text; line-height:1.5; @include small{ font-size: 11px; line-height: 1.7; } a{ &:link, &:visited, &:active{ color:$medium-text; } &:hover{ color: $red; } } } .post-meta-item{ display: inline-block; } .post-body{ @extend .has-shadow; border-radius: 3px; margin-bottom: 10px; background: white; padding:20px; font-size:16px; .list &{ display:none; } } .post.sticky{ background:$light-yellow; } // -------------------------------- mobile view --------------------------------- // @include small { .posts{ padding:0; .post-rank{ display:none; } } .post{ .post-content{ margin-right:50px; margin-right:0px; // min-height:90px; .upvote-link{ width:30px; } .post-info{ // margin-left:30px; padding:13px 0; } .post-heading{ .post-title{ display:block; margin-bottom:4px; } .post-domain{ display:block; margin-bottom:4px; font-size:13px; } } .post-meta{ font-size:11px; .unit{ font-size:0; &:after{ font-size:12px; content:"pts "; } } } } } } // -------------------------------- other --------------------------------- // .no-posts{ padding: 20px; border: 1px solid black(0.1); font-size: 14px; border-radius: 3px; // @extend .has-shadow; margin-bottom: 10px; color: black(0.5); } .empty-notice{ text-align:center; padding:10px 0; } .action{ position:relative; display:block; padding:0; text-align:center; color:$light-text; &.edit-link{ color:$red; } &.share-link{ color:$light-text; } &.discuss-link{ color:$light-text; } &.more-link{ color:$blue; } &:hover{ &, .action{ color:$red; } } &.voted{ color:white; cursor: default; } .points{ display:block; font-size:30px; line-height:50px; } } .more-button{ display: block; width:100%; height:$grid-unit; background:black(0.05); text-align:center; color:white; line-height:$grid-unit; font-size:18px; border-radius: 0px 0px 3px 3px; text-shadow: 0px 1px 1px 0px black(0.25); padding: 0px; &:hover{ background: black(0.15); } } .module{ border-radius: 3px; }