优化图库
This commit is contained in:
parent
cbedb51b4a
commit
403db7849a
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" th:replace="~{modules/layouts/layout :: layout(content = ~{::content}, htmlType = 'page')}"
|
||||
xmlns:th="http://www.thymeleaf.org">
|
||||
xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<th:block th:fragment="content">
|
||||
|
||||
|
@ -13,28 +13,25 @@
|
|||
<main class="layout hide-aside" id="content-inner">
|
||||
<div id="page">
|
||||
<div id="album">
|
||||
<div class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${theme.config.photos.backgroundImg}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${theme.config.photos.smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${theme.config.photos.bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${theme.config.photos.detail}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<th:div th:replace="~{macro/author-content :: author-content(background = ${theme.config.photos.backgroundImg},
|
||||
smallTitle = ${theme.config.photos.smallTitle},
|
||||
bigTitle = ${theme.config.photos.bigTitle},
|
||||
detail = ${theme.config.photos.detail},
|
||||
buttonUrl = '',
|
||||
buttonTitle = '')}" />
|
||||
|
||||
<div class="card-album">
|
||||
<th:block th:each="photos : ${theme.config.photos.list}">
|
||||
<div class="card" th:onclick="go([[${photos.group_name}]])">
|
||||
<th:block th:each="group : ${photoFinder.groupBy()}">
|
||||
<div class="card" th:onclick="go([[${group.metadata.name}]])">
|
||||
<img class="card_cover entered loaded"
|
||||
th:src="${photos.url}">
|
||||
th:src="${group.spec.cover}">
|
||||
<div class="card__content">
|
||||
<p class="card__category" th:text="${photos.group_name}"></p>
|
||||
<h3 class="card__heading" th:text="${photos.group_description}"></h3>
|
||||
<p class="card__category" th:text="${group.spec.displayName}"></p>
|
||||
<h3 class="card__heading" th:text="${group.spec.description}"></h3>
|
||||
</div>
|
||||
</div>
|
||||
</th:block>
|
||||
<th:block th:each="photos : ${theme.config.photos.list}">
|
||||
<th:block th:each="photos : ${photoFinder.groupBy()}">
|
||||
<div class="album-content-nocover"></div>
|
||||
</th:block>
|
||||
</div>
|
||||
|
@ -156,7 +153,7 @@
|
|||
<footer th:replace="~{modules/footer :: footer}"></footer>
|
||||
<!-- 卡片顶部气泡效果 -->
|
||||
<script th:if="${theme.config.other.bubbleEnable}" async data-pjax
|
||||
th:src="${assets_link + '/libs/canvas/bubble.js'}"></script>
|
||||
th:src="${assets_link + '/libs/canvas/bubble.js'}"></script>
|
||||
</div>
|
||||
|
||||
</th:block>
|
||||
|
|
|
@ -12,16 +12,12 @@
|
|||
</header>
|
||||
<main class="layout hide-aside" id="content-inner">
|
||||
<div id="page">
|
||||
<div class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${theme.config.equipment.backgroundImg}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${theme.config.equipment.smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${theme.config.equipment.bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${theme.config.equipment.detail}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<th:div th:replace="~{macro/author-content :: author-content(background = ${theme.config.equipment.backgroundImg},
|
||||
smallTitle = ${theme.config.equipment.smallTitle},
|
||||
bigTitle = ${theme.config.equipment.bigTitle},
|
||||
detail = ${theme.config.equipment.detail},
|
||||
buttonUrl = '',
|
||||
buttonTitle = '')}" />
|
||||
<div id="equipment" th:if="${not #lists.isEmpty(theme.config.equipment.category_list)}"
|
||||
th:with="categoryList = ${theme.config.equipment.category_list}">
|
||||
<th:block th:each="category : ${categoryList}">
|
||||
|
|
|
@ -12,22 +12,12 @@
|
|||
</header>
|
||||
<main class="layout hide-aside" id="content-inner">
|
||||
<div id="page">
|
||||
<div class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${theme.config.fcircle.backgroundImg}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${theme.config.fcircle.smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${theme.config.fcircle.bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${theme.config.fcircle.detail}"></div>
|
||||
</div>
|
||||
<div class="banner-button-group">
|
||||
<a class="banner-button" th:href="${theme.config.fcircle.buttonUrl}">
|
||||
<i class="fas fa-circle-chevron-right"></i>
|
||||
<span class="banner-button-text" th:text="${theme.config.fcircle.buttonTitle}"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<th:div th:replace="~{macro/author-content :: author-content(background = ${theme.config.fcircle.backgroundImg},
|
||||
smallTitle = ${theme.config.fcircle.smallTitle},
|
||||
bigTitle = ${theme.config.fcircle.bigTitle},
|
||||
detail = ${theme.config.fcircle.detail},
|
||||
buttonUrl = ${theme.config.fcircle.buttonUrl},
|
||||
buttonTitle = ${theme.config.fcircle.buttonTitle})}" />
|
||||
<!--钓鱼-->
|
||||
<th:block th:if="${theme.config.fcircle.fcircleRandomFriendsEnable}" >
|
||||
<div class="title-h2-a">
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en" xmlns:th="http://www.thymeleaf.org">
|
||||
<th:div th:fragment="author-content(background, smallTitle, bigTitle, detail,buttonUrl,buttonTitle)"
|
||||
class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${background}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${detail}"></div>
|
||||
</div>
|
||||
<div class="banner-button-group" th:if="${not #strings.isEmpty(buttonUrl)}">
|
||||
<a class="banner-button" target="_blank" th:href="${buttonUrl}">
|
||||
<i class="fas fa-circle-chevron-right"></i>
|
||||
<span class="banner-button-text" th:text="${buttonTitle}"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</th:div>
|
||||
|
||||
</html>
|
|
@ -12,24 +12,12 @@
|
|||
</header>
|
||||
<main class="layout hide-aside" id="content-inner">
|
||||
<div id="page">
|
||||
<div class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${theme.config.moment.backgroundImg}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${theme.config.moment.smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${theme.config.moment.bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${theme.config.moment.detail}"></div>
|
||||
</div>
|
||||
<div class="banner-button-group">
|
||||
<a class="banner-button" th:href="${theme.config.moment.buttonUrl}">
|
||||
<i class="fas fa-circle-chevron-right"></i>
|
||||
<span class="banner-button-text" th:text="${theme.config.moment.buttonTitle}"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<canvas id="header_canvas" width="1216" height="1871"
|
||||
style="position: absolute; bottom: 0px;"></canvas>
|
||||
</div>
|
||||
<th:div th:replace="~{macro/author-content :: author-content(background = ${theme.config.moment.backgroundImg},
|
||||
smallTitle = ${theme.config.moment.smallTitle},
|
||||
bigTitle = ${theme.config.moment.bigTitle},
|
||||
detail = ${theme.config.moment.detail},
|
||||
buttonUrl = ${theme.config.moment.buttonUrl},
|
||||
buttonTitle = ${theme.config.moment.buttonTitle})}" />
|
||||
<div id="bber">
|
||||
<section class="timeline page-1">
|
||||
<ul class="list" id="waterfall">
|
||||
|
|
|
@ -11,31 +11,30 @@
|
|||
</header>
|
||||
<main class="layout hide-aside" id="content-inner">
|
||||
<div id="page">
|
||||
<div class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${theme.config.equipment.backgroundImg}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${theme.config.equipment.smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${theme.config.equipment.bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${theme.config.equipment.detail}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<th:block th:each="group : ${photoFinder.groupBy()}">
|
||||
|
||||
<th:block th:if="${#strings.equals(group.metadata.name, param.photo_group_name)}">
|
||||
<th:div th:replace="~{macro/author-content :: author-content(background = ${group.spec.background},
|
||||
smallTitle = '相册集',
|
||||
bigTitle = ${group.spec.displayName},
|
||||
detail = ${group.spec.description},
|
||||
buttonUrl = '',
|
||||
buttonTitle = '')}" />
|
||||
</th:block>
|
||||
|
||||
</th:block>
|
||||
|
||||
<div id="article-container">
|
||||
<section class="timeline page-1">
|
||||
<div class="type-gallery">
|
||||
<div class="gallery">
|
||||
<th:block th:each="group : ${groups}">
|
||||
<th:block
|
||||
th:if="${#strings.toString(group.spec.displayName)}==${#strings.toString(param.photo_group_name)}">
|
||||
<div class="fj-gallery-item" th:each="photo : ${group.photos}">
|
||||
<div class="tag-address">[[${photo.spec.displayName}]]</div>
|
||||
<img th:src="${photo.spec.url}" th:alt="${photo.spec.description}"
|
||||
th:title="${photo.spec.description}">
|
||||
<div class="fj-gallery-item"
|
||||
th:each="photo : ${photoFinder.listBy(param.photo_group_name)}">
|
||||
<div class="tag-address">[[${photo.spec.displayName}]]</div>
|
||||
<img th:src="${photo.spec.url}" th:alt="${photo.spec.description}"
|
||||
th:title="${photo.spec.description}">
|
||||
|
||||
</div>
|
||||
</th:block>
|
||||
</th:block>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
@ -12,16 +12,12 @@
|
|||
</header>
|
||||
<main class="layout hide-aside" id="content-inner">
|
||||
<div id="page">
|
||||
<div class="author-content author-content-item essayPage single"
|
||||
th:style="'background:url('+${theme.config.todo.backgroundImg}+') left 28% / cover no-repeat !important;'">
|
||||
<div class="card-content">
|
||||
<div class="author-content-item-tips" th:text="${theme.config.todo.smallTitle}"></div>
|
||||
<span class="author-content-item-title" th:text="${theme.config.todo.bigTitle}"></span>
|
||||
<div class="content-bottom">
|
||||
<div class="tips" th:text="${theme.config.todo.detail}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<th:div th:replace="~{macro/author-content :: author-content(background = ${theme.config.todo.backgroundImg},
|
||||
smallTitle = ${theme.config.todo.smallTitle},
|
||||
bigTitle = ${theme.config.todo.bigTitle},
|
||||
detail = ${theme.config.todo.detail},
|
||||
buttonUrl = '',
|
||||
buttonTitle = '')}" />
|
||||
<div id="todolist-main" th:if="${not #lists.isEmpty(theme.config.todo.list)}"
|
||||
th:with="todoList = ${theme.config.todo.list}">
|
||||
|
||||
|
|
Loading…
Reference in New Issue