This commit is contained in:
parent
c4c884ffdd
commit
efcc10cdeb
@ -18,24 +18,8 @@
|
||||
|
||||
-->
|
||||
<div class="articles">
|
||||
<#list articles as article>
|
||||
<article class="item<#if article_index % 6 ==0> item--large</#if>">
|
||||
<a href="${servePath}${article.articlePermalink}" class="item__cover"
|
||||
style="background-image: url(${article.articleImg1URL})">
|
||||
</a>
|
||||
<div class="item__main">
|
||||
<#list article.articleTags?split(",") as articleTag>
|
||||
<#if articleTag_index == 0>
|
||||
<#if article.category??>
|
||||
<a class="item__tag"
|
||||
href="${servePath}/category/${article.category.categoryURI}">${article.category.categoryTitle}</a>
|
||||
<#else>
|
||||
<a rel="tag" class="item__tag" href="${servePath}/tags/${articleTag?url('UTF-8')}">
|
||||
${articleTag}
|
||||
</a>
|
||||
</#if>
|
||||
</#if>
|
||||
</#list>
|
||||
<#list articles as article>
|
||||
<article class="item">
|
||||
<h2 class="item__title">
|
||||
<a rel="bookmark" href="${servePath}${article.articlePermalink}">
|
||||
${article.articleTitle}
|
||||
@ -58,31 +42,33 @@
|
||||
<#else>
|
||||
${article.articleAbstractText}
|
||||
</#if>
|
||||
|
||||
</a>
|
||||
<div class="fn__clear">
|
||||
<a href="${servePath}/authors/${article.authorId}"
|
||||
aria-label="${article.authorName}"
|
||||
class="vditor-tooltipped vditor-tooltipped__n item__avatar">
|
||||
<img src="${article.authorThumbnailURL}" />
|
||||
</a>
|
||||
<a href="${servePath}/authors/${article.authorId}">${article.authorName}</a>
|
||||
·
|
||||
<#list article.articleTags?split(",") as articleTag>
|
||||
<a rel="tag" class="item__tag" href="${servePath}/tags/${articleTag?url('UTF-8')}">
|
||||
${articleTag}
|
||||
</a>
|
||||
</#list>
|
||||
<#if article.articleCommentCount != 0>
|
||||
<a class="item__meta" href="${servePath}${article.articlePermalink}#comments">
|
||||
·
|
||||
<a class="item__tag" href="${servePath}${article.articlePermalink}#comments">
|
||||
${article.articleCommentCount} ${commentLabel}
|
||||
</a>
|
||||
<#else>
|
||||
<a class="item__meta" href="${servePath}${article.articlePermalink}">
|
||||
</#if>
|
||||
<#if article.articleViewCount != 0>
|
||||
·
|
||||
<a class="item__tag" href="${servePath}${article.articlePermalink}">
|
||||
${article.articleViewCount} ${viewLabel}
|
||||
</a>
|
||||
</#if>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
</#list>
|
||||
</div>
|
||||
</#list>
|
||||
|
||||
<#if 0 != paginationPageCount>
|
||||
<nav class="pagination">
|
||||
<#if 0 != paginationPageCount>
|
||||
<nav class="pagination">
|
||||
<#if 1 != paginationPageNums?first>
|
||||
<a href="${servePath}${path}?p=${paginationPreviousPageNum}"
|
||||
aria-label="${previousPageLabel}"
|
||||
@ -103,5 +89,6 @@
|
||||
<a href="${servePath}${path}?p=${paginationNextPageNum}" aria-label="${nextPagePabel}"
|
||||
class="pagination__item vditor-tooltipped__n vditor-tooltipped">»</a>
|
||||
</#if>
|
||||
</nav>
|
||||
</#if>
|
||||
</nav>
|
||||
</#if>
|
||||
</div>
|
File diff suppressed because one or more lines are too long
@ -153,7 +153,7 @@ a {
|
||||
transform: scale(1.6)
|
||||
}
|
||||
|
||||
70%,to {
|
||||
70%, to {
|
||||
transform: scale(1)
|
||||
}
|
||||
}
|
||||
@ -168,10 +168,6 @@ a {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
|
||||
#canvas {
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
&--index {
|
||||
height: 100vh;
|
||||
|
||||
@ -186,37 +182,6 @@ a {
|
||||
}
|
||||
}
|
||||
|
||||
//&--article {
|
||||
// background-color: $black-bg;
|
||||
// height: 64px;
|
||||
// .header__title {
|
||||
// display: none;
|
||||
// }
|
||||
// .header__nav a {
|
||||
// margin-bottom: 0;
|
||||
// line-height: 64px;
|
||||
// }
|
||||
//}
|
||||
//&--other {
|
||||
// height: 407px;
|
||||
// .header__title {
|
||||
// display: none;
|
||||
// }
|
||||
// &:before {
|
||||
// content: "";
|
||||
// height: 100%;
|
||||
// position: absolute;
|
||||
// background: url("../images/header-bg.jpg") no-repeat center center;
|
||||
// width: 100%;
|
||||
// top: 0;
|
||||
// background-size: cover;
|
||||
// filter: brightness(48%);
|
||||
// }
|
||||
// .header__nav a {
|
||||
// margin-bottom: 0;
|
||||
// line-height: 64px;
|
||||
// }
|
||||
//}
|
||||
&__title {
|
||||
position: relative;
|
||||
align-items: center;
|
||||
@ -272,31 +237,6 @@ a {
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
//&__nav {
|
||||
// position: relative;
|
||||
// a {
|
||||
// font-size: 13px;
|
||||
// float: left;
|
||||
// line-height: 24px;
|
||||
// color: $fade-lighter;
|
||||
// margin: 0 20px 90px 0;
|
||||
// &:hover {
|
||||
// color: #fff;
|
||||
// text-decoration: none;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// img {
|
||||
// height: 14px;
|
||||
// width: 14px;
|
||||
// margin-right: 5px;
|
||||
// }
|
||||
//
|
||||
// svg {
|
||||
// margin-top: 5px;
|
||||
// }
|
||||
//}
|
||||
}
|
||||
|
||||
.side {
|
||||
@ -363,7 +303,6 @@ a {
|
||||
width: 280px;
|
||||
height: 100vh;
|
||||
overflow: auto;
|
||||
background: #000 url(../images/side-bg.gif) top / contain no-repeat;
|
||||
animation-name: bounceOutLeft;
|
||||
animation-duration: 1s;
|
||||
animation-fill-mode: both;
|
||||
@ -371,6 +310,7 @@ a {
|
||||
left: 0;
|
||||
z-index: 4;
|
||||
top: 0;
|
||||
background-color: #000;
|
||||
|
||||
&::-webkit-scrollbar {
|
||||
display: none;
|
||||
@ -387,13 +327,122 @@ a {
|
||||
color: #555;
|
||||
opacity: .5;
|
||||
transition: all .5s ease-out;
|
||||
|
||||
&--bottom {
|
||||
transform: rotate(-180deg);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
&__header {
|
||||
background: #000 url(../images/side-bg.gif) top/contain no-repeat;
|
||||
width: 100%;
|
||||
height: 239px;
|
||||
padding-top: 40px;
|
||||
}
|
||||
|
||||
&__logo {
|
||||
width: 66px;
|
||||
height: 66px;
|
||||
border: 4px solid hsla(0, 0%, 100%, .5);
|
||||
border-radius: 100%;
|
||||
box-shadow: inset 1px 1px 4px rgba(0, 0, 0, .3), 0 2px 3px rgba(0, 0, 0, .4);
|
||||
margin: 0 auto 20px;
|
||||
display: block;
|
||||
transition: transform .3s ease;
|
||||
|
||||
&:hover {
|
||||
transform: rotate3d(0, 0, 1, -45deg);
|
||||
}
|
||||
}
|
||||
|
||||
&__close {
|
||||
cursor: pointer;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
top: 10px;
|
||||
}
|
||||
|
||||
&__meta {
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
&__title {
|
||||
position: relative;
|
||||
|
||||
&:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 1px;
|
||||
background-color: #3b3b3b;
|
||||
}
|
||||
|
||||
span {
|
||||
position: absolute;
|
||||
top: -11px;
|
||||
left: 91px;
|
||||
z-index: 1;
|
||||
padding: 0 10px;
|
||||
background-color: #000;
|
||||
color: #b8b8b8;
|
||||
}
|
||||
}
|
||||
|
||||
&__nav {
|
||||
flex: 1;
|
||||
margin: 30px 0 20px;
|
||||
padding: 0;
|
||||
counter-reset: item;
|
||||
|
||||
li {
|
||||
height: 30px;
|
||||
display: flex;
|
||||
|
||||
&:after {
|
||||
padding-right: 20px;
|
||||
text-align: right;
|
||||
vertical-align: bottom;
|
||||
color: #B8B8B8;
|
||||
content: counter(item, lower-roman);
|
||||
counter-increment: item;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #989898;
|
||||
text-decoration: none;
|
||||
line-height: 1.4;
|
||||
padding: 0 10px 0 20px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
|
||||
&:after {
|
||||
display: inline-block;
|
||||
content: " .......................................................";
|
||||
color: rgba(255, 255, 255, 0.2);
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: #FFF;
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
float: left;
|
||||
height: 14px;
|
||||
width: 14px;
|
||||
margin: 3px 4px 0 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footer {
|
||||
@ -407,15 +456,16 @@ a {
|
||||
|
||||
.wrapper {
|
||||
position: relative;
|
||||
|
||||
&:after {
|
||||
background: url(../images/footer.png) no-repeat center center / cover;
|
||||
position: absolute;
|
||||
bottom: 88px;
|
||||
bottom: 65px;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
pointer-events: none;
|
||||
content: "";
|
||||
height: 300px;
|
||||
height: 315px;
|
||||
}
|
||||
}
|
||||
|
||||
@ -423,11 +473,13 @@ a {
|
||||
display: inline-block;
|
||||
animation: beating 1s infinite;
|
||||
animation-timing-function: ease-out;
|
||||
margin: 0 3px 5px 5px;
|
||||
margin: 0 3px 5px 8px;
|
||||
}
|
||||
|
||||
svg {
|
||||
margin: 0 5px;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
margin: 0 10px 5px;
|
||||
}
|
||||
|
||||
a {
|
||||
@ -441,79 +493,26 @@ a {
|
||||
}
|
||||
|
||||
.articles {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin: 0 -20px;
|
||||
width: 892px;
|
||||
margin: 40px auto;
|
||||
box-shadow: 8px 14px 38px rgba(39, 44, 49, .06), 1px 3px 8px rgba(39, 44, 49, .03);
|
||||
background-color: rgba(255, 255, 255, .9);
|
||||
border-radius: 5px;
|
||||
color: $gray;
|
||||
|
||||
.item {
|
||||
flex: 1 1 300px;
|
||||
overflow: hidden;
|
||||
margin: 0 20px 40px;
|
||||
min-height: 300px;
|
||||
border-radius: 5px;
|
||||
box-shadow: 8px 14px 38px rgba(39, 44, 49, .06), 1px 3px 8px rgba(39, 44, 49, .03);
|
||||
transition: all .3s ease;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background-color: #fff;
|
||||
|
||||
&--large {
|
||||
flex-direction: row;
|
||||
flex: 1 1 100%;
|
||||
|
||||
.item__cover {
|
||||
flex: 1;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.item__main {
|
||||
padding: 30px 40px;
|
||||
width: 357px;
|
||||
flex: unset;
|
||||
}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
box-shadow: 8px 28px 50px rgba(39, 44, 49, .07), 1px 6px 12px rgba(39, 44, 49, .04);
|
||||
transform: translate3D(0, -1px, 0) scale(1.02);
|
||||
}
|
||||
|
||||
&__cover {
|
||||
background-size: cover;
|
||||
background-position: center center;
|
||||
height: 200px;
|
||||
}
|
||||
|
||||
&__main {
|
||||
border-bottom: 1px solid #f0f2f7;
|
||||
margin-bottom: 25px;
|
||||
padding: 25px;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
&__tag {
|
||||
display: inline-block;
|
||||
margin-bottom: 4px;
|
||||
color: $gray;
|
||||
font-size: 12px;
|
||||
line-height: 14px;
|
||||
font-weight: 500;
|
||||
letter-spacing: .5px;
|
||||
text-transform: uppercase;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
color: rgba($gray, 0.8);
|
||||
}
|
||||
&:last-child {
|
||||
border-bottom-width: 0;
|
||||
}
|
||||
|
||||
&__title {
|
||||
margin-bottom: 10px;
|
||||
|
||||
a {
|
||||
color: $black;
|
||||
font-size: 18px;
|
||||
font-size: 24px;
|
||||
line-height: 24px;
|
||||
|
||||
&:hover {
|
||||
@ -530,9 +529,11 @@ a {
|
||||
}
|
||||
|
||||
&__abstract {
|
||||
display: block;
|
||||
line-height: 24px;
|
||||
color: $black;
|
||||
flex: 1;
|
||||
font-size: 16px;
|
||||
margin: 10px 0;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
@ -540,33 +541,24 @@ a {
|
||||
}
|
||||
}
|
||||
|
||||
&__meta {
|
||||
float: right;
|
||||
margin-top: 18px;
|
||||
&__tag {
|
||||
display: inline-block;
|
||||
color: $gray;
|
||||
line-height: 14px;
|
||||
font-weight: 500;
|
||||
letter-spacing: .5px;
|
||||
text-transform: uppercase;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
color: rgba($gray, 0.8);
|
||||
}
|
||||
}
|
||||
|
||||
&__avatar {
|
||||
margin-top: 10px;
|
||||
float: left;
|
||||
|
||||
img {
|
||||
height: 32px;
|
||||
width: 32px;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.pagination {
|
||||
text-align: center;
|
||||
margin-top: -70px;
|
||||
|
||||
&__item {
|
||||
width: 30px;
|
||||
|
@ -19,6 +19,8 @@
|
||||
-->
|
||||
<footer class="footer">
|
||||
<div class="wrapper">
|
||||
<#include "../../common-template/macro-user_site.ftl">
|
||||
<@userSite dir=""></@userSite> <br>
|
||||
© ${year}
|
||||
<a href="${servePath}">${blogTitle}</a>
|
||||
${footerContent}
|
||||
@ -28,12 +30,6 @@
|
||||
Theme <a rel="friend" href="https://github.com/b3log/solo-skins" target="_blank">${skinDirName}</a>
|
||||
<sup>[<a href="https://www.cnblogs.com/jajian" target="_blank">ref</a>]</sup>
|
||||
by <a href="http://vanessa.b3log.org" target="_blank">Vanessa</a> <br>
|
||||
<#include "../../common-template/macro-user_site.ftl">
|
||||
<@userSite dir=""></@userSite> <br>
|
||||
${statistic.statisticPublishedBlogArticleCount} ${articleLabel}
|
||||
${statistic.statisticPublishedBlogCommentCount} ${commentLabel}
|
||||
${statistic.statisticBlogViewCount} ${viewLabel}
|
||||
${onlineVisitorCnt} ${onlineVisitorLabel}
|
||||
</div>
|
||||
</footer>
|
||||
<svg class="side__top" version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
|
||||
|
@ -1,3 +1,20 @@
|
||||
/*
|
||||
* Solo - A small and beautiful blogging system written in Java.
|
||||
* Copyright (c) 2010-present, b3log.org
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
;(function ($) {
|
||||
$.fn.circleMagic = function (options) {
|
||||
|
||||
|
@ -70,7 +70,7 @@ var Skin = {
|
||||
$('.side__menu').click(function () {
|
||||
$('.side__main').addClass('side__main--show').show()
|
||||
})
|
||||
$('.side__bg').click(function () {
|
||||
$('.side__bg, .side__close').click(function () {
|
||||
$('.side__main').removeClass('side__main--show')
|
||||
setTimeout(function () {
|
||||
$('.side__main').hide()
|
||||
@ -99,6 +99,8 @@ var Skin = {
|
||||
}, 1000)
|
||||
}
|
||||
}, false)
|
||||
|
||||
$(window).scroll()
|
||||
},
|
||||
initArticle: function () {
|
||||
page.share()
|
||||
|
@ -44,19 +44,27 @@
|
||||
<div class="side__main">
|
||||
<div class="side__bg"></div>
|
||||
<div class="side__panel">
|
||||
<img src="${faviconURL}">
|
||||
<a href="${servePath}/tags.html" rel="section">
|
||||
${allTagsLabel}
|
||||
</a>
|
||||
•
|
||||
<a href="${servePath}/archives.html">
|
||||
${archiveLabel}
|
||||
</a>
|
||||
•
|
||||
<a rel="archive" href="${servePath}/links.html">
|
||||
${linkLabel}
|
||||
</a>
|
||||
<nav class="wrapper header__nav fn__clear">
|
||||
<svg class="side__close ft__a" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20"
|
||||
viewBox="0 0 20 20">
|
||||
<path d="M18.362 19.324c-0.902 0.902-2.363 0.902-3.263 0l-5.098-5.827-5.098 5.825c-0.902 0.902-2.363 0.902-3.263 0-0.902-0.902-0.902-2.363 0-3.263l5.304-6.057-5.306-6.061c-0.902-0.902-0.902-2.361 0-3.263s2.361-0.902 3.263 0l5.1 5.829 5.098-5.829c0.902-0.902 2.361-0.902 3.263 0s0.902 2.363 0 3.263l-5.304 6.061 5.304 6.057c0.902 0.902 0.902 2.363 0 3.265z"></path>
|
||||
</svg>
|
||||
|
||||
<div class="side__header">
|
||||
<a href="${servePath}" rel="start"><img class="side__logo" src="${faviconURL}"></a>
|
||||
|
||||
<div class="side__meta">
|
||||
${statistic.statisticPublishedBlogArticleCount} ${articleLabel} <br>
|
||||
${statistic.statisticPublishedBlogCommentCount} ${commentLabel} <br>
|
||||
${statistic.statisticBlogViewCount} ${viewLabel} <br>
|
||||
${onlineVisitorCnt} ${onlineVisitorLabel}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="side__title">
|
||||
<span>ღゝ◡╹)ノ❤️</span>
|
||||
</div>
|
||||
<ul class="side__nav">
|
||||
<li>
|
||||
<a href="${servePath}" rel="start">
|
||||
<#if type == 'article'>
|
||||
${blogTitle}
|
||||
@ -64,37 +72,53 @@
|
||||
${indexLabel}
|
||||
</#if>
|
||||
</a>
|
||||
|
||||
</li>
|
||||
<#list pageNavigations as page>
|
||||
<a class="fn__flex-inline" href="${page.pagePermalink}" target="${page.pageOpenTarget}" rel="section">
|
||||
<#if page.pageIcon != ''><img src="${page.pageIcon}"></#if> ${page.pageTitle}
|
||||
</a>
|
||||
<li>
|
||||
<a href="${page.pagePermalink}" target="${page.pageOpenTarget}"><#if page.pageIcon != ''><img
|
||||
class="page-icon" src="${page.pageIcon}"></#if>${page.pageTitle}</a>
|
||||
</li>
|
||||
</#list>
|
||||
|
||||
<a href="${servePath}/search">
|
||||
${searchLabel}
|
||||
</a>
|
||||
|
||||
<div class="fn__right">
|
||||
|
||||
<a rel="alternate" href="${servePath}/rss.xml">
|
||||
RSS
|
||||
</a>
|
||||
|
||||
<li>
|
||||
<a href="${servePath}/dynamic.html">${dynamicLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/category.html">${categoryLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/tags.html">${allTagsLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/archives.html">${archiveLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/links.html">${linkLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="alternate" href="${servePath}/rss.xml">RSS</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/search?keyword=">Search</a>
|
||||
</li>
|
||||
<#if isLoggedIn>
|
||||
<li>
|
||||
<a href="${servePath}/admin-index.do#main">
|
||||
${adminLabel}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${logoutURL}">
|
||||
${logoutLabel}
|
||||
</a>
|
||||
</li>
|
||||
<#else>
|
||||
<li>
|
||||
<a rel="alternate" href="${servePath}/start">
|
||||
${startToUseLabel}
|
||||
</a>
|
||||
</li>
|
||||
</#if>
|
||||
</div>
|
||||
</nav>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</#macro>
|
Loading…
x
Reference in New Issue
Block a user