/** * Solo - A small and beautiful blogging system written in Java. * Copyright (c) 2010-2019, b3log.org & hacpai.com * * 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 . */ /* * skin style * * @author Liyuan Li * @version 1.1.0.0, Mar 20, 2019 */ /* start common */ @import "../../../scss/reset"; @import "../../../scss/function"; @import "../../../scss/toc"; @import "../../../scss/usite"; @import "vditor/src/assets/scss/classic"; a { outline: 0; text-decoration: none; color: #383838; } a:hover { color: #ff4d3a; text-decoration: underline; } .vditor-reset a { color: #ff4d3a; } .fn-pointer { cursor: pointer } .fn-inline { display: inline; } .fn-clear:before, .fn-clear:after { display: table; content: "" } .fn-clear:after { clear: both } .fn-left { float: left } .fn-right { float: right } .fn-none { display: none } .fn-hidden { visibility: hidden } .fn-ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; word-wrap: normal } a[class^="icon-"], a[class*=" icon-"] { color: #333 } a[class^="icon-"]:hover, a[class*=" icon-"]:hover { text-decoration: none; color: #4285f4 } #commentForm, #replyForm { width: 100%; } .comments { position: relative; } .comment-body-ref { position: absolute; width: 80%; background-color: #fff; right: 0; border: 1px solid #eee; } /* end common */ /* start reset common */ @font-face { font-family: 'icomoon'; src: url('fonts/icomoon.eot?oyqnlj'); src: url('fonts/icomoon.eot?oyqnlj#iefix') format('embedded-opentype'), url('fonts/icomoon.ttf?oyqnlj') format('truetype'), url('fonts/icomoon.woff?oyqnlj') format('woff'), url('fonts/icomoon.svg?oyqnlj#icomoon') format('svg'); font-weight: normal; font-style: normal; } [class^="icon-"], [class*=" icon-"] { /* use !important to prevent issues with browser extensions that change fonts */ font-family: 'icomoon' !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .icon-list:before { content: "\f0ca"; } .icon-home:before { content: "\f015"; } .icon-comments:before { content: "\f0e6"; } .icon-date:before { content: "\f073"; } .icon-search:before { content: "\f002"; } .icon-up:before { content: "\f077"; } .icon-inbox:before { content: "\f01c"; } .icon-tags:before { content: "\f02c"; } .icon-link:before { content: "\f0c1"; } .icon-refresh:before { content: "\f021"; } .icon-category:before { content: "\e9bc"; } .icon-logout:before { content: "\ea14"; } .icon-views:before { content: "\e900"; } .icon-register:before { content: "\e973"; } .icon-setting:before { content: "\e994"; } .icon-login:before { content: "\ea13"; } .icon-rss:before { content: "\e901"; } *::selection { background: none repeat scroll 0% 0% #3D4450; color: #FFF; outline: none; } a { transition: all .3s; outline: none; } .pagination { margin-bottom: 30px; line-height: 30px; font-family: Georgia; } .pagination .page-number:first-child { border-left: 1px solid #ddd; } .pagination .page-number { display: inline-block; padding: 0 10px; border: 1px solid #ddd; border-left: 0; text-decoration: none; float: left; } .pagination a.page-number:hover { color: #ff4d3a; background-color: #eee; } .pagination .page-number.current { color: #fff; background: #ff4d3a; border-color: #ff4d3a; margin-left: -1px; } .module { box-shadow: .0 1px 1px rgba(0, 0, 0, 0.05); margin-bottom: 20px; } .module header h2 { border-bottom: 1px solid #ff4d3a; padding: 10px; line-height: 18px; font-size: 16px; font-weight: 400; } .module main { padding: 20px; } .ft-warn { color: #ff4d3a; } .ft-gray { color: #aaa; } .ft-center { text-align: center; } .list, .module main.list { padding: 0; } .list li { list-style: none; border-bottom: 1px solid #eee; line-height: 40px; padding: 0 20px; } .list li:last-child { border-bottom: 0; } .list a { color: #666; text-decoration: none; display: block; } .list a:hover { color: #ff4d3a; } .form input, .form textarea { border: 1px solid #ccc; background-color: #FAFAFA; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset; padding: 0 10px; width: 100%; line-height: 28px; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box } .form input { height: 30px; } .form input:focus, .form textarea:focus { background-color: #FFF; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset, 0 0 5px rgba(81, 167, 232, 0.5); border: 1px solid #51A7E8 } .form button { background-color: #EB5750; border: 0; color: #fff; } .form button:hover { background-color: #e42f19; } /* end reset common */ /* start framework */ .wrapper { width: 90%; margin: 0 auto; min-width: 720px; max-width: 1300px; } aside { width: 28%; min-width: 236px; .tag.vditor-tooltipped { display: inline-block; padding: 2px 5px; margin-bottom: 10px; border: 1px solid #e1e1e1; text-decoration: none; margin-right: 10px; line-height: 22px; } .ad { background-color: #3cbc8d; color: #fff; padding: 20px; margin-bottom: 20px; border: 1px solid transparent; box-sizing: border-box; } .meta main { text-align: right; line-height: 20px; } .meta img { float: left; height: 80px; width: 80px; border-radius: 5px; } } .main-wrap { display: flex; } .main-wrap > main { margin-right: 30px; flex: 1; min-width: 1px; } /* end framework */ /* start header */ .banner { background-color: #393939; height: 75px; } .banner h1 a { color: #fff; line-height: 75px; text-decoration: none; } .banner small { color: #DFDFDF; font-size: 15px; } .banner .fn-right a { line-height: 75px; color: #DFDFDF; text-decoration: none; margin-left: 10px; opacity: 0.6; } .banner .fn-right a:hover { opacity: 1; } .navbar { border-bottom: 1px solid #eee; height: 50px; overflow: hidden; margin-bottom: 30px; } .navbar.pin { position: fixed; width: 100%; background-color: rgba(255, 255, 255, 0.95); top: 0; z-index: 10; } .navbar nav a { color: #555; text-decoration: none; line-height: 50px; padding: 0 10px; display: inline-block; } .navbar nav a:hover { color: #333; } .navbar nav a.current { background-color: #eee; } .navbar form { position: relative; margin-top: 8px; } .navbar .form input { padding-right: 40px; } .navbar button { background-color: #EB5750; border: 0; color: #fff; position: absolute; top: 0; right: 0; height: 30px; width: 30px; } .navbar button:hover { background-color: #e42f19; } .page-icon { float: left; height: 14px; width: 14px; margin: 18px 5px 0 0; } /* end header */ /* start footer */ .footer { padding: 30px 0; text-align: center; background: #111; margin-top: 30px; color: #fff; } .footer a { color: #ff4d3a; text-decoration: none; } .icon-up { position: fixed; bottom: 122px; right: 20px; color: #fff; background-color: #111; height: 30px; width: 30px; text-align: center; line-height: 28px; border-radius: 15px; transition: all .3s; cursor: pointer; display: none; } .icon-up:hover { background-color: #ff4d3a; } /* end footer */ /* start article list */ .post { border: 1px solid #ededed; margin-bottom: 20px; padding: 20px; box-sizing: border-box; } .post h1 { margin-bottom: 10px; } .post h1 a { font-size: 24px; font-weight: 500; text-decoration: none; } .post sup { color: #aaa; font-weight: 300; } .post .meta { color: #aaa; margin-bottom: 10px; } .post .meta a { color: #aaa; text-decoration: none; } .post .meta a:hover { color: #ff4d3a; } .tags > a.tag { color: #fff; font-size: 12px; display: inline-block; background-color: #bbb; margin-right: 10px; padding: 0 5px; line-height: 22px; text-decoration: none; margin-top: 10px; } .tags > a.tag:before { content: "#"; } .tags > a.tag:hover { background: #999; } .post footer .copyright { padding: 10px; font-size: 14px; line-height: 16px; border: 1px solid #ff4d3a; border-left-width: 20px; margin: 20px 0; } .post .rel a { display: inline-block; padding: 5px 14px; background-color: #fff; border: 1px solid #ddd; border-radius: 15px; text-decoration: none; margin: 20px 0; } .post .rel a:hover { background-color: #eee; } .title h2 { font-size: 16px; font-weight: bold; padding-bottom: 10px; border-bottom: 1px solid #f1f1f1; margin-top: 20px; } .title > h2.tip { border-bottom: 0 } .article__toc { top: 81px; bottom: 132px; .toc--current a { color: #ff4d3a } } /* end article list */ /* start comments */ .comments > li { list-style: none; border-bottom: 1px solid #f1f1f1; padding: 10px; } .comments > li > div { display: flex; } .comments .avatar { width: 50px; height: 50px; border-radius: 100%; margin-right: 20px; background-size: contain; } .comments main { flex: 1; min-width: 1px; } .comments .vditor-reset { margin-top: 10px; } .comments .user-name { color: #666; text-decoration: none; } .comments .user-name:hover { color: #ff4d3a; } .comments .reply-btn { float: right; background-color: #ff4d3a; color: #fff; text-decoration: none; font-size: 12px; padding: 2px 5px; } .comments .reply-btn:hover { background-color: #e42f19; } #commentForm { margin-top: 20px; } .form .captcha { height: 28px; } /* end comments */ /* start other */ .other { border: 1px solid #ededed; margin-bottom: 20px; padding: 0 20px 20px; } /* end other */ /* start responsive */ @media (max-width: 900px) { .navbar .form { display: none; } } @media (max-width: 700px) { .page-icon { margin: 13px 3px 0 0; } .article__toc { display: none; } .wrapper { width: 100%; min-width: auto; padding: 0 10px; box-sizing: border-box; } .main-wrap > main { margin-right: 0; } .main-wrap, .responsive { display: block; } aside { width: 100%; box-sizing: border-box; } .banner { margin-bottom: 20px; } .banner small, .banner .fn-right, .navbar { display: none; } .icon-list { position: absolute; right: 10px; top: 20px; background-color: #fff; font-size: 20px; padding: 8px 6px; cursor: pointer; } .responsive .list { background-color: #fff; position: absolute; width: 100%; border: 1px solid #eee; left: 0; display: none; z-index: 10; top: 75px; } .responsive .list li.current { background-color: #eee; } } /* end responsive */