");return c.inlineElement=f,f}return b.updateStatus("ready"),b._parseMarkup(d,{},c),d}}});var H,I="ajax",J=function(){H&&a(document.body).removeClass(H)},K=function(){J(),b.req&&b.req.abort()};a.magnificPopup.registerModule(I,{options:{settings:null,cursor:"mfp-ajax-cur",tError:'
The content could not be loaded.'},proto:{initAjax:function(){b.types.push(I),H=b.st.ajax.cursor,w(h+"."+I,K),w("BeforeChange."+I,K)},getAjax:function(c){H&&a(document.body).addClass(H),b.updateStatus("loading");var d=a.extend({url:c.src,success:function(d,e,f){var g={data:d,xhr:f};y("ParseAjax",g),b.appendContent(a(g.data),I),c.finished=!0,J(),b._setFocus(),setTimeout(function(){b.wrap.addClass(q)},16),b.updateStatus("ready"),y("AjaxContentAdded")},error:function(){J(),c.finished=c.loadError=!0,b.updateStatus("error",b.st.ajax.tError.replace("%url%",c.src))}},b.st.ajax.settings);return b.req=a.ajax(d),""}}});var L,M=function(c){if(c.data&&void 0!==c.data.title)return c.data.title;var d=b.st.image.titleSrc;if(d){if(a.isFunction(d))return d.call(b,c);if(c.el)return c.el.attr(d)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'
',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'
The image could not be loaded.'},proto:{initImage:function(){var c=b.st.image,d=".image";b.types.push("image"),w(m+d,function(){"image"===b.currItem.type&&c.cursor&&a(document.body).addClass(c.cursor)}),w(h+d,function(){c.cursor&&a(document.body).removeClass(c.cursor),v.off("resize"+p)}),w("Resize"+d,b.resizeImage),b.isLowIE&&w("AfterChange",b.resizeImage)},resizeImage:function(){var a=b.currItem;if(a&&a.img&&b.st.image.verticalFit){var c=0;b.isLowIE&&(c=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",b.wH-c)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,L&&clearInterval(L),a.isCheckingImgSize=!1,y("ImageHasSize",a),a.imgHidden&&(b.content&&b.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var c=0,d=a.img[0],e=function(f){L&&clearInterval(L),L=setInterval(function(){return d.naturalWidth>0?void b._onImageHasSize(a):(c>200&&clearInterval(L),c++,void(3===c?e(10):40===c?e(50):100===c&&e(500)))},f)};e(1)},getImage:function(c,d){var e=0,f=function(){c&&(c.img[0].complete?(c.img.off(".mfploader"),c===b.currItem&&(b._onImageHasSize(c),b.updateStatus("ready")),c.hasSize=!0,c.loaded=!0,y("ImageLoadComplete")):(e++,200>e?setTimeout(f,100):g()))},g=function(){c&&(c.img.off(".mfploader"),c===b.currItem&&(b._onImageHasSize(c),b.updateStatus("error",h.tError.replace("%url%",c.src))),c.hasSize=!0,c.loaded=!0,c.loadError=!0)},h=b.st.image,i=d.find(".mfp-img");if(i.length){var j=document.createElement("img");j.className="mfp-img",c.el&&c.el.find("img").length&&(j.alt=c.el.find("img").attr("alt")),c.img=a(j).on("load.mfploader",f).on("error.mfploader",g),j.src=c.src,i.is("img")&&(c.img=c.img.clone()),j=c.img[0],j.naturalWidth>0?c.hasSize=!0:j.width||(c.hasSize=!1)}return b._parseMarkup(d,{title:M(c),img_replaceWith:c.img},c),b.resizeImage(),c.hasSize?(L&&clearInterval(L),c.loadError?(d.addClass("mfp-loading"),b.updateStatus("error",h.tError.replace("%url%",c.src))):(d.removeClass("mfp-loading"),b.updateStatus("ready")),d):(b.updateStatus("loading"),c.loading=!0,c.hasSize||(c.imgHidden=!0,d.addClass("mfp-loading"),b.findImageSize(c)),d)}}});var N,O=function(){return void 0===N&&(N=void 0!==document.createElement("p").style.MozTransform),N};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a,c=b.st.zoom,d=".zoom";if(c.enabled&&b.supportsTransition){var e,f,g=c.duration,j=function(a){var b=a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+c.duration/1e3+"s "+c.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,b.css(e),b},k=function(){b.content.css("visibility","visible")};w("BuildControls"+d,function(){if(b._allowZoom()){if(clearTimeout(e),b.content.css("visibility","hidden"),a=b._getItemToZoom(),!a)return void k();f=j(a),f.css(b._getOffset()),b.wrap.append(f),e=setTimeout(function(){f.css(b._getOffset(!0)),e=setTimeout(function(){k(),setTimeout(function(){f.remove(),a=f=null,y("ZoomAnimationEnded")},16)},g)},16)}}),w(i+d,function(){if(b._allowZoom()){if(clearTimeout(e),b.st.removalDelay=g,!a){if(a=b._getItemToZoom(),!a)return;f=j(a)}f.css(b._getOffset(!0)),b.wrap.append(f),b.content.css("visibility","hidden"),setTimeout(function(){f.css(b._getOffset())},16)}}),w(h+d,function(){b._allowZoom()&&(k(),f&&f.remove(),a=null)})}},_allowZoom:function(){return"image"===b.currItem.type},_getItemToZoom:function(){return b.currItem.hasSize?b.currItem.img:!1},_getOffset:function(c){var d;d=c?b.currItem.img:b.st.zoom.opener(b.currItem.el||b.currItem);var e=d.offset(),f=parseInt(d.css("padding-top"),10),g=parseInt(d.css("padding-bottom"),10);e.top-=a(window).scrollTop()-f;var h={width:d.width(),height:(u?d.innerHeight():d[0].offsetHeight)-g-f};return O()?h["-moz-transform"]=h.transform="translate("+e.left+"px,"+e.top+"px)":(h.left=e.left,h.top=e.top),h}}});var P="iframe",Q="//about:blank",R=function(a){if(b.currTemplate[P]){var c=b.currTemplate[P].find("iframe");c.length&&(a||(c[0].src=Q),b.isIE8&&c.css("display",a?"block":"none"))}};a.magnificPopup.registerModule(P,{options:{markup:'
',srcAction:"iframe_src",patterns:{youtube:{index:"youtube.com",id:"v=",src:"//www.youtube.com/embed/%id%?autoplay=1"},vimeo:{index:"vimeo.com/",id:"/",src:"//player.vimeo.com/video/%id%?autoplay=1"},gmaps:{index:"//maps.google.",src:"%id%&output=embed"}}},proto:{initIframe:function(){b.types.push(P),w("BeforeChange",function(a,b,c){b!==c&&(b===P?R():c===P&&R(!0))}),w(h+"."+P,function(){R()})},getIframe:function(c,d){var e=c.src,f=b.st.iframe;a.each(f.patterns,function(){return e.indexOf(this.index)>-1?(this.id&&(e="string"==typeof this.id?e.substr(e.lastIndexOf(this.id)+this.id.length,e.length):this.id.call(this,e)),e=this.src.replace("%id%",e),!1):void 0});var g={};return f.srcAction&&(g[f.srcAction]=e),b._parseMarkup(d,g,c),b.updateStatus("ready"),d}}});var S=function(a){var c=b.items.length;return a>c-1?a-c:0>a?c+a:a},T=function(a,b,c){return a.replace(/%curr%/gi,b+1).replace(/%total%/gi,c)};a.magnificPopup.registerModule("gallery",{options:{enabled:!1,arrowMarkup:'
',preload:[0,2],navigateByImgClick:!0,arrows:!0,tPrev:"Previous (Left arrow key)",tNext:"Next (Right arrow key)",tCounter:"%curr% of %total%"},proto:{initGallery:function(){var c=b.st.gallery,e=".mfp-gallery";return b.direction=!0,c&&c.enabled?(f+=" mfp-gallery",w(m+e,function(){c.navigateByImgClick&&b.wrap.on("click"+e,".mfp-img",function(){return b.items.length>1?(b.next(),!1):void 0}),d.on("keydown"+e,function(a){37===a.keyCode?b.prev():39===a.keyCode&&b.next()})}),w("UpdateStatus"+e,function(a,c){c.text&&(c.text=T(c.text,b.currItem.index,b.items.length))}),w(l+e,function(a,d,e,f){var g=b.items.length;e.counter=g>1?T(c.tCounter,f.index,g):""}),w("BuildControls"+e,function(){if(b.items.length>1&&c.arrows&&!b.arrowLeft){var d=c.arrowMarkup,e=b.arrowLeft=a(d.replace(/%title%/gi,c.tPrev).replace(/%dir%/gi,"left")).addClass(s),f=b.arrowRight=a(d.replace(/%title%/gi,c.tNext).replace(/%dir%/gi,"right")).addClass(s);e.click(function(){b.prev()}),f.click(function(){b.next()}),b.container.append(e.add(f))}}),w(n+e,function(){b._preloadTimeout&&clearTimeout(b._preloadTimeout),b._preloadTimeout=setTimeout(function(){b.preloadNearbyImages(),b._preloadTimeout=null},16)}),void w(h+e,function(){d.off(e),b.wrap.off("click"+e),b.arrowRight=b.arrowLeft=null})):!1},next:function(){b.direction=!0,b.index=S(b.index+1),b.updateItemHTML()},prev:function(){b.direction=!1,b.index=S(b.index-1),b.updateItemHTML()},goTo:function(a){b.direction=a>=b.index,b.index=a,b.updateItemHTML()},preloadNearbyImages:function(){var a,c=b.st.gallery.preload,d=Math.min(c[0],b.items.length),e=Math.min(c[1],b.items.length);for(a=1;a<=(b.direction?e:d);a++)b._preloadItem(b.index+a);for(a=1;a<=(b.direction?d:e);a++)b._preloadItem(b.index-a)},_preloadItem:function(c){if(c=S(c),!b.items[c].preloaded){var d=b.items[c];d.parsed||(d=b.parseEl(c)),y("LazyLoad",d),"image"===d.type&&(d.img=a('
![]()
').on("load.mfploader",function(){d.hasSize=!0}).on("error.mfploader",function(){d.hasSize=!0,d.loadError=!0,y("LazyLoadError",d)}).attr("src",d.src)),d.preloaded=!0}}}});var U="retina";a.magnificPopup.registerModule(U,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=b.st.retina,c=a.ratio;c=isNaN(c)?c():c,c>1&&(w("ImageHasSize."+U,function(a,b){b.img.css({"max-width":b.img[0].naturalWidth/c,width:"100%"})}),w("ElementParse."+U,function(b,d){d.src=a.replaceSrc(d,c)}))}}}}),A()});
--------------------------------------------------------------------------------
/plugins/magnific-popup/magnific-popup.css:
--------------------------------------------------------------------------------
1 | /* Magnific Popup CSS */
2 | .mfp-bg {
3 | top: 0;
4 | left: 0;
5 | width: 100%;
6 | height: 100%;
7 | z-index: 1042;
8 | overflow: hidden;
9 | position: fixed;
10 | background: #0b0b0b;
11 | opacity: 0.8; }
12 |
13 | .mfp-wrap {
14 | top: 0;
15 | left: 0;
16 | width: 100%;
17 | height: 100%;
18 | z-index: 1043;
19 | position: fixed;
20 | outline: none !important;
21 | -webkit-backface-visibility: hidden; }
22 |
23 | .mfp-container {
24 | text-align: center;
25 | position: absolute;
26 | width: 100%;
27 | height: 100%;
28 | left: 0;
29 | top: 0;
30 | padding: 0 8px;
31 | box-sizing: border-box; }
32 |
33 | .mfp-container:before {
34 | content: '';
35 | display: inline-block;
36 | height: 100%;
37 | vertical-align: middle; }
38 |
39 | .mfp-align-top .mfp-container:before {
40 | display: none; }
41 |
42 | .mfp-content {
43 | position: relative;
44 | display: inline-block;
45 | vertical-align: middle;
46 | margin: 0 auto;
47 | text-align: left;
48 | z-index: 1045; }
49 |
50 | .mfp-inline-holder .mfp-content,
51 | .mfp-ajax-holder .mfp-content {
52 | width: 100%;
53 | cursor: auto; }
54 |
55 | .mfp-ajax-cur {
56 | cursor: progress; }
57 |
58 | .mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
59 | cursor: -moz-zoom-out;
60 | cursor: -webkit-zoom-out;
61 | cursor: zoom-out; }
62 |
63 | .mfp-zoom {
64 | cursor: pointer;
65 | cursor: -webkit-zoom-in;
66 | cursor: -moz-zoom-in;
67 | cursor: zoom-in; }
68 |
69 | .mfp-auto-cursor .mfp-content {
70 | cursor: auto; }
71 |
72 | .mfp-close,
73 | .mfp-arrow,
74 | .mfp-preloader,
75 | .mfp-counter {
76 | -webkit-user-select: none;
77 | -moz-user-select: none;
78 | user-select: none; }
79 |
80 | .mfp-loading.mfp-figure {
81 | display: none; }
82 |
83 | .mfp-hide {
84 | display: none !important; }
85 |
86 | .mfp-preloader {
87 | color: #CCC;
88 | position: absolute;
89 | top: 50%;
90 | width: auto;
91 | text-align: center;
92 | margin-top: -0.8em;
93 | left: 8px;
94 | right: 8px;
95 | z-index: 1044; }
96 | .mfp-preloader a {
97 | color: #CCC; }
98 | .mfp-preloader a:hover {
99 | color: #FFF; }
100 |
101 | .mfp-s-ready .mfp-preloader {
102 | display: none; }
103 |
104 | .mfp-s-error .mfp-content {
105 | display: none; }
106 |
107 | button.mfp-close,
108 | button.mfp-arrow {
109 | overflow: visible;
110 | cursor: pointer;
111 | background: transparent;
112 | border: 0;
113 | -webkit-appearance: none;
114 | display: block;
115 | outline: none;
116 | padding: 0;
117 | z-index: 1046;
118 | box-shadow: none;
119 | touch-action: manipulation; }
120 |
121 | button::-moz-focus-inner {
122 | padding: 0;
123 | border: 0; }
124 |
125 | .mfp-close {
126 | width: 44px;
127 | height: 44px;
128 | line-height: 44px;
129 | position: absolute;
130 | right: 0;
131 | top: 0;
132 | text-decoration: none;
133 | text-align: center;
134 | opacity: 0.65;
135 | padding: 0 0 18px 10px;
136 | color: #FFF;
137 | font-style: normal;
138 | font-size: 28px;
139 | font-family: Arial, Baskerville, monospace; }
140 | .mfp-close:hover,
141 | .mfp-close:focus {
142 | opacity: 1; }
143 | .mfp-close:active {
144 | top: 1px; }
145 |
146 | .mfp-close-btn-in .mfp-close {
147 | color: #333; }
148 |
149 | .mfp-image-holder .mfp-close,
150 | .mfp-iframe-holder .mfp-close {
151 | color: #FFF;
152 | right: -6px;
153 | text-align: right;
154 | padding-right: 6px;
155 | width: 100%; }
156 |
157 | .mfp-counter {
158 | position: absolute;
159 | top: 0;
160 | right: 0;
161 | color: #CCC;
162 | font-size: 12px;
163 | line-height: 18px;
164 | white-space: nowrap; }
165 |
166 | .mfp-arrow {
167 | position: absolute;
168 | opacity: 0.65;
169 | margin: 0;
170 | top: 50%;
171 | margin-top: -55px;
172 | padding: 0;
173 | width: 90px;
174 | height: 110px;
175 | -webkit-tap-highlight-color: transparent; }
176 | .mfp-arrow:active {
177 | margin-top: -54px; }
178 | .mfp-arrow:hover,
179 | .mfp-arrow:focus {
180 | opacity: 1; }
181 | .mfp-arrow:before,
182 | .mfp-arrow:after {
183 | content: '';
184 | display: block;
185 | width: 0;
186 | height: 0;
187 | position: absolute;
188 | left: 0;
189 | top: 0;
190 | margin-top: 35px;
191 | margin-left: 35px;
192 | border: medium inset transparent; }
193 | .mfp-arrow:after {
194 | border-top-width: 13px;
195 | border-bottom-width: 13px;
196 | top: 8px; }
197 | .mfp-arrow:before {
198 | border-top-width: 21px;
199 | border-bottom-width: 21px;
200 | opacity: 0.7; }
201 |
202 | .mfp-arrow-left {
203 | left: 0; }
204 | .mfp-arrow-left:after {
205 | border-right: 17px solid #FFF;
206 | margin-left: 31px; }
207 | .mfp-arrow-left:before {
208 | margin-left: 25px;
209 | border-right: 27px solid #3F3F3F; }
210 |
211 | .mfp-arrow-right {
212 | right: 0; }
213 | .mfp-arrow-right:after {
214 | border-left: 17px solid #FFF;
215 | margin-left: 39px; }
216 | .mfp-arrow-right:before {
217 | border-left: 27px solid #3F3F3F; }
218 |
219 | .mfp-iframe-holder {
220 | padding-top: 40px;
221 | padding-bottom: 40px; }
222 | .mfp-iframe-holder .mfp-content {
223 | line-height: 0;
224 | width: 100%;
225 | max-width: 900px; }
226 | .mfp-iframe-holder .mfp-close {
227 | top: -40px; }
228 |
229 | .mfp-iframe-scaler {
230 | width: 100%;
231 | height: 0;
232 | overflow: hidden;
233 | padding-top: 56.25%; }
234 | .mfp-iframe-scaler iframe {
235 | position: absolute;
236 | display: block;
237 | top: 0;
238 | left: 0;
239 | width: 100%;
240 | height: 100%;
241 | box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
242 | background: #000; }
243 |
244 | /* Main image in popup */
245 | img.mfp-img {
246 | width: auto;
247 | max-width: 100%;
248 | height: auto;
249 | display: block;
250 | line-height: 0;
251 | box-sizing: border-box;
252 | padding: 40px 0 40px;
253 | margin: 0 auto; }
254 |
255 | /* The shadow behind the image */
256 | .mfp-figure {
257 | line-height: 0; }
258 | .mfp-figure:after {
259 | content: '';
260 | position: absolute;
261 | left: 0;
262 | top: 40px;
263 | bottom: 40px;
264 | display: block;
265 | right: 0;
266 | width: auto;
267 | height: auto;
268 | z-index: -1;
269 | box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
270 | background: #444; }
271 | .mfp-figure small {
272 | color: #BDBDBD;
273 | display: block;
274 | font-size: 12px;
275 | line-height: 14px; }
276 | .mfp-figure figure {
277 | margin: 0; }
278 |
279 | .mfp-bottom-bar {
280 | margin-top: -36px;
281 | position: absolute;
282 | top: 100%;
283 | left: 0;
284 | width: 100%;
285 | cursor: auto; }
286 |
287 | .mfp-title {
288 | text-align: left;
289 | line-height: 18px;
290 | color: #F3F3F3;
291 | word-wrap: break-word;
292 | padding-right: 36px; }
293 |
294 | .mfp-image-holder .mfp-content {
295 | max-width: 100%; }
296 |
297 | .mfp-gallery .mfp-image-holder .mfp-figure {
298 | cursor: pointer; }
299 |
300 | @media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
301 | /**
302 | * Remove all paddings around the image on small screen
303 | */
304 | .mfp-img-mobile .mfp-image-holder {
305 | padding-left: 0;
306 | padding-right: 0; }
307 | .mfp-img-mobile img.mfp-img {
308 | padding: 0; }
309 | .mfp-img-mobile .mfp-figure:after {
310 | top: 0;
311 | bottom: 0; }
312 | .mfp-img-mobile .mfp-figure small {
313 | display: inline;
314 | margin-left: 5px; }
315 | .mfp-img-mobile .mfp-bottom-bar {
316 | background: rgba(0, 0, 0, 0.6);
317 | bottom: 0;
318 | margin: 0;
319 | top: auto;
320 | padding: 3px 5px;
321 | position: fixed;
322 | box-sizing: border-box; }
323 | .mfp-img-mobile .mfp-bottom-bar:empty {
324 | padding: 0; }
325 | .mfp-img-mobile .mfp-counter {
326 | right: 5px;
327 | top: 3px; }
328 | .mfp-img-mobile .mfp-close {
329 | top: 0;
330 | right: 0;
331 | width: 35px;
332 | height: 35px;
333 | line-height: 35px;
334 | background: rgba(0, 0, 0, 0.6);
335 | position: fixed;
336 | text-align: center;
337 | padding: 0; } }
338 |
339 | @media all and (max-width: 900px) {
340 | .mfp-arrow {
341 | -webkit-transform: scale(0.75);
342 | transform: scale(0.75); }
343 | .mfp-arrow-left {
344 | -webkit-transform-origin: 0;
345 | transform-origin: 0; }
346 | .mfp-arrow-right {
347 | -webkit-transform-origin: 100%;
348 | transform-origin: 100%; }
349 | .mfp-container {
350 | padding-left: 6px;
351 | padding-right: 6px; } }
352 |
--------------------------------------------------------------------------------
/plugins/vue-append.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import VueAppend from 'vue-append'
3 | Vue.use(VueAppend)
4 |
--------------------------------------------------------------------------------
/plugins/vue-markdown.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import mavonEditor from 'mavon-editor'
3 | Vue.use(mavonEditor)
4 |
--------------------------------------------------------------------------------
/static/css/custom.css:
--------------------------------------------------------------------------------
1 | /*==================================================================================
2 | Custom Stylesheet (Any custom styling you want to apply should be defined here).
3 | ====================================================================================*/
4 |
5 | /* 霓虹灯标题 */
6 |
7 | .navbar-brand {
8 | height: 54px;
9 | line-height: 24px;
10 | font-size: 28px;
11 | opacity: 1;
12 | background-color: rgba(0, 0, 0, 0);
13 | text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 15px #fff, 0 0 20px #228DFF, 0 0 35px #228DFF, 0 0 40px #228DFF, 0 0 50px #228DFF, 0 0 75px #228DFF;
14 | }
15 |
16 | /* 动态背景图 */
17 |
18 | @-webkit-keyframes imageAnimation {
19 | 0% {
20 | opacity: 0;
21 | -webkit-animation-timing-function: ease-in
22 | }
23 | 8% {
24 | opacity: 1;
25 | -webkit-transform: scale(1.05);
26 | -webkit-animation-timing-function: ease-out
27 | }
28 | 17% {
29 | opacity: 1;
30 | -webkit-transform: scale(1.1) rotate(0deg)
31 | }
32 | 25% {
33 | opacity: 0;
34 | -webkit-transform: scale(1.1) rotate(0deg)
35 | }
36 | 100% {
37 | opacity: 0
38 | }
39 | }
40 |
41 | @-moz-keyframes imageAnimation {
42 | 0% {
43 | opacity: 0;
44 | -moz-animation-timing-function: ease-in
45 | }
46 | 8% {
47 | opacity: 1;
48 | -moz-transform: scale(1.05);
49 | -moz-animation-timing-function: ease-out
50 | }
51 | 17% {
52 | opacity: 1;
53 | -moz-transform: scale(1.1) rotate(0deg)
54 | }
55 | 25% {
56 | opacity: 0;
57 | -moz-transform: scale(1.1) rotate(0deg)
58 | }
59 | 100% {
60 | opacity: 0
61 | }
62 | }
63 |
64 | @-o-keyframes imageAnimation {
65 | 0% {
66 | opacity: 0;
67 | -o-animation-timing-function: ease-in
68 | }
69 | 8% {
70 | opacity: 1;
71 | -o-transform: scale(1.05);
72 | -o-animation-timing-function: ease-out
73 | }
74 | 17% {
75 | opacity: 1;
76 | -o-transform: scale(1.1) rotate(0deg)
77 | }
78 | 25% {
79 | opacity: 0;
80 | -o-transform: scale(1.1) rotate(0deg)
81 | }
82 | 100% {
83 | opacity: 0
84 | }
85 | }
86 |
87 | @-ms-keyframes imageAnimation {
88 | 0% {
89 | opacity: 0;
90 | -ms-animation-timing-function: ease-in
91 | }
92 | 8% {
93 | opacity: 1;
94 | -ms-transform: scale(1.05);
95 | -ms-animation-timing-function: ease-out
96 | }
97 | 17% {
98 | opacity: 1;
99 | -ms-transform: scale(1.1) rotate(0deg)
100 | }
101 | 25% {
102 | opacity: 0;
103 | -ms-transform: scale(1.1) rotate(0deg)
104 | }
105 | 100% {
106 | opacity: 0
107 | }
108 | }
109 |
110 | @keyframes imageAnimation {
111 | 0% {
112 | opacity: 0;
113 | animation-timing-function: ease-in
114 | }
115 | 8% {
116 | opacity: 1;
117 | transform: scale(1.05);
118 | animation-timing-function: ease-out
119 | }
120 | 17% {
121 | opacity: 1;
122 | transform: scale(1.1) rotate(0deg)
123 | }
124 | 25% {
125 | opacity: 0;
126 | transform: scale(1.1) rotate(0deg)
127 | }
128 | 100% {
129 | opacity: 0
130 | }
131 | }
132 |
133 | .cb-slideshow, .cb-slideshow:after {
134 | position: fixed;
135 | width: 100%;
136 | height: 100%;
137 | top: 0;
138 | left: 0;
139 | z-index: -2
140 | }
141 |
142 | .cb-slideshow:after {
143 | content: ''
144 | }
145 |
146 | .cb-slideshow li span {
147 | width: 100%;
148 | height: 100%;
149 | position: absolute;
150 | top: 0;
151 | left: 0;
152 | color: transparent;
153 | background-size: cover;
154 | background-position: 50% 50%;
155 | opacity: 0;
156 | z-index: -2;
157 | }
158 |
159 | /* 动态背景图结束 */
160 |
161 | /*圆润*/
162 |
163 | .panel {
164 | border-radius: 4px;
165 | background-color: #ffffff;
166 | box-shadow: 0 0 5px #ffffff;
167 | -webkit-box-shadow: 0 0 5px #ffffff;
168 | -moz-box-shadow: 0 0 5px #ffffff;
169 | -o-box-shadow: 0 0 5px #ffffff;
170 | border: none;
171 | }
172 |
173 | .empty-padding {
174 | background-clip: content-box;
175 | padding-bottom: 15px;
176 | padding-top: 15px;
177 | }
178 |
179 | .panel:hover {
180 | box-shadow: 0 0 50px black;
181 | -webkit-box-shadow: 0 0 50px black;
182 | -moz-box-shadow: 0 0 50px black;
183 | -o-box-shadow: 0 0 50px black
184 | }
185 |
186 | /*圆润结束*/
187 |
188 | /* 半透明 */
189 | .transparent-part {
190 | background-color: rgba(255, 255, 255, 0.41) !important;
191 | }
192 | .transparent-part:hover {
193 | background-color: rgba(255, 255, 255, 0.6) !important;
194 | }
195 | /* 半透明结束 */
196 |
197 | /* 文章作者赘述 */
198 |
199 | .author-box {
200 | width: 100%;
201 | }
202 |
203 | .author-box ul {
204 | display: flex;
205 | flex-direction: row;
206 | justify-content: center;
207 | }
208 |
209 | /* 文章作者赘述结束 */
210 |
211 |
212 | /*文章版权声明*/
213 | .declare {
214 | background-color: #eaeaea;
215 | margin-top: 2em;
216 | border-left: 3px solid rgb(0, 191, 255);;
217 | padding: 0.5em 1em;
218 | border-radius: 10px;
219 | }
220 |
221 | .declare a {
222 | display: inline-block;
223 | position: relative;
224 | color: #0087ca;
225 | font-family: lucida console, serif;
226 | }
227 |
228 | /*文章版权声明结束*/
229 |
230 | /*上下文章导航*/
231 | .previous-next-links {
232 | line-height: 24px;
233 | overflow: hidden;
234 | padding: 10px 20px;
235 | font-size: 15px;
236 | background-color: rgba(217, 237, 247, 0.8);
237 | box-sizing: border-box;
238 | border-radius: 5px;
239 | }
240 |
241 | .previous-next-links a {
242 | color: #3f51b5;
243 | }
244 |
245 | .previous-design-link {
246 | float: left;
247 | }
248 |
249 | .next-design-link {
250 | float: right;
251 | }
252 |
253 | /*上下文章导航结束*/
254 |
--------------------------------------------------------------------------------
/static/css/list-item.css:
--------------------------------------------------------------------------------
1 | * {
2 | margin: 0;
3 | padding: 0;
4 | box-sizing: border-box;
5 | outline: none;
6 | -webkit-tap-highlight-color: transparent;
7 | }
8 |
9 | .meta .items div {
10 | display: block;
11 | }
12 |
13 | .header h1 {
14 | font-size: 50px;
15 | }
16 |
17 | @media screen and (min-width: 1200px) {
18 | .list-item .thumbnail {
19 | width: 185px;
20 | height: 125px;
21 | }
22 | }
23 |
24 | .content-list li {
25 | list-style: none;
26 | }
27 |
28 | .meta .items .a {
29 | text-decoration: none;
30 | }
31 |
32 | .content-list ul ul {
33 | list-style-type: circle;
34 | margin-block-start: 0;
35 | margin-block-end: 0;
36 | }
37 |
38 | .content-list ul {
39 | display: block;
40 | list-style-type: disc;
41 | margin-block-start: 1em;
42 | margin-block-end: 1em;
43 | margin-inline-start: 0;
44 | margin-inline-end: 0;
45 | padding-inline-start: 1px;
46 | }
47 |
48 | .list-item {
49 | display: flex;
50 | position: relative;
51 | width: 100%;
52 | border-bottom: 1px solid #4bb6ff14;
53 | padding: 17px 17px 17px 17px;
54 | border-radius: 8px;
55 | box-shadow: 0 0 20px -5px rgb(248 255 186);
56 | margin-top: 15px;
57 | background-color: #fff;
58 | }
59 |
60 | .list-item .thumbnail {
61 | flex-shrink: 0;
62 | position: relative;
63 | margin-right: 15px;
64 | overflow: hidden;
65 | }
66 |
67 | .list-item .thumbnail img {
68 | width: 210px;
69 | height: 140px;
70 | -o-object-fit: cover;
71 | object-fit: cover;
72 | border-radius: 4px;
73 | transition: opacity 0.35s;
74 | }
75 |
76 | .list-item .thumbnail .flash-bar {
77 | position: absolute;
78 | left:-100px;
79 | width: 20px;
80 | height: 100%;
81 | background: #fff;
82 | opacity: 0.5;
83 | transform: skewX(-30deg);
84 | transform-origin: 0 100%;
85 | }
86 |
87 | .list-item:hover .flash-bar {
88 | left: 100%;
89 | transition: left ease-in-out 1s;
90 | }
91 |
92 | .list-item .thumbnail svg {
93 | position: absolute;
94 | z-index: 1;
95 | top: 5px;
96 | left: 5px;
97 | width: 20px;
98 | height: 20px;
99 | fill: #fff;
100 | }
101 |
102 | .list-item .information .title .badge {
103 | height: 20px;
104 | line-height: 20px;
105 | font-size: 12px;
106 | margin-right: 5px;
107 | border-radius: 2px;
108 | padding: 0 8px;
109 | white-space: nowrap;
110 | vertical-align: 2px;
111 | }
112 |
113 | .information {
114 | display: flex;
115 | flex-direction: column;
116 | flex: 1;
117 | min-width: 0;
118 | }
119 |
120 | .information .abstract {
121 | margin-bottom: 10px;
122 | display: -webkit-box;
123 | -webkit-line-clamp: 2;
124 | -webkit-box-orient: vertical;
125 | overflow: hidden;
126 | text-overflow: ellipsis;
127 | word-break: break-word;
128 | color: #000;
129 | line-height: 24px;
130 | max-height: 48px;
131 | transition: color 0.35s;
132 | text-decoration: none;
133 | font-size: 14px;
134 | }
135 |
136 | .list-item .information .title {
137 | margin-bottom: 10px;
138 | display: -webkit-box;
139 | -webkit-line-clamp: 2;
140 | -webkit-box-orient: vertical;
141 | overflow: hidden;
142 | text-overflow: ellipsis;
143 | word-break: break-word;
144 | color: #000;
145 | font-size: 18px;
146 | line-height: 24px;
147 | max-height: 48px;
148 | transition: color 0.35s;
149 | }
150 |
151 | .list-item .thumbnail time {
152 | position: absolute;
153 | z-index: 1;
154 | top: 5px;
155 | right: 5px;
156 | background: #3faeff;
157 | height: 20px;
158 | line-height: 20px;
159 | padding: 0 8px;
160 | color: #fff;
161 | font-size: 12px;
162 | border-radius: 10px;
163 | transition: -webkit-transform 0.35s;
164 | transition: transform 0.35s, -webkit-transform 0.35s;
165 | -webkit-transform: translate3d(120%, 0, 0);
166 | transform: translate3d(120%, 0, 0);
167 | }
168 |
169 | .meta {
170 | display: flex;
171 | align-items: center;
172 | margin-top: auto;
173 | color: #000;
174 | font-size: 13px;
175 | }
176 |
177 | .meta .items {
178 | display: flex;
179 | align-items: center;
180 | }
181 |
182 | .meta .items li::after {
183 | content: '/';
184 | color: #000;
185 | padding: 0 5px;
186 | }
187 |
188 | .meta .items li:last-child::after {
189 | content: ""
190 | }
191 |
192 | .meta .last {
193 | margin-left: auto;
194 | display: flex;
195 | align-items: center;
196 | }
197 |
198 | .meta .last .icon {
199 | margin-right: 3px;
200 | }
201 |
202 | .meta .last .link {
203 | color: #000;
204 | }
205 |
206 | @media screen and (max-width: 768px) {
207 | .meta .items {
208 | width: 100%;
209 | }
210 | .meta .items li {
211 | display: none;
212 | }
213 | .meta .items li:nth-child(1) {
214 | display: block;
215 | }
216 | .meta .items li:nth-child(1)::after {
217 | content: ""
218 | }
219 | .abstract {
220 | display: none;
221 | }
222 | .list-item .thumbnail svg {
223 | display: none;
224 | }
225 | .list-item .information .abstract {
226 | display: none;
227 | }
228 | .list-item .meta .items li:nth-child(2) {
229 | display: block;
230 | margin-left: auto;
231 | }
232 | .list-item .meta .items li:nth-child(2)::after {
233 | content: ""
234 | }
235 | .list-item .meta .last {
236 | display: none !important;
237 | }
238 | .list-item .thumbnail img {
239 | width: 120px;
240 | height: 80px;
241 | -o-object-fit: cover;
242 | object-fit: cover;
243 | border-radius: 4px;
244 | transition: opacity 0.35s;
245 | }
246 | }
247 |
248 | img {
249 | border: 0;
250 | vertical-align: middle;
251 | }
252 |
--------------------------------------------------------------------------------
/static/css/main.css:
--------------------------------------------------------------------------------
1 | /*//////////////////////////////////////////////////////////////////[ RESTYLE TAG ]*/
2 |
3 | * {
4 | margin: 0;
5 | padding: 0;
6 | box-sizing: border-box;
7 | }
8 |
9 | body, html {
10 | height: 100%;
11 | font-family: Poppins-Regular, sans-serif;
12 | }
13 |
14 | /*---------------------------------------------*/
15 |
16 | a {
17 | font-family: Poppins-Regular;
18 | font-size: 14px;
19 | line-height: 1.7;
20 | color: #666666;
21 | margin: 0;
22 | transition: all 0.4s;
23 | -webkit-transition: all 0.4s;
24 | -o-transition: all 0.4s;
25 | -moz-transition: all 0.4s;
26 | }
27 |
28 | a:focus {
29 | outline: none !important;
30 | }
31 |
32 | a:hover {
33 | text-decoration: none;
34 | color: #57b846;
35 | }
36 |
37 | /*---------------------------------------------*/
38 |
39 | h1, h2, h3, h4, h5, h6 {
40 | margin: 0;
41 | }
42 |
43 | p {
44 | font-family: Poppins-Regular;
45 | font-size: 14px;
46 | line-height: 1.7;
47 | color: #666666;
48 | margin: 0;
49 | }
50 |
51 | ul, li {
52 | margin: 0;
53 | list-style-type: none;
54 | }
55 |
56 | /*---------------------------------------------*/
57 |
58 | input {
59 | outline: none;
60 | border: none;
61 | }
62 |
63 | textarea {
64 | outline: none;
65 | border: none;
66 | }
67 |
68 | textarea:focus, input:focus {
69 | border-color: transparent !important;
70 | }
71 |
72 | input:focus::-webkit-input-placeholder {
73 | color: transparent;
74 | }
75 |
76 | input:focus:-moz-placeholder {
77 | color: transparent;
78 | }
79 |
80 | input:focus::-moz-placeholder {
81 | color: transparent;
82 | }
83 |
84 | input:focus:-ms-input-placeholder {
85 | color: transparent;
86 | }
87 |
88 | textarea:focus::-webkit-input-placeholder {
89 | color: transparent;
90 | }
91 |
92 | textarea:focus:-moz-placeholder {
93 | color: transparent;
94 | }
95 |
96 | textarea:focus::-moz-placeholder {
97 | color: transparent;
98 | }
99 |
100 | textarea:focus:-ms-input-placeholder {
101 | color: transparent;
102 | }
103 |
104 | input::-webkit-input-placeholder {
105 | color: #999999;
106 | }
107 |
108 | input:-moz-placeholder {
109 | color: #999999;
110 | }
111 |
112 | input::-moz-placeholder {
113 | color: #999999;
114 | }
115 |
116 | input:-ms-input-placeholder {
117 | color: #999999;
118 | }
119 |
120 | textarea::-webkit-input-placeholder {
121 | color: #999999;
122 | }
123 |
124 | textarea:-moz-placeholder {
125 | color: #999999;
126 | }
127 |
128 | textarea::-moz-placeholder {
129 | color: #999999;
130 | }
131 |
132 | textarea:-ms-input-placeholder {
133 | color: #999999;
134 | }
135 |
136 | /*---------------------------------------------*/
137 |
138 | button {
139 | outline: none !important;
140 | border: none;
141 | background: transparent;
142 | }
143 |
144 | button:hover {
145 | cursor: pointer;
146 | }
147 |
148 | iframe {
149 | border: none !important;
150 | }
151 |
152 | /*//////////////////////////////////////////////////////////////////[ Utility ]*/
153 |
154 | .txt1 {
155 | font-family: Poppins-Regular;
156 | font-size: 13px;
157 | line-height: 1.5;
158 | color: #999999;
159 | }
160 |
161 | .txt2 {
162 | font-family: Poppins-Regular;
163 | font-size: 13px;
164 | line-height: 1.5;
165 | color: #666666;
166 | }
167 |
168 | /*//////////////////////////////////////////////////////////////////[ login ]*/
169 |
170 | .limiter {
171 | width: 100%;
172 | margin: 0 auto;
173 | }
174 |
175 | .container-login100 {
176 | width: 100%;
177 | min-height: 100vh;
178 | display: -webkit-box;
179 | display: -webkit-flex;
180 | display: -moz-box;
181 | display: -ms-flexbox;
182 | display: flex;
183 | flex-wrap: wrap;
184 | justify-content: center;
185 | align-items: center;
186 | padding: 15px;
187 | background: #9053c7;
188 | background: -webkit-linear-gradient(-135deg, #c850c0, #4158d0);
189 | background: -o-linear-gradient(-135deg, #c850c0, #4158d0);
190 | background: -moz-linear-gradient(-135deg, #c850c0, #4158d0);
191 | background: linear-gradient(-135deg, #c850c0, #4158d0);
192 | }
193 |
194 | .wrap-login100 {
195 | width: 960px;
196 | background: #fff;
197 | border-radius: 10px;
198 | overflow: hidden;
199 | display: -webkit-box;
200 | display: -webkit-flex;
201 | display: -moz-box;
202 | display: -ms-flexbox;
203 | display: flex;
204 | flex-wrap: wrap;
205 | justify-content: space-between;
206 | padding: 147px 130px 33px 95px;
207 | }
208 |
209 | /*------------------------------------------------------------------[ ]*/
210 |
211 | .login100-pic {
212 | width: 316px;
213 | }
214 |
215 | .login100-pic img {
216 | max-width: 100%;
217 | }
218 |
219 | /*------------------------------------------------------------------[ ]*/
220 |
221 | .login100-form {
222 | width: 290px;
223 | }
224 |
225 | .login100-form-title {
226 | font-family: Poppins-Bold;
227 | font-size: 24px;
228 | color: #333333;
229 | line-height: 1.2;
230 | text-align: center;
231 | width: 100%;
232 | display: block;
233 | padding-bottom: 54px;
234 | }
235 |
236 | /*---------------------------------------------*/
237 |
238 | .wrap-input100 {
239 | position: relative;
240 | width: 100%;
241 | z-index: 1;
242 | margin-bottom: 10px;
243 | }
244 |
245 | .input100 {
246 | font-family: Poppins-Medium;
247 | font-size: 15px;
248 | line-height: 1.5;
249 | color: #666666;
250 | display: block;
251 | width: 100%;
252 | background: #e6e6e6;
253 | height: 50px;
254 | border-radius: 25px;
255 | padding: 0 30px 0 68px;
256 | }
257 |
258 | /*------------------------------------------------------------------[ Focus ]*/
259 |
260 | .focus-input100 {
261 | display: block;
262 | position: absolute;
263 | border-radius: 25px;
264 | bottom: 0;
265 | left: 0;
266 | z-index: -1;
267 | width: 100%;
268 | height: 100%;
269 | box-shadow: 0 0 0 0;
270 | color: rgba(87, 184, 70, 0.8);
271 | }
272 |
273 | .input100:focus + .focus-input100 {
274 | -webkit-animation: anim-shadow 0.5s ease-in-out forwards;
275 | animation: anim-shadow 0.5s ease-in-out forwards;
276 | }
277 |
278 | @-webkit-keyframes anim-shadow {
279 | to {
280 | box-shadow: 0 0 70px 25px;
281 | opacity: 0;
282 | }
283 | }
284 |
285 | @keyframes anim-shadow {
286 | to {
287 | box-shadow: 0 0 70px 25px;
288 | opacity: 0;
289 | }
290 | }
291 |
292 | .symbol-input100 {
293 | font-size: 15px;
294 | display: -webkit-box;
295 | display: -webkit-flex;
296 | display: -moz-box;
297 | display: -ms-flexbox;
298 | display: flex;
299 | align-items: center;
300 | position: absolute;
301 | border-radius: 25px;
302 | bottom: 0;
303 | left: 0;
304 | width: 100%;
305 | height: 100%;
306 | padding-left: 35px;
307 | pointer-events: none;
308 | color: #666666;
309 | -webkit-transition: all 0.4s;
310 | -o-transition: all 0.4s;
311 | -moz-transition: all 0.4s;
312 | transition: all 0.4s;
313 | }
314 |
315 | .input100:focus + .focus-input100 + .symbol-input100 {
316 | color: #57b846;
317 | padding-left: 28px;
318 | }
319 |
320 | /*------------------------------------------------------------------[ Button ]*/
321 |
322 | .container-login100-form-btn {
323 | width: 100%;
324 | display: -webkit-box;
325 | display: -webkit-flex;
326 | display: -moz-box;
327 | display: -ms-flexbox;
328 | display: flex;
329 | flex-wrap: wrap;
330 | justify-content: center;
331 | padding-top: 20px;
332 | }
333 |
334 | .login100-form-btn {
335 | font-family: Montserrat-Bold, serif;
336 | font-size: 15px;
337 | line-height: 1.5;
338 | color: #fff;
339 | text-transform: uppercase;
340 | width: 100%;
341 | height: 50px;
342 | border-radius: 25px;
343 | background: #57b846;
344 | display: -webkit-box;
345 | display: -webkit-flex;
346 | display: -moz-box;
347 | display: -ms-flexbox;
348 | display: flex;
349 | justify-content: center;
350 | align-items: center;
351 | padding: 0 25px;
352 | -webkit-transition: all 0.4s;
353 | -o-transition: all 0.4s;
354 | -moz-transition: all 0.4s;
355 | transition: all 0.4s;
356 | }
357 |
358 | .login100-form-btn:hover {
359 | background: #333333;
360 | }
361 |
362 | /*------------------------------------------------------------------[ Responsive ]*/
363 |
364 | @media (max-width: 992px) {
365 | .wrap-login100 {
366 | padding: 177px 90px 33px 85px;
367 | }
368 |
369 | .login100-pic {
370 | width: 35%;
371 | }
372 |
373 | .login100-form {
374 | width: 50%;
375 | }
376 | }
377 |
378 | @media (max-width: 768px) {
379 | .wrap-login100 {
380 | padding: 100px 80px 33px 80px;
381 | }
382 |
383 | .login100-pic {
384 | display: none;
385 | }
386 |
387 | .login100-form {
388 | width: 100%;
389 | }
390 | }
391 |
392 | @media (max-width: 576px) {
393 | .wrap-login100 {
394 | padding: 100px 15px 33px 15px;
395 | }
396 | }
397 |
398 | /*------------------------------------------------------------------[ Alert validate ]*/
399 |
400 | .validate-input {
401 | position: relative;
402 | }
403 |
--------------------------------------------------------------------------------
/static/css/slider/menu_sideslide.css:
--------------------------------------------------------------------------------
1 | html,
2 | body,
3 | .menu-wrap a {
4 | color: #b8b7ad;
5 | }
6 |
7 | .menu-wrap a:hover,
8 | .menu-wrap a:focus {
9 | color: #c94e50;
10 | }
11 |
12 | .content {
13 | position: relative;
14 | background: #b4bad2;
15 | }
16 |
17 | .content::before {
18 | position: absolute;
19 | top: 0;
20 | left: 0;
21 | z-index: 10;
22 | width: 100%;
23 | height: 100%;
24 | background: rgba(0, 0, 0, 0.3);
25 | content: '';
26 | opacity: 0;
27 | -webkit-transform: translate3d(100%, 0, 0);
28 | transform: translate3d(100%, 0, 0);
29 | -webkit-transition: opacity 0.4s, -webkit-transform 0s 0.4s;
30 | transition: opacity 0.4s, transform 0s 0.4s;
31 | -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
32 | transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
33 | }
34 |
35 | /* Menu Button */
36 | .menu-button {
37 | position: fixed;
38 | margin: 1em;
39 | padding: 0;
40 | border: none;
41 | text-indent: 2.5em;
42 | font-size: 1.5em;
43 | color: transparent;
44 | width: 50px;
45 | height: 50px;
46 | line-height: 50px;
47 | cursor: pointer;
48 | background-color: #000;
49 | border-radius: 5px;
50 | text-align: center;
51 | -webkit-tap-highlight-color: transparent;
52 | z-index: 1000;
53 | top: 20px;
54 | left: 20px;
55 | }
56 |
57 | .menu-button::before {
58 |
59 | position: absolute;
60 | top: 0.5em;
61 | right: 0.5em;
62 | bottom: 0.5em;
63 | left: 0.5em;
64 | background: linear-gradient(#ffffff 20%, transparent 20%, transparent 40%, #ffffff 40%, #ffffff 60%, transparent 60%, transparent 80%, #ffffff 80%);
65 | content: '';
66 | }
67 |
68 | .menu-button:hover {
69 | opacity: 0.6;
70 | }
71 |
72 | /* Close Button */
73 | .close-button {
74 | width: 1em;
75 | height: 1em;
76 | position: absolute;
77 | right: 1em;
78 | top: 1em;
79 | overflow: hidden;
80 | text-indent: 1em;
81 | font-size: 0.75em;
82 | border: none;
83 | background: transparent;
84 | color: transparent;
85 | }
86 |
87 | .close-button::before,
88 | .close-button::after {
89 | content: '';
90 | position: absolute;
91 | width: 3px;
92 | height: 100%;
93 | top: 0;
94 | left: 50%;
95 | background: #bdc3c7;
96 | }
97 |
98 | .close-button::before {
99 | -webkit-transform: rotate(45deg);
100 | transform: rotate(45deg);
101 | }
102 |
103 | .close-button::after {
104 | -webkit-transform: rotate(-45deg);
105 | transform: rotate(-45deg);
106 | }
107 |
108 | /* Menu */
109 | .menu-wrap {
110 | position: fixed;
111 | z-index: 1001;
112 | width: 300px;
113 | height: 100%;
114 | background: #fff;
115 | padding: 2.5em 1.5em 0;
116 | font-size: 1.15em;
117 | -webkit-transform: translate3d(-320px, 0, 0);
118 | transform: translate3d(-320px, 0, 0);
119 | -webkit-transition: -webkit-transform 0.4s;
120 | transition: transform 0.4s;
121 | -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
122 | transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
123 | }
124 |
125 | .menu,
126 | .icon-list {
127 | height: 100%;
128 | }
129 |
130 | .icon-list {
131 | -webkit-transform: translate3d(0, 100%, 0);
132 | transform: translate3d(0, 100%, 0);
133 | }
134 |
135 | .icon-list a {
136 | display: block;
137 | padding: 0.8em;
138 | -webkit-transform: translate3d(0, 500px, 0);
139 | transform: translate3d(0, 500px, 0);
140 | text-align: center;
141 | }
142 |
143 | .icon-list a:hover {
144 | padding: 1em;
145 | font-size: 1.5em;
146 | width: 110%;
147 | }
148 |
149 | .icon-list,
150 | .icon-list a {
151 | -webkit-transition: -webkit-transform 0s 0.4s;
152 | transition: transform 0s 0.4s;
153 | -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
154 | transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
155 | font-size: 15px;
156 | }
157 |
158 | .icon-list a:nth-child(2) {
159 | -webkit-transform: translate3d(0, 1000px, 0);
160 | transform: translate3d(0, 1000px, 0);
161 | }
162 |
163 | .icon-list a:nth-child(3) {
164 | -webkit-transform: translate3d(0, 1500px, 0);
165 | transform: translate3d(0, 1500px, 0);
166 | }
167 |
168 | .icon-list a:nth-child(4) {
169 | -webkit-transform: translate3d(0, 2000px, 0);
170 | transform: translate3d(0, 2000px, 0);
171 | }
172 |
173 | .icon-list a:nth-child(5) {
174 | -webkit-transform: translate3d(0, 2500px, 0);
175 | transform: translate3d(0, 2500px, 0);
176 | }
177 |
178 | .icon-list a:nth-child(6) {
179 | -webkit-transform: translate3d(0, 3000px, 0);
180 | transform: translate3d(0, 3000px, 0);
181 | }
182 |
183 | .icon-list a span {
184 | margin-left: 10px;
185 | font-weight: 700;
186 | }
187 |
188 | /* Shown menu */
189 | .show-menu .menu-wrap {
190 | -webkit-transform: translate3d(0, 0, 0);
191 | transform: translate3d(0, 0, 0);
192 | -webkit-transition: -webkit-transform 0.8s;
193 | transition: transform 0.8s;
194 | -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
195 | transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
196 | }
197 |
198 | .show-menu .icon-list,
199 | .show-menu .icon-list a {
200 | -webkit-transform: translate3d(0, 0, 0);
201 | transform: translate3d(0, 0, 0);
202 | -webkit-transition: -webkit-transform 0.8s;
203 | transition: transform 0.8s;
204 | -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
205 | transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
206 | }
207 |
208 | .show-menu .icon-list a {
209 | -webkit-transition-duration: 0.9s;
210 | transition-duration: 0.9s;
211 | }
212 |
213 | .show-menu .content::before {
214 | opacity: 1;
215 | -webkit-transition: opacity 0.8s;
216 | transition: opacity 0.8s;
217 | -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
218 | transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
219 | -webkit-transform: translate3d(0, 0, 0);
220 | transform: translate3d(0, 0, 0);
221 | }
222 |
223 | .menu-wrap .menu .icon-list a {
224 | margin-top: 5px;
225 | background: none;
226 | border-radius: 30px;
227 | border: 1px solid #9194a7;
228 | color: #5111e7;
229 | text-indent: 10px;
230 | line-height: 26px;
231 | font-size: 12px;
232 | }
233 |
234 | .h-opulent-color-animate {
235 | animation: opulent-color-animate 3s steps(100) infinite;
236 | color: #151515;
237 | font-size: 1.2em;
238 | text-align: center;
239 | text-transform: uppercase;
240 | }
241 |
242 | @keyframes opulent-color-animate {
243 | 0% {
244 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
245 | filter: blur(0);
246 | }
247 |
248 | 1% {
249 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
250 | filter: blur(0);
251 | }
252 | 2% {
253 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
254 | filter: blur(0);
255 | }
256 | 3% {
257 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
258 | filter: blur(0);
259 | }
260 | 4% {
261 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
262 | filter: blur(0);
263 | }
264 | 5% {
265 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
266 | filter: blur(0);
267 | }
268 | 6% {
269 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
270 | filter: blur(0);
271 | }
272 | 7% {
273 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
274 | filter: blur(0);
275 | }
276 | 8% {
277 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
278 | filter: blur(0);
279 | }
280 | 9% {
281 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
282 | filter: blur(0);
283 | }
284 | 10% {
285 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
286 | filter: blur(0);
287 | }
288 | 11% {
289 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
290 | filter: blur(0.5px
291 | );
292 | }
293 | 12% {
294 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
295 | filter: blur(0.5px
296 | );
297 | }
298 | 13% {
299 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
300 | filter: blur(0.5px
301 | );
302 | }
303 | 14% {
304 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
305 | filter: blur(0);
306 | }
307 | 15% {
308 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
309 | filter: blur(0);
310 | }
311 | 16% {
312 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
313 | filter: blur(0);
314 | }
315 | 17% {
316 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
317 | filter: blur(0);
318 | }
319 | 18% {
320 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
321 | filter: blur(0);
322 | }
323 | 19% {
324 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
325 | filter: blur(0);
326 | }
327 | 20% {
328 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
329 | filter: blur(0);
330 | }
331 | 21% {
332 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
333 | filter: blur(0);
334 | }
335 | 22% {
336 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
337 | filter: blur(0);
338 | }
339 | 23% {
340 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
341 | filter: blur(0);
342 | }
343 | 24% {
344 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
345 | filter: blur(0);
346 | }
347 | 25% {
348 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
349 | filter: blur(0);
350 | }
351 | 26% {
352 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
353 | filter: blur(0.5px
354 | );
355 | }
356 | 27% {
357 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
358 | filter: blur(0.5px
359 | );
360 | }
361 | 28% {
362 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
363 | filter: blur(0);
364 | }
365 | 29% {
366 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
367 | filter: blur(0);
368 | }
369 | 30% {
370 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
371 | filter: blur(0);
372 | }
373 | 31% {
374 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
375 | filter: blur(0);
376 | }
377 | 32% {
378 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
379 | filter: blur(0);
380 | }
381 | 33% {
382 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
383 | filter: blur(0);
384 | }
385 | 34% {
386 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
387 | filter: blur(0);
388 | }
389 | 35% {
390 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
391 | filter: blur(0.5px
392 | );
393 | }
394 | 36% {
395 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
396 | filter: blur(0.5px
397 | );
398 | }
399 | 37% {
400 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
401 | filter: blur(0.5px
402 | );
403 | }
404 | 38% {
405 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
406 | filter: blur(0);
407 | }
408 | 39% {
409 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
410 | filter: blur(0);
411 | }
412 | 40% {
413 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
414 | filter: blur(0);
415 | }
416 | 41% {
417 | text-shadow: 45px 0 0 #0c33f5, -45px 0 0 lime;
418 | filter: blur(0);
419 | }
420 | 42% {
421 | text-shadow: 0 0 0 #0c33f5, 0 0 0 lime;
422 | filter: blur(0);
423 | }
424 | 43% {
425 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
426 | filter: blur(0);
427 | }
428 | 44% {
429 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
430 | filter: blur(0);
431 | }
432 | 45% {
433 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
434 | filter: blur(0);
435 | }
436 | 46% {
437 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
438 | filter: blur(0.5px
439 | );
440 | }
441 | 47% {
442 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
443 | filter: blur(0.5px
444 | );
445 | }
446 | 48% {
447 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
448 | filter: blur(0);
449 | }
450 | 49% {
451 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
452 | filter: blur(0);
453 | }
454 | 50% {
455 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
456 | filter: blur(0);
457 | }
458 | 51% {
459 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
460 | filter: blur(0);
461 | }
462 | 52% {
463 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
464 | filter: blur(0);
465 | }
466 | 53% {
467 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
468 | filter: blur(0);
469 | }
470 | 54% {
471 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
472 | filter: blur(0);
473 | }
474 | 55% {
475 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
476 | filter: blur(0.5px
477 | );
478 | }
479 | 56% {
480 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
481 | filter: blur(0.5px
482 | );
483 | }
484 | 57% {
485 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
486 | filter: blur(0.5px
487 | );
488 | }
489 | 58% {
490 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
491 | filter: blur(0);
492 | }
493 | 59% {
494 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
495 | filter: blur(0);
496 | }
497 | 60% {
498 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
499 | filter: blur(0);
500 | }
501 | 61% {
502 | text-shadow: 30px 0 0 red, -30px 0 0 lime;
503 | filter: blur(0);
504 | }
505 | 62% {
506 | text-shadow: 0 0 0 red, 0 0 0 lime;
507 | filter: blur(0);
508 | }
509 | 63% {
510 | text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
511 | filter: blur(0);
512 | }
513 | 64% {
514 | text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
515 | filter: blur(0);
516 | }
517 | 65% {
518 | text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
519 | filter: blur(0);
520 | }
521 | 66% {
522 | text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5;
523 | filter: blur(0.5px
524 | );
525 | }
526 | 67% {
527 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
528 | filter: blur(0.5px
529 | );
530 | }
531 | 68% {
532 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
533 | filter: blur(0);
534 | }
535 | 69% {
536 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
537 | filter: blur(0);
538 | }
539 | 70% {
540 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
541 | filter: blur(0);
542 | }
543 | 71% {
544 | text-shadow: 50px 0 0 red, -50px 0 0 #0c33f5;
545 | filter: blur(0);
546 | }
547 | 72% {
548 | text-shadow: 0 0 0 red, 0 0 0 #0c33f5;
549 | filter: blur(0);
550 | }
551 | 73% {
552 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
553 | filter: blur(0);
554 | }
555 | 74% {
556 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
557 | filter: blur(0);
558 | }
559 | 75% {
560 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
561 | filter: blur(0);
562 | }
563 | 76% {
564 | text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5;
565 | filter: blur(0);
566 | }
567 | 77% {
568 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
569 | filter: blur(0);
570 | }
571 | 78% {
572 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
573 | filter: blur(0);
574 | }
575 | 79% {
576 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
577 | filter: blur(0);
578 | }
579 | 80% {
580 | text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5;
581 | filter: blur(0);
582 | }
583 | 81% {
584 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
585 | filter: blur(0);
586 | }
587 | 82% {
588 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
589 | filter: blur(0);
590 | }
591 | 83% {
592 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
593 | filter: blur(0.5px
594 | );
595 | }
596 | 84% {
597 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
598 | filter: blur(0.5px
599 | );
600 | }
601 | 85% {
602 | text-shadow: 1px 0 0 red, -1px 0 0 lime;
603 | filter: blur(0.5px
604 | );
605 | }
606 | 86% {
607 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
608 | filter: blur(0.5px
609 | );
610 | }
611 | 87% {
612 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
613 | filter: blur(0.5px
614 | );
615 | }
616 | 88% {
617 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
618 | filter: blur(0);
619 | }
620 | 89% {
621 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
622 | filter: blur(0);
623 | }
624 | 90% {
625 | text-shadow: -3px 0 0 red, 3px 0 0 lime;
626 | filter: blur(0);
627 | }
628 | 91% {
629 | text-shadow: 60px 0 0 lime, -60px 0 0 #0c33f5;
630 | filter: blur(0);
631 | }
632 | 92% {
633 | text-shadow: 0 0 0 lime, 0 0 0 #0c33f5;
634 | filter: blur(0);
635 | }
636 | 92% {
637 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
638 | filter: blur(0);
639 | }
640 | 93% {
641 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
642 | filter: blur(0);
643 | }
644 | 94% {
645 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
646 | filter: blur(0);
647 | }
648 | 95% {
649 | text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime;
650 | filter: blur(0);
651 | }
652 | 96% {
653 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
654 | filter: blur(0);
655 | }
656 | 97% {
657 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
658 | filter: blur(0);
659 | }
660 | 98% {
661 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
662 | filter: blur(0);
663 | }
664 | 99% {
665 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
666 | filter: blur(0);
667 | }
668 | 100% {
669 | text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime;
670 | filter: blur(0);
671 | }
672 | }
673 |
--------------------------------------------------------------------------------
/static/css/slider/normalize.css:
--------------------------------------------------------------------------------
1 | article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;height:0;}[hidden]{display:none;}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}body{margin:0;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;margin:0.67em 0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:bold;}dfn{font-style:italic;}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0;}mark{background:#ff0;color:#000;}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em;}pre{white-space:pre-wrap;}q{quotes:"\201C" "\201D" "\2018" "\2019";}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-0.5em;}sub{bottom:-0.25em;}img{border:0;}svg:not(:root){overflow:hidden;}figure{margin:0;}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em;}legend{border:0;padding:0;}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;}button,input{line-height:normal;}button,select{text-transform:none;}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;}button[disabled],html input[disabled]{cursor:default;}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}
--------------------------------------------------------------------------------
/static/css/type-tag/style.css:
--------------------------------------------------------------------------------
1 | .type-tag-list {
2 | list-style: none;
3 | }
4 | .type-tag-list .clearfix {
5 | position: relative;
6 | }
7 | .type-tag-list li {
8 | width: 100%;
9 | max-width: 768px;
10 | margin: 0 auto 40px;
11 | padding: 0 20px;
12 | -webkit-box-sizing: border-box;
13 | box-sizing: border-box;
14 | display: block;
15 | }
16 | .type-tag-list li a {
17 | background: #fff;
18 | }
19 | .type-tag-list li a {
20 | width: 100%;
21 | height: 100%;
22 | padding-left: 20px;
23 | border-radius: 5px;
24 | text-decoration: none;
25 | -webkit-transition: .2s;
26 | transition: .2s;
27 | display: block;
28 | position: relative;
29 | }
30 | .type-tag-list .eo-bg {
31 | background: #fff;
32 | }
33 | .type-tag-list li a .description {
34 | color: #212121;
35 | }
36 | .type-tag-list li a .description {
37 | font-size: 14px;
38 | }
39 | .type-tag-list li a .description {
40 | min-height: 70px;
41 | padding: 20px 0 0;
42 | color: #333;
43 | }
44 | .type-tag-list li a .type-tag-row {
45 | padding: 40px 0;
46 | position: relative;
47 | }
48 | .type-tag-list li a .type-tag-row .name {
49 | color: #212121;
50 | }
51 | .type-tag-list li a .type-tag-row .name {
52 | font-size: 28px;
53 | }
54 | .type-tag-list li a .type-tag-row .name {
55 | color: #333;
56 | font-weight: 700;
57 | position: relative;
58 | }
59 | .type-tag-list li a .type-tag-row .articles {
60 | color: #bdbdbd;
61 | }
62 | .type-tag-list li a .type-tag-row .articles {
63 | height: 80px;
64 | line-height: 80px;
65 | font-size: 80px;
66 | position: absolute;
67 | right: 20px;
68 | bottom: 10px;
69 | font-family: WeChatNumber-151125,sans-serif;
70 | color: #939898;
71 | }
72 |
73 | @media screen and (min-width: 1150px)
74 | {
75 | .type-tag-list li {
76 | width: 50%;
77 | float: left;
78 | }
79 | }
80 |
--------------------------------------------------------------------------------
/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WindSnowLi/vue-ssr-blog/1aefe4fe107a0c6ccaee4e7fb7475c26a0d6875c/static/favicon.ico
--------------------------------------------------------------------------------
/static/images/close.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/static/images/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WindSnowLi/vue-ssr-blog/1aefe4fe107a0c6ccaee4e7fb7475c26a0d6875c/static/images/favicon.ico
--------------------------------------------------------------------------------
/static/images/gongan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WindSnowLi/vue-ssr-blog/1aefe4fe107a0c6ccaee4e7fb7475c26a0d6875c/static/images/gongan.png
--------------------------------------------------------------------------------
/static/images/login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WindSnowLi/vue-ssr-blog/1aefe4fe107a0c6ccaee4e7fb7475c26a0d6875c/static/images/login.png
--------------------------------------------------------------------------------
/static/images/menu-toggler.svg:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/static/images/search-icon.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/static/logo/long-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WindSnowLi/vue-ssr-blog/1aefe4fe107a0c6ccaee4e7fb7475c26a0d6875c/static/logo/long-logo.png
--------------------------------------------------------------------------------
/static/logo/square-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WindSnowLi/vue-ssr-blog/1aefe4fe107a0c6ccaee4e7fb7475c26a0d6875c/static/logo/square-logo.png
--------------------------------------------------------------------------------
/utils/auth.js:
--------------------------------------------------------------------------------
1 | import Cookies from 'js-cookie'
2 |
3 | const TokenKey = 'Token-Cookies'
4 |
5 | export function getToken() {
6 | return Cookies.get(TokenKey)
7 | }
8 |
9 | export function setToken(token) {
10 | return Cookies.set(TokenKey, token)
11 | }
12 |
13 | export function removeToken() {
14 | return Cookies.remove(TokenKey)
15 | }
16 |
--------------------------------------------------------------------------------
/utils/request.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 原源码详情链接:https://github.com/PanJiaChen/vue-element-admin/blob/master/src/utils/request.js
3 | */
4 | import axios from 'axios'
5 | import {getToken} from "./auth";
6 |
7 | // create an axios instance
8 | const service = axios.create({
9 | baseURL: process.env.BASE_URL, // url = base url + request url
10 | // withCredentials: true, // send cookies when cross-domain requests
11 | timeout: 5000 // request timeout
12 | })
13 |
14 | // request interceptor
15 | service.interceptors.request.use(
16 | config => {
17 | // do something before request is sent
18 | if (getToken()) {
19 | config.headers['token'] = getToken()
20 | }
21 | return config
22 | },
23 | error => {
24 | // do something with request error
25 | console.log(error) // for debug
26 | return Promise.reject(error)
27 | }
28 | )
29 |
30 | // response interceptor
31 | service.interceptors.response.use(
32 | response => {
33 | const res = response.data
34 | if (res.code !== 20000) {
35 | return Promise.reject(new Error(res.message || 'Error'))
36 | } else {
37 | return res.data
38 | }
39 | },
40 | error => {
41 | console.log('err' + error) // for debug
42 | return Promise.reject(error)
43 | }
44 | )
45 |
46 | export default service
47 |
--------------------------------------------------------------------------------
16 |
17 |
18 | {{ item.user.nickname }}
19 |
20 | {{ item.content }}
21 |
22 |