🏗️ First time sync the css & js files from hexo theme NexT
This commit is contained in:
45
assets/css/_common/components/back-to-top.scss
Normal file
45
assets/css/_common/components/back-to-top.scss
Normal file
@@ -0,0 +1,45 @@
|
||||
@if hexo-config('back2top.enable') {
|
||||
.back-to-top {
|
||||
font-size: $b2t-font-size;
|
||||
|
||||
@if not hexo-config('back2top.scrollpercent') {
|
||||
span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('back2top.sidebar') {
|
||||
margin: 20px - $sidebar-offset -10px -20px;
|
||||
opacity: 0;
|
||||
transition: opacity $transition-ease;
|
||||
|
||||
&.back-to-top-on {
|
||||
cursor: pointer;
|
||||
opacity: $b2t-opacity;
|
||||
|
||||
&:hover {
|
||||
opacity: $b2t-opacity-hover;
|
||||
}
|
||||
}
|
||||
} @else {
|
||||
bottom: $b2t-position-bottom;
|
||||
box-sizing: border-box;
|
||||
color: $b2t-color;
|
||||
padding: 0 6px;
|
||||
transition: bottom $transition-ease;
|
||||
@include sidebar-toggle();
|
||||
|
||||
@if not hexo-config('back2top.scrollpercent') {
|
||||
width: 24px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $sidebar-highlight;
|
||||
}
|
||||
|
||||
&.back-to-top-on {
|
||||
bottom: $b2t-position-bottom-on;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
20
assets/css/_common/components/index.scss
Normal file
20
assets/css/_common/components/index.scss
Normal file
@@ -0,0 +1,20 @@
|
||||
.noscript-warning {
|
||||
background-color: lighten($red, 20%);
|
||||
color: white;
|
||||
font-family: sans-serif;
|
||||
font-size: 1rem;
|
||||
font-weight: bold;
|
||||
left: 0;
|
||||
position: fixed;
|
||||
text-align: center;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
z-index: $zindex-5;
|
||||
}
|
||||
|
||||
@import 'back-to-top';
|
||||
@import 'reading-progress';
|
||||
|
||||
@import 'post';
|
||||
@import 'pages';
|
||||
@import 'third-party';
|
||||
21
assets/css/_common/components/pages/breadcrumb.scss
Normal file
21
assets/css/_common/components/pages/breadcrumb.scss
Normal file
@@ -0,0 +1,21 @@
|
||||
ul.breadcrumb {
|
||||
font-size: $font-size-smallest;
|
||||
list-style: none;
|
||||
margin: 1em 0;
|
||||
padding: 0 2em;
|
||||
text-align: center;
|
||||
|
||||
li {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
li:not(:first-child)::before {
|
||||
content: '/\00a0';
|
||||
font-weight: normal;
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
li:last-child {
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
35
assets/css/_common/components/pages/categories.scss
Normal file
35
assets/css/_common/components/pages/categories.scss
Normal file
@@ -0,0 +1,35 @@
|
||||
.category-all-page {
|
||||
.category-all-title {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.category-all {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.category-list {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.category-list-item {
|
||||
margin: 5px 10px;
|
||||
}
|
||||
|
||||
.category-list-count {
|
||||
color: $grey;
|
||||
|
||||
&::before {
|
||||
content: ' (';
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: ') ';
|
||||
}
|
||||
}
|
||||
|
||||
.category-list-child {
|
||||
padding-left: 10px;
|
||||
}
|
||||
}
|
||||
5
assets/css/_common/components/pages/index.scss
Normal file
5
assets/css/_common/components/pages/index.scss
Normal file
@@ -0,0 +1,5 @@
|
||||
// Page specific styles
|
||||
@import 'categories';
|
||||
@import 'schedule';
|
||||
@import 'breadcrumb';
|
||||
@import 'tag-cloud';
|
||||
102
assets/css/_common/components/pages/schedule.scss
Normal file
102
assets/css/_common/components/pages/schedule.scss
Normal file
@@ -0,0 +1,102 @@
|
||||
@keyframes dot-flash {
|
||||
from {
|
||||
opacity: 1;
|
||||
transform: scale(1);
|
||||
}
|
||||
|
||||
to {
|
||||
opacity: 0;
|
||||
transform: scale(.8);
|
||||
}
|
||||
}
|
||||
|
||||
.event-list {
|
||||
hr {
|
||||
background: $black-deep;
|
||||
margin: 20px 0 45px;
|
||||
|
||||
&::after {
|
||||
background: $black-deep;
|
||||
color: white;
|
||||
content: 'NOW';
|
||||
display: inline-block;
|
||||
font-weight: bold;
|
||||
padding: 0 5px;
|
||||
}
|
||||
}
|
||||
|
||||
.event {
|
||||
--event-background: #{$black-deep};
|
||||
--event-foreground: #{$grey};
|
||||
--event-title: white;
|
||||
background: var(--event-background);
|
||||
padding: 15px;
|
||||
|
||||
.event-summary {
|
||||
border-bottom: 0;
|
||||
color: var(--event-title);
|
||||
margin: 0;
|
||||
padding: 0 0 0 35px;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
animation: dot-flash 1s alternate infinite ease-in-out;
|
||||
background: var(--event-title);
|
||||
left: 0;
|
||||
margin-top: -6px;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
@include round-icon(12px);
|
||||
}
|
||||
}
|
||||
|
||||
&:nth-of-type(odd) .event-summary::before {
|
||||
animation-delay: .5s;
|
||||
}
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.event-relative-time {
|
||||
color: var(--event-foreground);
|
||||
display: inline-block;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
padding-left: 12px;
|
||||
}
|
||||
|
||||
.event-details {
|
||||
color: var(--event-foreground);
|
||||
display: block;
|
||||
line-height: 18px;
|
||||
padding: 6px 0 6px 35px;
|
||||
|
||||
&::before {
|
||||
color: var(--event-foreground);
|
||||
display: inline-block;
|
||||
margin-right: 9px;
|
||||
width: 14px;
|
||||
@include font-family-icons();
|
||||
}
|
||||
|
||||
&.event-location::before {
|
||||
content: '\f041';
|
||||
}
|
||||
|
||||
&.event-duration::before {
|
||||
content: '\f017';
|
||||
}
|
||||
|
||||
&.event-description::before {
|
||||
content: '\f024';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.event-past {
|
||||
--event-background: #{$whitesmoke};
|
||||
--event-foreground: #{$grey-dark};
|
||||
--event-title: #{$black-deep};
|
||||
}
|
||||
}
|
||||
28
assets/css/_common/components/pages/tag-cloud.scss
Normal file
28
assets/css/_common/components/pages/tag-cloud.scss
Normal file
@@ -0,0 +1,28 @@
|
||||
.tag-cloud {
|
||||
text-align: center;
|
||||
|
||||
a {
|
||||
display: inline-block;
|
||||
margin: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
@for $tag-cloud from 0 through 10 {
|
||||
$tag-cloud-color : mix($tag-cloud-end, $tag-cloud-start, $tag-cloud * 10);
|
||||
.tag-cloud-#{$tag-cloud} {
|
||||
border-bottom-color: $tag-cloud-color;
|
||||
color: $tag-cloud-color;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('darkmode') {
|
||||
@media (prefers-color-scheme: dark) {
|
||||
@for $tag-cloud from 0 through 10 {
|
||||
$tag-cloud-color : mix($tag-cloud-end-dark, $tag-cloud-start-dark, $tag-cloud * 10);
|
||||
.tag-cloud-#{$tag-cloud} {
|
||||
border-bottom-color: $tag-cloud-color;
|
||||
color: $tag-cloud-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
53
assets/css/_common/components/post/index.scss
Normal file
53
assets/css/_common/components/post/index.scss
Normal file
@@ -0,0 +1,53 @@
|
||||
.rtl {
|
||||
&.post-body {
|
||||
p, a, h1, h2, h3, h4, h5, h6, li, ul, ol {
|
||||
direction: rtl;
|
||||
font-family: UKIJ Ekran;
|
||||
}
|
||||
}
|
||||
|
||||
&.post-title {
|
||||
font-family: UKIJ Ekran;
|
||||
}
|
||||
}
|
||||
|
||||
.post-button {
|
||||
margin-top: 40px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.use-motion {
|
||||
@if hexo-config('motion.transition.post_block') {
|
||||
.post-block, .pagination, .comments {
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('motion.transition.post_header') {
|
||||
.post-header {
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('motion.transition.post_body') {
|
||||
.post-body {
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('motion.transition.coll_header') {
|
||||
.collection-header {
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@import 'post-collapse';
|
||||
@import 'post-body';
|
||||
@import 'post-gallery';
|
||||
@import 'post-header';
|
||||
@import 'post-nav';
|
||||
@import 'post-footer';
|
||||
@import 'post-widgets';
|
||||
@import 'post-reward';
|
||||
@import 'post-followme';
|
||||
79
assets/css/_common/components/post/post-body.scss
Normal file
79
assets/css/_common/components/post/post-body.scss
Normal file
@@ -0,0 +1,79 @@
|
||||
.post-body {
|
||||
font-family: $font-family-posts;
|
||||
@include word-wrap();
|
||||
|
||||
@include desktop-large() {
|
||||
font-size: $font-size-large;
|
||||
}
|
||||
|
||||
@include desktop() {
|
||||
text-align: unquote(hexo-config('text_align.desktop'));
|
||||
}
|
||||
|
||||
@include tablet-mobile() {
|
||||
text-align: unquote(hexo-config('text_align.mobile'));
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
// Supported plugins: hexo-renderer-markdown-it hexo-renderer-marked
|
||||
.header-anchor, .headerlink {
|
||||
border-bottom-style: none;
|
||||
color: inherit;
|
||||
float: right;
|
||||
font-size: $font-size-small;
|
||||
margin-left: 10px;
|
||||
opacity: 0;
|
||||
|
||||
&::before {
|
||||
@include font-family-icons('\f0c1');
|
||||
}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
.header-anchor, .headerlink {
|
||||
opacity: .5;
|
||||
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.exturl .fa {
|
||||
font-size: $font-size-small;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
// For fancybox and pandoc
|
||||
.image-caption, img + figcaption, .fancybox + figcaption {
|
||||
color: $grey-dark;
|
||||
font-size: $font-size-small;
|
||||
font-weight: bold;
|
||||
line-height: 1;
|
||||
margin: -15px auto 15px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
iframe, img, video, embed {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.video-container {
|
||||
height: 0;
|
||||
margin-bottom: 20px;
|
||||
overflow: hidden;
|
||||
padding-top: 75%;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
|
||||
iframe, object, embed {
|
||||
height: 100%;
|
||||
left: 0;
|
||||
margin: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
109
assets/css/_common/components/post/post-collapse.scss
Normal file
109
assets/css/_common/components/post/post-collapse.scss
Normal file
@@ -0,0 +1,109 @@
|
||||
.posts-collapse .post-content {
|
||||
margin-bottom: $posts-collapse-margin;
|
||||
margin-left: $posts-collapse-margin;
|
||||
position: relative;
|
||||
|
||||
@include mobile() {
|
||||
margin-left: $posts-collapse-margin-mobile;
|
||||
margin-right: $posts-collapse-margin-mobile;
|
||||
}
|
||||
|
||||
.collection-title {
|
||||
font-size: $font-size-large;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
background: $grey-dark;
|
||||
border: 1px solid white;
|
||||
margin-left: -6px;
|
||||
margin-top: -4px;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
@include round-icon(10px);
|
||||
}
|
||||
}
|
||||
|
||||
.collection-year {
|
||||
font-size: $font-size-largest;
|
||||
font-weight: bold;
|
||||
margin: 60px 0;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
background: $grey;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
@include round-icon(8px);
|
||||
}
|
||||
}
|
||||
|
||||
.collection-header {
|
||||
display: block;
|
||||
margin-left: 20px;
|
||||
|
||||
small {
|
||||
color: $grey;
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
.post-header {
|
||||
border-bottom: 1px dashed $grey-light;
|
||||
// 2px is equal to half the width of .posts-collapse::before
|
||||
margin: 30px 2px 0;
|
||||
padding-left: 15px;
|
||||
position: relative;
|
||||
transition: border $transition-ease;
|
||||
|
||||
&::before {
|
||||
background: $grey;
|
||||
border: 1px solid white;
|
||||
left: -6px;
|
||||
position: absolute;
|
||||
top: $font-size-smallest;
|
||||
transition: background $transition-ease;
|
||||
@include round-icon(6px);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
border-bottom-color: $grey-dim;
|
||||
|
||||
&::before {
|
||||
background: $black-deep;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.post-meta-container {
|
||||
display: inline;
|
||||
font-size: $font-size-smallest;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.post-title {
|
||||
display: inline;
|
||||
|
||||
a {
|
||||
border-bottom: 0;
|
||||
color: var(--link-color);
|
||||
}
|
||||
|
||||
.fa-external-link-alt {
|
||||
font-size: $font-size-small;
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
&::before {
|
||||
background: $whitesmoke;
|
||||
content: ' ';
|
||||
height: 100%;
|
||||
margin-left: -2px;
|
||||
position: absolute;
|
||||
// To do: 1.25em is inaccurate when .collection-title has line breaks on mobile
|
||||
top: 1.25em;
|
||||
width: 4px;
|
||||
}
|
||||
}
|
||||
35
assets/css/_common/components/post/post-followme.scss
Normal file
35
assets/css/_common/components/post/post-followme.scss
Normal file
@@ -0,0 +1,35 @@
|
||||
@if hexo-config('follow_me') {
|
||||
.followme {
|
||||
color: $grey;
|
||||
padding: 1em 1.5em;
|
||||
text-align: center;
|
||||
@include post-card();
|
||||
|
||||
.social-list {
|
||||
@include flex-wrap();
|
||||
|
||||
.social-item {
|
||||
margin: .5em 2em;
|
||||
|
||||
@include tablet-mobile() {
|
||||
margin: .5em .75em;
|
||||
}
|
||||
}
|
||||
|
||||
.social-link {
|
||||
border: 0;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
|
||||
.icon {
|
||||
font-size: 1.75em;
|
||||
}
|
||||
|
||||
.label {
|
||||
display: block;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
41
assets/css/_common/components/post/post-footer.scss
Normal file
41
assets/css/_common/components/post/post-footer.scss
Normal file
@@ -0,0 +1,41 @@
|
||||
// Flexbox layout makes it possible to reorder the child
|
||||
// elements of .post-footer through the `order` CSS property
|
||||
// Fix issue #16
|
||||
// To do: use `gap` instead of `margin`
|
||||
// See https://caniuse.com/flexbox-gap
|
||||
.post-footer {
|
||||
@include flex-column();
|
||||
}
|
||||
|
||||
.post-eof {
|
||||
background: $grey-light;
|
||||
height: 1px;
|
||||
margin: $post-eof-margin-top auto $post-eof-margin-bottom;
|
||||
width: 8%;
|
||||
|
||||
.post-block:last-of-type & {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('creative_commons.post') {
|
||||
.post-copyright ul {
|
||||
list-style: none;
|
||||
padding: .5em 1em;
|
||||
@include post-card();
|
||||
}
|
||||
}
|
||||
|
||||
.post-tags {
|
||||
margin-top: 40px;
|
||||
text-align: center;
|
||||
|
||||
a {
|
||||
display: inline-block;
|
||||
font-size: $font-size-smaller;
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-right: 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
33
assets/css/_common/components/post/post-gallery.scss
Normal file
33
assets/css/_common/components/post/post-gallery.scss
Normal file
@@ -0,0 +1,33 @@
|
||||
.post-gallery {
|
||||
display: flex;
|
||||
min-height: 200px;
|
||||
|
||||
.post-gallery-image {
|
||||
flex: 1;
|
||||
|
||||
&:not(:first-child) {
|
||||
clip-path: polygon(40px 0, 100% 0, 100% 100%, 0 100%);
|
||||
margin-left: -20px;
|
||||
}
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-right: -20px;
|
||||
}
|
||||
|
||||
img {
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
// Override darkmode image opacity.
|
||||
opacity: 1;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.posts-expand .post-gallery {
|
||||
margin-bottom: 60px;
|
||||
}
|
||||
|
||||
.posts-collapse .post-gallery {
|
||||
margin: 15px 0;
|
||||
}
|
||||
120
assets/css/_common/components/post/post-header.scss
Normal file
120
assets/css/_common/components/post/post-header.scss
Normal file
@@ -0,0 +1,120 @@
|
||||
.posts-expand .post-header {
|
||||
font-size: $font-size-large;
|
||||
margin-bottom: 60px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.posts-expand .post-title {
|
||||
font-size: $font-size-largest;
|
||||
font-weight: normal;
|
||||
margin: initial;
|
||||
@include word-wrap();
|
||||
|
||||
@if hexo-config('post_edit.enable') {
|
||||
.post-edit-link {
|
||||
border-bottom: 0;
|
||||
color: $grey;
|
||||
float: right;
|
||||
font-size: $font-size-larger;
|
||||
margin-left: -1.2em;
|
||||
transition: color $transition-ease-in;
|
||||
|
||||
@include mobile-small() {
|
||||
margin-left: initial;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $sidebar-highlight;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.posts-expand .post-title-link {
|
||||
border-bottom: 0;
|
||||
color: var(--link-color);
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
background: var(--link-color);
|
||||
bottom: 0;
|
||||
content: '';
|
||||
height: 2px;
|
||||
// Fix issue #75
|
||||
left: 0;
|
||||
position: absolute;
|
||||
transform: scaleX(0);
|
||||
transition: transform $transition-ease;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
&:hover::before {
|
||||
transform: scaleX(1);
|
||||
}
|
||||
|
||||
.fa-external-link-alt {
|
||||
font-size: $font-size-small;
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
.post-sticky-flag {
|
||||
display: inline-block;
|
||||
// Fix issue #80 #140
|
||||
margin-right: 8px;
|
||||
transform: rotate(30deg);
|
||||
}
|
||||
|
||||
.posts-expand .post-meta-container {
|
||||
color: $grey-dark;
|
||||
font-family: $font-family-posts;
|
||||
font-size: $font-size-smallest;
|
||||
margin-top: 3px;
|
||||
|
||||
.post-description {
|
||||
font-size: $font-size-small;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
time {
|
||||
border-bottom: 1px dashed $grey-dark;
|
||||
}
|
||||
}
|
||||
|
||||
// Flexbox layout makes it possible to reorder the child
|
||||
// elements of .post-meta through the `order` CSS property
|
||||
.post-meta {
|
||||
@include flex-wrap();
|
||||
}
|
||||
|
||||
// .post-meta-item exists in .post-meta and footer
|
||||
:not(.post-meta-break) + .post-meta-item::before {
|
||||
content: '|';
|
||||
margin: 0 .5em;
|
||||
}
|
||||
|
||||
.post-meta-item-icon {
|
||||
margin-right: 3px;
|
||||
}
|
||||
|
||||
.post-meta-item-text {
|
||||
@if not hexo-config('post_meta.item_text') {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@include tablet-mobile() {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.post-meta-break {
|
||||
flex-basis: 100%;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
@if hexo-config('busuanzi_count.enable') and hexo-config('busuanzi_count.post_views') {
|
||||
#busuanzi_container_page_pv {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
41
assets/css/_common/components/post/post-nav.scss
Normal file
41
assets/css/_common/components/post/post-nav.scss
Normal file
@@ -0,0 +1,41 @@
|
||||
.post-nav {
|
||||
border-top: 1px solid $gainsboro;
|
||||
display: flex;
|
||||
gap: 30px;
|
||||
justify-content: space-between;
|
||||
margin-top: 1em;
|
||||
padding: 10px 5px 0;
|
||||
}
|
||||
|
||||
.post-nav-item {
|
||||
flex: 1;
|
||||
|
||||
a {
|
||||
border-bottom: 0;
|
||||
display: block;
|
||||
font-size: $font-size-small;
|
||||
line-height: 1.6;
|
||||
|
||||
&:active {
|
||||
top: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.fa {
|
||||
font-size: $font-size-smallest;
|
||||
}
|
||||
|
||||
&:first-child {
|
||||
.fa {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
text-align: right;
|
||||
|
||||
.fa {
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
56
assets/css/_common/components/post/post-reward.scss
Normal file
56
assets/css/_common/components/post/post-reward.scss
Normal file
@@ -0,0 +1,56 @@
|
||||
.reward-container {
|
||||
margin: $post-card-margin;
|
||||
padding: 1em 0;
|
||||
text-align: center;
|
||||
|
||||
button {
|
||||
@include button($sidebar-highlight);
|
||||
border: 2px solid $sidebar-highlight;
|
||||
border-radius: 2px;
|
||||
outline: 0;
|
||||
transition: all $transition-ease;
|
||||
vertical-align: text-top;
|
||||
}
|
||||
}
|
||||
|
||||
.post-reward {
|
||||
display: none;
|
||||
padding-top: 20px;
|
||||
|
||||
&.active {
|
||||
display: block;
|
||||
}
|
||||
|
||||
div {
|
||||
display: inline-block;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@if hexo-config('reward_settings.animation') {
|
||||
&:hover span {
|
||||
animation: next-roll .1s infinite linear;
|
||||
// The animation may affect :hover of img in dark mode
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
display: inline-block;
|
||||
margin: .8em 2em 0;
|
||||
max-width: 100%;
|
||||
width: 180px;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes next-roll {
|
||||
from {
|
||||
transform: rotateZ(30deg);
|
||||
}
|
||||
|
||||
to {
|
||||
transform: rotateZ(-30deg);
|
||||
}
|
||||
}
|
||||
20
assets/css/_common/components/post/post-widgets.scss
Normal file
20
assets/css/_common/components/post/post-widgets.scss
Normal file
@@ -0,0 +1,20 @@
|
||||
.post-widgets {
|
||||
border-top: 1px solid $gainsboro;
|
||||
margin-top: 15px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.wpac-rating-container {
|
||||
height: 20px;
|
||||
line-height: 20px;
|
||||
margin-top: 10px;
|
||||
padding-top: 6px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.social-like {
|
||||
display: flex;
|
||||
font-size: $font-size-small;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
}
|
||||
27
assets/css/_common/components/reading-progress.scss
Normal file
27
assets/css/_common/components/reading-progress.scss
Normal file
@@ -0,0 +1,27 @@
|
||||
@if hexo-config('reading_progress.enable') {
|
||||
.reading-progress-bar {
|
||||
--progress: 0;
|
||||
background: convert(hexo-config('reading_progress.color'));
|
||||
height: convert(hexo-config('reading_progress.height'));
|
||||
position: fixed;
|
||||
z-index: $zindex-5;
|
||||
|
||||
@if hexo-config('reading_progress.reversed') {
|
||||
width: calc(100% - var(--progress));
|
||||
} @else {
|
||||
width: var(--progress);
|
||||
}
|
||||
|
||||
@if hexo-config('reading_progress.start_at') == 'right' {
|
||||
right: 0;
|
||||
} @else {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
@if hexo-config('reading_progress.position') == 'bottom' {
|
||||
bottom: 0;
|
||||
} @else {
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
39
assets/css/_common/components/third-party/disqusjs.styl
vendored
Normal file
39
assets/css/_common/components/third-party/disqusjs.styl
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
if (hexo-config('disqusjs.enable') and hexo-config('darkmode')) {
|
||||
@media (prefers-color-scheme:dark) {
|
||||
html #dsqjs a {
|
||||
color: var(--link-color)
|
||||
}
|
||||
|
||||
html #dsqjs a:focus,html #dsqjs a:hover {
|
||||
color: var(--link-hover-color)
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-nav,html #dsqjs footer {
|
||||
border-color: var(--card-bg-color)
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-load-more,html #dsqjs .dsqjs-load-more:hover,html #dsqjs .dsqjs-nav-tab,html #dsqjs .dsqjs-no-comment,html #dsqjs .dsqjs-post-content {
|
||||
color: var(--text-color)
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-order-label {
|
||||
background-color: #3e4b5e
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-order-radio:checked+.dsqjs-order-label {
|
||||
background-color: var(--content-bg-color)
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-tab-active>span:after {
|
||||
background-color: #2e9fff!important
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-footer,html #dsqjs .dsqjs-meta {
|
||||
color: var(--text-color)
|
||||
}
|
||||
|
||||
html #dsqjs .dsqjs-post-body blockquote {
|
||||
border-color: var(--content-bg-color)
|
||||
}
|
||||
}
|
||||
}
|
||||
9
assets/css/_common/components/third-party/gitalk.scss
vendored
Normal file
9
assets/css/_common/components/third-party/gitalk.scss
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
@if hexo-config('gitalk.enable') {
|
||||
.gt-header a, .gt-comments a, .gt-popup a {
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
.gt-container .gt-popup .gt-action.is--active::before {
|
||||
top: .7em;
|
||||
}
|
||||
}
|
||||
7
assets/css/_common/components/third-party/gitter.styl
vendored
Normal file
7
assets/css/_common/components/third-party/gitter.styl
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
if (hexo-config('gitter.enable')) {
|
||||
.gitter-open-chat-button {
|
||||
$alignment = sidebar-toggle-alignment(false);
|
||||
{$alignment[0]}: auto !important;
|
||||
{$alignment[1]}: 10px !important;
|
||||
}
|
||||
}
|
||||
18
assets/css/_common/components/third-party/index.scss
vendored
Normal file
18
assets/css/_common/components/third-party/index.scss
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
@import 'disqusjs';
|
||||
@import 'gitalk';
|
||||
@import 'utterances';
|
||||
@import 'search';
|
||||
@import 'related-posts';
|
||||
@import 'math';
|
||||
@import 'gitter';
|
||||
|
||||
.use-motion .animated {
|
||||
// Fix issue #48 #55
|
||||
animation-fill-mode: none;
|
||||
// Fix issue #46 .animated in .sidebar
|
||||
visibility: inherit;
|
||||
}
|
||||
|
||||
.use-motion .sidebar .animated {
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
9
assets/css/_common/components/third-party/math.scss
vendored
Normal file
9
assets/css/_common/components/third-party/math.scss
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
@if hexo-config('math.mathjax.enable') {
|
||||
mjx-container[jax='CHTML'][display='true'], .has-jax {
|
||||
overflow: auto hidden;
|
||||
}
|
||||
|
||||
mjx-container[display='true'] + br {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
23
assets/css/_common/components/third-party/related-posts.scss
vendored
Normal file
23
assets/css/_common/components/third-party/related-posts.scss
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
@if hexo-config('related_posts.enable') {
|
||||
.popular-posts-header {
|
||||
border-bottom: 1px solid $gainsboro;
|
||||
font-size: $font-size-large;
|
||||
margin-bottom: 10px;
|
||||
margin-top: $post-eof-margin-bottom;
|
||||
}
|
||||
|
||||
.popular-posts {
|
||||
padding: 0;
|
||||
|
||||
.popular-posts-item {
|
||||
margin-left: 2em;
|
||||
|
||||
.popular-posts-title {
|
||||
font-size: $font-size-small;
|
||||
font-weight: normal;
|
||||
line-height: $line-height-base * 1.2;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
179
assets/css/_common/components/third-party/search.scss
vendored
Normal file
179
assets/css/_common/components/third-party/search.scss
vendored
Normal file
@@ -0,0 +1,179 @@
|
||||
@if hexo-config('local_search.enable') or hexo-config('algolia_search.enable') {
|
||||
.search-active {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.search-pop-overlay {
|
||||
background: rgba(0, 0, 0, 0);
|
||||
display: flex;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
transition: visibility .4s, background .4s;
|
||||
visibility: hidden;
|
||||
width: 100%;
|
||||
z-index: $zindex-4;
|
||||
|
||||
.search-active & {
|
||||
background: rgba(0, 0, 0, .3);
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
||||
|
||||
.search-popup {
|
||||
background: var(--card-bg-color);
|
||||
border-radius: 5px;
|
||||
height: 80%;
|
||||
margin: auto;
|
||||
transform: scale(0);
|
||||
transition: transform .4s;
|
||||
width: 700px;
|
||||
|
||||
.search-active & {
|
||||
transform: scale(1);
|
||||
}
|
||||
|
||||
@include mobile() {
|
||||
border-radius: 0;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.search-icon, .popup-btn-close {
|
||||
color: $grey-dark;
|
||||
font-size: 18px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.popup-btn-close {
|
||||
cursor: pointer;
|
||||
|
||||
&:hover .fa {
|
||||
color: $black-deep;
|
||||
}
|
||||
}
|
||||
|
||||
.search-header {
|
||||
background: $gainsboro;
|
||||
if (hexo-config('darkmode')) {
|
||||
@media (prefers-color-scheme: dark) {
|
||||
background: $grey-dim;
|
||||
}
|
||||
}
|
||||
border-top-left-radius: 5px;
|
||||
border-top-right-radius: 5px;
|
||||
display: flex;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
input.search-input {
|
||||
background: transparent;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
width: 100%;
|
||||
|
||||
&::-webkit-search-cancel-button {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.search-result-container {
|
||||
height: calc(100% - 55px);
|
||||
overflow: auto;
|
||||
padding: 5px 25px;
|
||||
|
||||
hr {
|
||||
margin: 5px 0 10px;
|
||||
|
||||
&:first-child {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.search-result-list {
|
||||
margin: 0 5px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
a.search-result-title {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
p.search-result {
|
||||
border-bottom: 1px dashed $grey-light;
|
||||
padding: 5px 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('algolia_search.enable') {
|
||||
.search-input-container {
|
||||
flex-grow: 1;
|
||||
|
||||
form {
|
||||
padding: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.search-stats {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
img {
|
||||
height: 1em;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.algolia-pagination {
|
||||
// Override default style of ul
|
||||
margin: 40px 0;
|
||||
opacity: 1;
|
||||
padding: 0;
|
||||
|
||||
.pagination-item {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.current .page-number {
|
||||
@extend %page-number-current;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.disabled-item {
|
||||
visibility: hidden;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('local_search.enable') {
|
||||
.search-popup {
|
||||
.search-input-container {
|
||||
flex-grow: 1;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
.no-result {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.search-result-list {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.search-result-icon {
|
||||
color: $grey-light;
|
||||
margin: auto;
|
||||
}
|
||||
}
|
||||
|
||||
mark.search-keyword {
|
||||
background: transparent;
|
||||
border-bottom: 1px dashed $red;
|
||||
color: $red;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
5
assets/css/_common/components/third-party/utterances.scss
vendored
Normal file
5
assets/css/_common/components/third-party/utterances.scss
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
@if hexo-config('utterances.enable') {
|
||||
.utterances {
|
||||
max-width: unset;
|
||||
}
|
||||
}
|
||||
100
assets/css/_common/outline/footer/index.scss
Normal file
100
assets/css/_common/outline/footer/index.scss
Normal file
@@ -0,0 +1,100 @@
|
||||
// Footer Section
|
||||
// --------------------------------------------------
|
||||
.footer {
|
||||
color: $grey-dark;
|
||||
font-size: $font-size-small;
|
||||
padding: 20px 0;
|
||||
|
||||
&.footer-fixed {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Flexbox layout makes it possible to reorder the child
|
||||
// elements of .footer-inner through the `order` CSS property
|
||||
.footer-inner {
|
||||
box-sizing: border-box;
|
||||
text-align: center;
|
||||
@include flex-column();
|
||||
@include main-container();
|
||||
}
|
||||
|
||||
.use-motion {
|
||||
.footer {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes icon-animate {
|
||||
0%, 100% {
|
||||
transform: scale(1);
|
||||
}
|
||||
|
||||
10%, 30% {
|
||||
transform: scale(.9);
|
||||
}
|
||||
|
||||
20%, 40%, 60%, 80% {
|
||||
transform: scale(1.1);
|
||||
}
|
||||
|
||||
50%, 70% {
|
||||
transform: scale(1.1);
|
||||
}
|
||||
}
|
||||
|
||||
.languages {
|
||||
display: inline-block;
|
||||
font-size: $font-size-large;
|
||||
position: relative;
|
||||
|
||||
.lang-select-label span {
|
||||
margin: 0 .5em;
|
||||
}
|
||||
|
||||
.lang-select {
|
||||
height: 100%;
|
||||
left: 0;
|
||||
opacity: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.with-love {
|
||||
color: hexo-config('footer.icon.color');
|
||||
display: inline-block;
|
||||
margin: 0 5px;
|
||||
|
||||
@if hexo-config('footer.icon.animated') {
|
||||
animation: icon-animate 1.33s ease-in-out infinite;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('footer.beian.enable') and hexo-config('footer.beian.gongan_icon_url') {
|
||||
.beian img {
|
||||
display: inline-block;
|
||||
margin: 0 3px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('busuanzi_count.enable') {
|
||||
.busuanzi-count {
|
||||
@if hexo-config('busuanzi_count.total_visitors') {
|
||||
#busuanzi_container_site_uv {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('busuanzi_count.total_views') {
|
||||
#busuanzi_container_site_pv {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
24
assets/css/_common/outline/header/bookmark.scss
Normal file
24
assets/css/_common/outline/header/bookmark.scss
Normal file
@@ -0,0 +1,24 @@
|
||||
@if hexo-config('bookmark.enable') {
|
||||
.book-mark-link {
|
||||
border-bottom: 0;
|
||||
position: fixed;
|
||||
top: -10px;
|
||||
transition: top .3s;
|
||||
@include sidebar-toggle-position(true);
|
||||
|
||||
@include tablet-mobile() {
|
||||
display: none;
|
||||
}
|
||||
|
||||
&::before {
|
||||
color: convert(hexo-config('bookmark.color'));
|
||||
font-size: 32px;
|
||||
line-height: 1;
|
||||
@include font-family-icons('\f02e');
|
||||
}
|
||||
}
|
||||
|
||||
.book-mark-link:hover, .book-mark-link-fixed {
|
||||
top: -2px;
|
||||
}
|
||||
}
|
||||
59
assets/css/_common/outline/header/github-banner.scss
Normal file
59
assets/css/_common/outline/header/github-banner.scss
Normal file
@@ -0,0 +1,59 @@
|
||||
@if hexo-config('github_banner.enable') {
|
||||
@keyframes octocat-wave {
|
||||
0%, 100% {
|
||||
transform: rotate(0);
|
||||
}
|
||||
|
||||
20%, 60% {
|
||||
transform: rotate(-25deg);
|
||||
}
|
||||
|
||||
40%, 80% {
|
||||
transform: rotate(10deg);
|
||||
}
|
||||
}
|
||||
|
||||
.github-corner {
|
||||
:hover .octo-arm {
|
||||
animation: octocat-wave 560ms ease-in-out;
|
||||
}
|
||||
|
||||
svg {
|
||||
color: white;
|
||||
fill: var(--theme-color);
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
z-index: $zindex-0;
|
||||
}
|
||||
|
||||
@include tablet-mobile() {
|
||||
@if hexo-config('local_search.enable') or hexo-config('algolia_search.enable') {
|
||||
display: none;
|
||||
}
|
||||
|
||||
svg {
|
||||
@if ($scheme == 'Pisces') or ($scheme == 'Gemini') {
|
||||
color: var(--theme-color);
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
|
||||
.github-corner:hover .octo-arm {
|
||||
animation: none;
|
||||
}
|
||||
|
||||
.github-corner .octo-arm {
|
||||
animation: octocat-wave 560ms ease-in-out;
|
||||
}
|
||||
}
|
||||
|
||||
@if $scheme == 'Mist' {
|
||||
@include mobile() {
|
||||
svg {
|
||||
top: inherit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
38
assets/css/_common/outline/header/index.scss
Normal file
38
assets/css/_common/outline/header/index.scss
Normal file
@@ -0,0 +1,38 @@
|
||||
// Header Section
|
||||
// --------------------------------------------------
|
||||
.headband {
|
||||
background: $headband-bg;
|
||||
height: $headband-height;
|
||||
|
||||
@include tablet-mobile() {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Fix issue #521
|
||||
header.header {
|
||||
background: $head-bg;
|
||||
}
|
||||
|
||||
.header-inner {
|
||||
@include main-container();
|
||||
}
|
||||
|
||||
.site-brand-container {
|
||||
display: flex;
|
||||
flex-shrink: 0;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.use-motion {
|
||||
header.header, .site-brand-container .toggle {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@import 'site-meta';
|
||||
@import 'site-nav';
|
||||
@import 'menu';
|
||||
|
||||
@import 'bookmark';
|
||||
@import 'github-banner';
|
||||
56
assets/css/_common/outline/header/menu.scss
Normal file
56
assets/css/_common/outline/header/menu.scss
Normal file
@@ -0,0 +1,56 @@
|
||||
// Menu
|
||||
// --------------------------------------------------
|
||||
.menu {
|
||||
margin: 0;
|
||||
padding: 1em 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.menu-item {
|
||||
display: inline-block;
|
||||
list-style: none;
|
||||
margin: 0 10px;
|
||||
|
||||
@include mobile() {
|
||||
display: block;
|
||||
margin-top: 10px;
|
||||
|
||||
&.menu-item-search {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
border-bottom: 0;
|
||||
display: block;
|
||||
font-size: $font-size-smaller;
|
||||
transition: border-color $transition-ease;
|
||||
|
||||
&:hover, &.menu-item-active {
|
||||
background: var(--menu-item-bg-color);
|
||||
}
|
||||
}
|
||||
|
||||
.fa, .fab, .far, .fas {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.badge {
|
||||
display: inline-block;
|
||||
font-weight: bold;
|
||||
line-height: 1;
|
||||
margin-left: .35em;
|
||||
margin-top: .35em;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
|
||||
@include mobile() {
|
||||
float: right;
|
||||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.use-motion .menu-item {
|
||||
visibility: hidden;
|
||||
}
|
||||
49
assets/css/_common/outline/header/site-meta.scss
Normal file
49
assets/css/_common/outline/header/site-meta.scss
Normal file
@@ -0,0 +1,49 @@
|
||||
.site-meta {
|
||||
flex-grow: 1;
|
||||
text-align: center;
|
||||
|
||||
@include mobile() {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
.custom-logo-image {
|
||||
margin-top: 20px;
|
||||
|
||||
@include tablet-mobile() {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.brand {
|
||||
border-bottom: 0;
|
||||
color: var(--brand-color);
|
||||
display: inline-block;
|
||||
padding: 0 40px;
|
||||
|
||||
&:hover {
|
||||
color: var(--brand-hover-color);
|
||||
}
|
||||
}
|
||||
|
||||
.site-title {
|
||||
font-family: $font-family-logo;
|
||||
font-size: $font-size-title;
|
||||
font-weight: normal;
|
||||
line-height: 1.5;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.site-subtitle {
|
||||
color: $subtitle-color;
|
||||
font-size: $font-size-subtitle;
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
.use-motion {
|
||||
.site-title, .site-subtitle, .custom-logo-image {
|
||||
opacity: 0;
|
||||
position: relative;
|
||||
top: -10px;
|
||||
}
|
||||
}
|
||||
24
assets/css/_common/outline/header/site-nav.scss
Normal file
24
assets/css/_common/outline/header/site-nav.scss
Normal file
@@ -0,0 +1,24 @@
|
||||
.site-nav-toggle, .site-nav-right {
|
||||
display: none;
|
||||
|
||||
@include mobile() {
|
||||
@include flex-column();
|
||||
}
|
||||
|
||||
.toggle {
|
||||
color: var(--text-color);
|
||||
padding: 10px;
|
||||
width: 22px;
|
||||
|
||||
.toggle-line {
|
||||
background: var(--text-color);
|
||||
border-radius: 1px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.site-nav {
|
||||
@include mobile() {
|
||||
@include site-nav-hide-by-default();
|
||||
}
|
||||
}
|
||||
5
assets/css/_common/outline/index.scss
Normal file
5
assets/css/_common/outline/index.scss
Normal file
@@ -0,0 +1,5 @@
|
||||
@import 'header';
|
||||
@import 'sidebar';
|
||||
@import 'footer';
|
||||
|
||||
@import 'mobile';
|
||||
85
assets/css/_common/outline/mobile.scss
Normal file
85
assets/css/_common/outline/mobile.scss
Normal file
@@ -0,0 +1,85 @@
|
||||
/*
|
||||
// < 767px
|
||||
@include mobile() {
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
@if hexo-config('mobile_layout_economy') {
|
||||
@include mobile-small() {
|
||||
// For Pisces & Gemini schemes only wider width (remove main blocks in Gemini).
|
||||
.main-inner {
|
||||
padding: initial !important;
|
||||
}
|
||||
|
||||
// For all schemes wider width.
|
||||
.posts-expand {
|
||||
.post-header {
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.post-block {
|
||||
margin-top: initial !important;
|
||||
// Inside posts blocks content padding (default 40px).
|
||||
padding: $content-mobile-padding 18px $content-mobile-padding !important;
|
||||
}
|
||||
|
||||
.post-body {
|
||||
// For headers narrow width.
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin: 20px 0 8px;
|
||||
}
|
||||
|
||||
// Rewrite paddings & margins inside tags.
|
||||
.note, .tabs .tab-content .tab-pane {
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin: 0 5px;
|
||||
}
|
||||
}
|
||||
|
||||
// For paragraphs narrow width.
|
||||
> p {
|
||||
margin: 0 0 10px;
|
||||
}
|
||||
|
||||
// Rewrite paddings & margins inside tags.
|
||||
.note > p, .tabs .tab-content .tab-pane > p {
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
img, video {
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
|
||||
.note {
|
||||
margin-bottom: 10px !important;
|
||||
padding: 10px !important;
|
||||
|
||||
@if hexo-config('note.icons') {
|
||||
&:not(.no-icon) {
|
||||
padding-left: 35px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.tabs .tab-content .tab-pane {
|
||||
padding: 10px 10px 0 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.post-eof {
|
||||
margin: 40px auto 20px !important;
|
||||
}
|
||||
|
||||
.pagination {
|
||||
margin-top: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
// < 413px
|
||||
@include mobile-smallest() {
|
||||
|
||||
}
|
||||
*/
|
||||
38
assets/css/_common/outline/sidebar/index.scss
Normal file
38
assets/css/_common/outline/sidebar/index.scss
Normal file
@@ -0,0 +1,38 @@
|
||||
.sidebar-inner {
|
||||
color: $grey-dark;
|
||||
// Init Sidebar & TOC inner dimensions on all pages and for all schemes.
|
||||
$offset : if(($scheme == 'Pisces') or ($scheme == 'Gemini'), $sidebar-offset, $sidebar-padding);
|
||||
max-height: calc(100vh - #{$offset * 2});
|
||||
padding: $sidebar-padding 10px;
|
||||
text-align: center;
|
||||
@include flex-column();
|
||||
}
|
||||
|
||||
.site-overview-item:not(:first-child) {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.cc-license {
|
||||
.cc-opacity {
|
||||
border-bottom: 0;
|
||||
opacity: .7;
|
||||
|
||||
&:hover {
|
||||
opacity: .9;
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
@import 'sidebar-author';
|
||||
@import 'sidebar-author-links';
|
||||
@import 'sidebar-button';
|
||||
@import 'sidebar-blogroll';
|
||||
@import 'sidebar-dimmer';
|
||||
@import 'sidebar-nav';
|
||||
@import 'sidebar-toggle';
|
||||
@import 'sidebar-toc';
|
||||
@import 'site-state';
|
||||
11
assets/css/_common/outline/sidebar/sidebar-author-links.scss
Normal file
11
assets/css/_common/outline/sidebar/sidebar-author-links.scss
Normal file
@@ -0,0 +1,11 @@
|
||||
.links-of-author {
|
||||
a {
|
||||
font-size: $font-size-smaller;
|
||||
}
|
||||
|
||||
@if not hexo-config('social_icons.icons_only') {
|
||||
.fa, .fab, .far, .fas {
|
||||
margin-right: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
29
assets/css/_common/outline/sidebar/sidebar-author.scss
Normal file
29
assets/css/_common/outline/sidebar/sidebar-author.scss
Normal file
@@ -0,0 +1,29 @@
|
||||
.site-author-image {
|
||||
border: $site-author-image-border-width solid $site-author-image-border-color;
|
||||
max-width: $site-author-image-width;
|
||||
padding: 2px;
|
||||
|
||||
@if hexo-config('avatar.rounded') {
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
@if hexo-config('avatar.rotated') {
|
||||
transition: transform 1s ease-out;
|
||||
|
||||
&:hover {
|
||||
transform: rotateZ(360deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.site-author-name {
|
||||
color: $site-author-name-color;
|
||||
font-weight: $site-author-name-weight;
|
||||
margin: $site-author-name-margin;
|
||||
}
|
||||
|
||||
.site-description {
|
||||
color: $site-description-color;
|
||||
font-size: $site-description-font-size;
|
||||
margin-top: $site-description-margin-top;
|
||||
}
|
||||
15
assets/css/_common/outline/sidebar/sidebar-blogroll.scss
Normal file
15
assets/css/_common/outline/sidebar/sidebar-blogroll.scss
Normal file
@@ -0,0 +1,15 @@
|
||||
.links-of-blogroll {
|
||||
font-size: $font-size-smaller;
|
||||
}
|
||||
|
||||
.links-of-blogroll-title {
|
||||
font-size: $font-size-small;
|
||||
font-weight: 600;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.links-of-blogroll-list {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
15
assets/css/_common/outline/sidebar/sidebar-button.scss
Normal file
15
assets/css/_common/outline/sidebar/sidebar-button.scss
Normal file
@@ -0,0 +1,15 @@
|
||||
.sidebar .sidebar-button {
|
||||
&:not(:first-child) {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
button {
|
||||
@include button($orange);
|
||||
border: 1px solid $orange;
|
||||
border-radius: 4px;
|
||||
|
||||
.fa, .fab, .far, .fas {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
24
assets/css/_common/outline/sidebar/sidebar-dimmer.scss
Normal file
24
assets/css/_common/outline/sidebar/sidebar-dimmer.scss
Normal file
@@ -0,0 +1,24 @@
|
||||
.sidebar-dimmer {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@include tablet-mobile() {
|
||||
.sidebar-dimmer {
|
||||
background: black;
|
||||
display: block;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
opacity: 0;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
transition: visibility .4s, opacity .4s;
|
||||
visibility: hidden;
|
||||
width: 100%;
|
||||
z-index: $zindex-1;
|
||||
|
||||
.sidebar-active & {
|
||||
opacity: .7;
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
||||
}
|
||||
57
assets/css/_common/outline/sidebar/sidebar-nav.scss
Normal file
57
assets/css/_common/outline/sidebar/sidebar-nav.scss
Normal file
@@ -0,0 +1,57 @@
|
||||
// Sidebar Navigation
|
||||
.sidebar-nav {
|
||||
display: none;
|
||||
margin: 0;
|
||||
padding-bottom: 20px;
|
||||
padding-left: 0;
|
||||
|
||||
.sidebar-nav-active & {
|
||||
display: block;
|
||||
}
|
||||
|
||||
li {
|
||||
border-bottom: 1px solid transparent;
|
||||
color: $sidebar-nav-color;
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
font-size: $font-size-small;
|
||||
|
||||
&.sidebar-nav-overview {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: $sidebar-nav-hover-color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-toc-active .sidebar-nav-toc, .sidebar-overview-active .sidebar-nav-overview {
|
||||
border-bottom-color: $sidebar-highlight;
|
||||
color: $sidebar-highlight;
|
||||
|
||||
&:hover {
|
||||
color: $sidebar-highlight;
|
||||
}
|
||||
}
|
||||
|
||||
// Need for Sidebar/TOC inner scrolling if content taller then viewport.
|
||||
.sidebar-panel-container {
|
||||
flex: 1;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.sidebar-panel {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.sidebar-overview-active .site-overview-wrap {
|
||||
// Flexbox layout makes it possible to reorder the child
|
||||
// elements of .site-overview-item through the `order` CSS property
|
||||
@include flex-column();
|
||||
}
|
||||
|
||||
.sidebar-toc-active .post-toc-wrap {
|
||||
display: block;
|
||||
}
|
||||
61
assets/css/_common/outline/sidebar/sidebar-toc.scss
Normal file
61
assets/css/_common/outline/sidebar/sidebar-toc.scss
Normal file
@@ -0,0 +1,61 @@
|
||||
@if hexo-config('toc.enable') {
|
||||
.post-toc {
|
||||
font-size: $font-size-small;
|
||||
|
||||
ol {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0 2px 5px 10px;
|
||||
text-align: left;
|
||||
|
||||
> ol {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
a {
|
||||
transition: all $transition-ease;
|
||||
}
|
||||
}
|
||||
|
||||
.nav-item {
|
||||
line-height: 1.8;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
|
||||
@if not hexo-config('toc.wrap') {
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
.nav {
|
||||
.nav-child {
|
||||
display: if(hexo-config('toc.expand_all'), block, none);
|
||||
}
|
||||
|
||||
.active > .nav-child {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.active-current > .nav-child {
|
||||
display: block;
|
||||
|
||||
> .nav-item {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.active > a {
|
||||
border-bottom-color: $sidebar-highlight;
|
||||
color: $sidebar-highlight;
|
||||
}
|
||||
|
||||
.active-current > a {
|
||||
color: $sidebar-highlight;
|
||||
|
||||
&:hover {
|
||||
color: $sidebar-highlight;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
21
assets/css/_common/outline/sidebar/sidebar-toggle.scss
Normal file
21
assets/css/_common/outline/sidebar/sidebar-toggle.scss
Normal file
@@ -0,0 +1,21 @@
|
||||
.sidebar-toggle {
|
||||
bottom: 45px;
|
||||
height: 12px;
|
||||
padding: 6px 5px;
|
||||
width: 14px;
|
||||
@include sidebar-toggle();
|
||||
}
|
||||
|
||||
.sidebar-toggle:hover .toggle-line {
|
||||
background: $sidebar-highlight;
|
||||
}
|
||||
|
||||
@media (any-hover: hover) {
|
||||
body:not(.sidebar-active) .sidebar-toggle:hover {
|
||||
@include toggle-arrow(hexo-config('sidebar.position'));
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar-active .sidebar-toggle {
|
||||
@include toggle-close(hexo-config('sidebar.position'));
|
||||
}
|
||||
28
assets/css/_common/outline/sidebar/site-state.scss
Normal file
28
assets/css/_common/outline/sidebar/site-state.scss
Normal file
@@ -0,0 +1,28 @@
|
||||
@if hexo-config('site_state') {
|
||||
.site-state {
|
||||
@include flex-wrap();
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
.site-state-item {
|
||||
// Fix issue #103
|
||||
// The click area of the link becomes smaller
|
||||
padding: 0 15px;
|
||||
|
||||
a {
|
||||
border-bottom: 0;
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.site-state-item-count {
|
||||
display: block;
|
||||
font-size: $site-state-item-count-font-size;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.site-state-item-name {
|
||||
color: $site-state-item-name-color;
|
||||
font-size: $site-state-item-name-font-size;
|
||||
}
|
||||
}
|
||||
99
assets/css/_common/scaffolding/base.scss
Normal file
99
assets/css/_common/scaffolding/base.scss
Normal file
@@ -0,0 +1,99 @@
|
||||
::selection {
|
||||
background: $selection-bg;
|
||||
color: $selection-color;
|
||||
}
|
||||
|
||||
html, body {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
background: var(--body-bg-color);
|
||||
box-sizing: border-box;
|
||||
color: var(--text-color);
|
||||
font-family: $font-family-base;
|
||||
font-size: $font-size-base;
|
||||
line-height: $line-height-base;
|
||||
min-height: 100%;
|
||||
position: relative;
|
||||
transition: padding $transition-ease;
|
||||
|
||||
@if hexo-config('body_scrollbar.overlay') {
|
||||
overflow-x: hidden;
|
||||
@supports (overflow-x: clip) {
|
||||
overflow-x: clip;
|
||||
}
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
@if hexo-config('body_scrollbar.stable') {
|
||||
overflow-y: scroll;
|
||||
}
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: $font-family-headings;
|
||||
font-weight: bold;
|
||||
line-height: 1.5;
|
||||
margin: 30px 0 15px;
|
||||
}
|
||||
|
||||
@for $headline from 1 through 6 {
|
||||
h#{$headline} {
|
||||
font-size: $font-size-headings-base - $font-size-headings-step * $headline;
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
|
||||
a {
|
||||
border-bottom: 1px solid $link-decoration-color;
|
||||
color: var(--link-color);
|
||||
// For a:not(:any-link)
|
||||
cursor: pointer;
|
||||
outline: 0;
|
||||
text-decoration: none;
|
||||
@include word-wrap();
|
||||
|
||||
&:hover {
|
||||
border-bottom-color: var(--link-hover-color);
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
}
|
||||
|
||||
iframe, img, video, embed {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
hr {
|
||||
background-image: repeating-linear-gradient(-45deg, $grey-lighter, $grey-lighter 4px, transparent 4px, transparent 8px);
|
||||
border: 0;
|
||||
height: 3px;
|
||||
margin: 40px 0;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 4px solid $grey-lighter;
|
||||
color: var(--blockquote-color);
|
||||
margin: 0;
|
||||
padding: 0 15px;
|
||||
|
||||
cite::before {
|
||||
content: '-';
|
||||
padding: 0 5px;
|
||||
}
|
||||
}
|
||||
|
||||
dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
dd {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
26
assets/css/_common/scaffolding/buttons.scss
Normal file
26
assets/css/_common/scaffolding/buttons.scss
Normal file
@@ -0,0 +1,26 @@
|
||||
.btn {
|
||||
background: var(--btn-default-bg);
|
||||
border: 2px solid var(--btn-default-border-color);
|
||||
border-radius: $btn-default-radius;
|
||||
color: var(--btn-default-color);
|
||||
display: inline-block;
|
||||
font-size: $font-size-small;
|
||||
line-height: 2;
|
||||
padding: 0 20px;
|
||||
transition: background-color $transition-ease;
|
||||
|
||||
&:hover {
|
||||
background: var(--btn-default-hover-bg);
|
||||
border-color: var(--btn-default-hover-border-color);
|
||||
color: var(--btn-default-hover-color);
|
||||
}
|
||||
|
||||
+ .btn {
|
||||
margin: 0 0 8px 8px;
|
||||
}
|
||||
|
||||
.fa-fw {
|
||||
text-align: left;
|
||||
width: (18em / 14);
|
||||
}
|
||||
}
|
||||
39
assets/css/_common/scaffolding/comments.scss
Normal file
39
assets/css/_common/scaffolding/comments.scss
Normal file
@@ -0,0 +1,39 @@
|
||||
.comments {
|
||||
margin-top: 60px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.comment-button-group {
|
||||
display: flex;
|
||||
flex-wrap: wrap-reverse;
|
||||
justify-content: center;
|
||||
margin: 1em 0;
|
||||
|
||||
.comment-button {
|
||||
margin: .1em .2em;
|
||||
|
||||
&.active {
|
||||
background: var(--btn-default-hover-bg);
|
||||
border-color: var(--btn-default-hover-border-color);
|
||||
color: var(--btn-default-hover-color);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.comment-position {
|
||||
display: none;
|
||||
|
||||
&.active {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.tabs-comment {
|
||||
margin-top: 4em;
|
||||
padding-top: 0;
|
||||
|
||||
.comments {
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
55
assets/css/_common/scaffolding/highlight/copy-code.scss
Normal file
55
assets/css/_common/scaffolding/highlight/copy-code.scss
Normal file
@@ -0,0 +1,55 @@
|
||||
.highlight:hover .copy-btn, pre:hover .copy-btn {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.copy-btn {
|
||||
color: $black-dim;
|
||||
cursor: pointer;
|
||||
line-height: 1.6;
|
||||
opacity: 0;
|
||||
padding: 2px 6px;
|
||||
position: absolute;
|
||||
transition: opacity $transition-ease;
|
||||
|
||||
@if hexo-config('codeblock.copy_button.style') == 'flat' {
|
||||
background: white;
|
||||
border: 0;
|
||||
font-size: $font-size-smaller;
|
||||
right: 0;
|
||||
top: 0;
|
||||
} @else if hexo-config('codeblock.copy_button.style') == 'mac' {
|
||||
color: var(--highlight-foreground);
|
||||
font-size: 14px;
|
||||
right: 0;
|
||||
top: 2px;
|
||||
} @else {
|
||||
background-color: $gainsboro;
|
||||
background-image: linear-gradient(#fcfcfc, $gainsboro);
|
||||
border: 1px solid #d5d5d5;
|
||||
border-radius: 3px;
|
||||
font-size: $font-size-smaller;
|
||||
right: 4px;
|
||||
top: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
@if hexo-config('codeblock.copy_button.style') == 'mac' {
|
||||
figure.highlight {
|
||||
border-radius: 5px;
|
||||
box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .4);
|
||||
padding-top: 30px;
|
||||
|
||||
.table-container {
|
||||
border-radius: 0 0 5px 5px;
|
||||
}
|
||||
|
||||
&::before {
|
||||
background: #fc625d;
|
||||
box-shadow: 20px 0 #fdbc40, 40px 0 #35cd4b;
|
||||
left: 12px;
|
||||
margin-top: -20px;
|
||||
position: absolute;
|
||||
@include round-icon(12px);
|
||||
}
|
||||
}
|
||||
}
|
||||
140
assets/css/_common/scaffolding/highlight/index.scss
Normal file
140
assets/css/_common/scaffolding/highlight/index.scss
Normal file
@@ -0,0 +1,140 @@
|
||||
// Use `@use` to fix issue #67
|
||||
@import '(theme.highlight.enable && theme.highlight.light.file) ? theme.highlight.light.file : null';
|
||||
@import '(theme.prism.enable && theme.prism.light) ? theme.prism.light : null';
|
||||
@import '(theme.prism.enable && theme.prism.number) ? theme.prism.number : null';
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
@import '(theme.darkmode && theme.highlight.enable && theme.highlight.dark.file) ? theme.highlight.dark.file : null';
|
||||
@import '(theme.darkmode && theme.prism.enable && theme.prism.dark) ? theme.prism.dark : null';
|
||||
}
|
||||
|
||||
@import 'theme.codeblock.copy_button.enable ? "copy-code" : null';
|
||||
|
||||
// Placeholder: %code-inline %code-block
|
||||
%code-inline {
|
||||
background: var(--highlight-background);
|
||||
color: var(--highlight-foreground);
|
||||
}
|
||||
|
||||
%code-block {
|
||||
@extend %code-inline;
|
||||
line-height: $line-height-code-block;
|
||||
margin: 0 auto 20px;
|
||||
}
|
||||
|
||||
%figcaption {
|
||||
background: var(--highlight-gutter-background);
|
||||
color: var(--highlight-foreground);
|
||||
display: flow-root;
|
||||
font-size: $table-font-size;
|
||||
line-height: 1.2;
|
||||
padding: .5em;
|
||||
|
||||
a {
|
||||
color: var(--highlight-foreground);
|
||||
float: right;
|
||||
|
||||
&:hover {
|
||||
border-bottom-color: var(--highlight-foreground);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pre, code {
|
||||
font-family: $code-font-family;
|
||||
}
|
||||
|
||||
code {
|
||||
@extend %code-inline;
|
||||
border-radius: 3px;
|
||||
font-size: $table-font-size;
|
||||
padding: 2px 4px;
|
||||
@include word-wrap();
|
||||
}
|
||||
|
||||
kbd {
|
||||
@extend %code-inline;
|
||||
border: 2px solid $grey-light;
|
||||
border-radius: .2em;
|
||||
box-shadow: .1em .1em .2em rgba(0, 0, 0, .1);
|
||||
font-family: inherit;
|
||||
padding: .1em .3em;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
// `highlight.line_number: false` and `highlight.wrap: false`
|
||||
// in Hexo config generates code.highlight elements
|
||||
figure.highlight {
|
||||
@extend %code-block;
|
||||
position: relative;
|
||||
|
||||
pre {
|
||||
border: 0;
|
||||
margin: 0;
|
||||
padding: 10px 0;
|
||||
}
|
||||
|
||||
table {
|
||||
border: 0;
|
||||
margin: 0;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
td {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
figcaption {
|
||||
@extend %figcaption;
|
||||
}
|
||||
|
||||
.gutter {
|
||||
@include disable-user-select();
|
||||
|
||||
pre {
|
||||
background: var(--highlight-gutter-background);
|
||||
color: var(--highlight-gutter-foreground);
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
.code pre {
|
||||
padding-left: 10px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
// See https://github.com/next-theme/hexo-theme-next/discussions/410
|
||||
.marked {
|
||||
background: rgba(0, 0, 0, .3);
|
||||
}
|
||||
}
|
||||
|
||||
// See https://github.com/hexojs/hexo-util/pull/229
|
||||
pre .caption, pre figcaption {
|
||||
@extend %figcaption;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.gist table {
|
||||
width: auto;
|
||||
|
||||
td {
|
||||
border: 0;
|
||||
}
|
||||
}
|
||||
|
||||
pre {
|
||||
@extend %code-block;
|
||||
overflow: auto;
|
||||
padding: 10px;
|
||||
position: relative;
|
||||
|
||||
code {
|
||||
background: none;
|
||||
padding: 0;
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
12
assets/css/_common/scaffolding/index.scss
Normal file
12
assets/css/_common/scaffolding/index.scss
Normal file
@@ -0,0 +1,12 @@
|
||||
//
|
||||
// Scaffolding
|
||||
// ==================================================
|
||||
@import 'normalize';
|
||||
@import 'base';
|
||||
@import 'tables';
|
||||
@import 'buttons';
|
||||
@import 'toggles';
|
||||
@import 'highlight';
|
||||
@import 'tags';
|
||||
@import 'pagination';
|
||||
@import 'comments';
|
||||
289
assets/css/_common/scaffolding/normalize.scss
vendored
Normal file
289
assets/css/_common/scaffolding/normalize.scss
vendored
Normal file
@@ -0,0 +1,289 @@
|
||||
/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
|
||||
/* Document
|
||||
========================================================================== */
|
||||
/**
|
||||
* 1. Correct the line height in all browsers.
|
||||
* 2. Prevent adjustments of font size after orientation changes in iOS.
|
||||
*/
|
||||
html {
|
||||
line-height: 1.15; /* 1 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/* Sections
|
||||
========================================================================== */
|
||||
/**
|
||||
* Remove the margin in all browsers.
|
||||
*/
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Render the `main` element consistently in IE.
|
||||
*/
|
||||
main {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the font size and margin on `h1` elements within `section` and
|
||||
* `article` contexts in Chrome, Firefox, and Safari.
|
||||
*/
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: .67em 0;
|
||||
}
|
||||
|
||||
/* Grouping content
|
||||
========================================================================== */
|
||||
/**
|
||||
* 1. Add the correct box sizing in Firefox.
|
||||
* 2. Show the overflow in Edge and IE.
|
||||
*/
|
||||
hr {
|
||||
box-sizing: content-box; /* 1 */
|
||||
height: 0; /* 1 */
|
||||
overflow: visible; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||
* 2. Correct the odd `em` font sizing in all browsers.
|
||||
*/
|
||||
pre {
|
||||
font-family: monospace, monospace; /* 1 */
|
||||
font-size: 1em; /* 2 */
|
||||
}
|
||||
|
||||
/* Text-level semantics
|
||||
========================================================================== */
|
||||
/**
|
||||
* Remove the gray background on active links in IE 10.
|
||||
*/
|
||||
a {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Remove the bottom border in Chrome 57-
|
||||
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
|
||||
*/
|
||||
abbr[title] {
|
||||
border-bottom: none; /* 1 */
|
||||
text-decoration: underline; /* 2 */
|
||||
text-decoration: underline dotted; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct font weight in Chrome, Edge, and Safari.
|
||||
*/
|
||||
b, strong {
|
||||
font-weight: bolder;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||
* 2. Correct the odd `em` font sizing in all browsers.
|
||||
*/
|
||||
code, kbd, samp {
|
||||
font-family: monospace, monospace; /* 1 */
|
||||
font-size: 1em; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct font size in all browsers.
|
||||
*/
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent `sub` and `sup` elements from affecting the line height in
|
||||
* all browsers.
|
||||
*/
|
||||
sub, sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -.25em;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -.5em;
|
||||
}
|
||||
|
||||
/* Embedded content
|
||||
========================================================================== */
|
||||
/**
|
||||
* Remove the border on images inside links in IE 10.
|
||||
*/
|
||||
img {
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
/* Forms
|
||||
========================================================================== */
|
||||
/**
|
||||
* 1. Change the font styles in all browsers.
|
||||
* 2. Remove the margin in Firefox and Safari.
|
||||
*/
|
||||
button, input, optgroup, select, textarea {
|
||||
font-family: inherit; /* 1 */
|
||||
font-size: 100%; /* 1 */
|
||||
line-height: 1.15; /* 1 */
|
||||
margin: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the overflow in IE.
|
||||
* 1. Show the overflow in Edge.
|
||||
*/
|
||||
button, input {
|
||||
/* 1 */
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inheritance of text transform in Edge, Firefox, and IE.
|
||||
* 1. Remove the inheritance of text transform in Firefox.
|
||||
*/
|
||||
button, select {
|
||||
/* 1 */
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the inability to style clickable types in iOS and Safari.
|
||||
*/
|
||||
button, [type='button'], [type='reset'], [type='submit'] {
|
||||
-webkit-appearance: button;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inner border and padding in Firefox.
|
||||
*/
|
||||
button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner {
|
||||
border-style: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore the focus styles unset by the previous rule.
|
||||
*/
|
||||
button:-moz-focusring, [type='button']:-moz-focusring, [type='reset']:-moz-focusring, [type='submit']:-moz-focusring {
|
||||
outline: 1px dotted ButtonText;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the padding in Firefox.
|
||||
*/
|
||||
fieldset {
|
||||
padding: .35em .75em .625em;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the text wrapping in Edge and IE.
|
||||
* 2. Correct the color inheritance from `fieldset` elements in IE.
|
||||
* 3. Remove the padding so developers are not caught out when they zero out
|
||||
* `fieldset` elements in all browsers.
|
||||
*/
|
||||
legend {
|
||||
box-sizing: border-box; /* 1 */
|
||||
color: inherit; /* 2 */
|
||||
display: table; /* 1 */
|
||||
max-width: 100%; /* 1 */
|
||||
padding: 0; /* 3 */
|
||||
white-space: normal; /* 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
|
||||
*/
|
||||
progress {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the default vertical scrollbar in IE 10+.
|
||||
*/
|
||||
textarea {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Add the correct box sizing in IE 10.
|
||||
* 2. Remove the padding in IE 10.
|
||||
*/
|
||||
[type='checkbox'], [type='radio'] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the cursor style of increment and decrement buttons in Chrome.
|
||||
*/
|
||||
[type='number']::-webkit-inner-spin-button, [type='number']::-webkit-outer-spin-button {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the odd appearance in Chrome and Safari.
|
||||
* 2. Correct the outline style in Safari.
|
||||
*/
|
||||
[type='search'] {
|
||||
outline-offset: -2px; /* 2 */
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inner padding in Chrome and Safari on macOS.
|
||||
*/
|
||||
[type='search']::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inability to style clickable types in iOS and Safari.
|
||||
* 2. Change font properties to `inherit` in Safari.
|
||||
*/
|
||||
::-webkit-file-upload-button {
|
||||
font: inherit; /* 2 */
|
||||
-webkit-appearance: button; /* 1 */
|
||||
}
|
||||
|
||||
/* Interactive
|
||||
========================================================================== */
|
||||
/*
|
||||
* Add the correct display in Edge, IE 10+, and Firefox.
|
||||
*/
|
||||
details {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/*
|
||||
* Add the correct display in all browsers.
|
||||
*/
|
||||
summary {
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/* Misc
|
||||
========================================================================== */
|
||||
/**
|
||||
* Add the correct display in IE 10+.
|
||||
*/
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct display in IE 10.
|
||||
*/
|
||||
[hidden] {
|
||||
display: none;
|
||||
}
|
||||
55
assets/css/_common/scaffolding/pagination.scss
Normal file
55
assets/css/_common/scaffolding/pagination.scss
Normal file
@@ -0,0 +1,55 @@
|
||||
%page-number-basic {
|
||||
display: inline-block;
|
||||
margin: -1px 10px 0;
|
||||
padding: 0 10px;
|
||||
|
||||
@include mobile() {
|
||||
margin: 0 5px;
|
||||
}
|
||||
}
|
||||
|
||||
%page-number-current {
|
||||
background: $pagination-active-bg;
|
||||
border-color: $pagination-active-border;
|
||||
color: $pagination-active-color;
|
||||
}
|
||||
|
||||
.pagination {
|
||||
border-top: 1px solid $pagination-border;
|
||||
margin: 120px 0 0;
|
||||
text-align: center;
|
||||
|
||||
.prev, .next, .page-number {
|
||||
@extend %page-number-basic;
|
||||
border-bottom: 0;
|
||||
border-top: 1px solid $pagination-link-border;
|
||||
transition: border-color $transition-ease;
|
||||
|
||||
&:hover {
|
||||
border-top-color: $pagination-link-hover-border;
|
||||
}
|
||||
}
|
||||
|
||||
@include mobile() {
|
||||
border-top: 0;
|
||||
|
||||
.prev, .next, .page-number {
|
||||
border-bottom: 1px solid $pagination-link-border;
|
||||
border-top: 0;
|
||||
|
||||
&:hover {
|
||||
border-bottom-color: $pagination-link-hover-border;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.space {
|
||||
@extend %page-number-basic;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.page-number.current {
|
||||
@extend %page-number-current;
|
||||
}
|
||||
}
|
||||
39
assets/css/_common/scaffolding/tables.scss
Normal file
39
assets/css/_common/scaffolding/tables.scss
Normal file
@@ -0,0 +1,39 @@
|
||||
.table-container {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
font-size: $table-font-size;
|
||||
margin: 0 0 20px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
tbody tr {
|
||||
&:nth-of-type(odd) {
|
||||
background: var(--table-row-odd-bg-color);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background: var(--table-row-hover-bg-color);
|
||||
}
|
||||
}
|
||||
|
||||
caption, th, td {
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
th, td {
|
||||
border: 1px solid $table-border-color;
|
||||
border-bottom: 3px solid $table-cell-border-bottom-color;
|
||||
}
|
||||
|
||||
th {
|
||||
font-weight: 700;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
td {
|
||||
border-bottom-width: 1px;
|
||||
}
|
||||
34
assets/css/_common/scaffolding/tags/blockquote-center.scss
Normal file
34
assets/css/_common/scaffolding/tags/blockquote-center.scss
Normal file
@@ -0,0 +1,34 @@
|
||||
// Blockquote with all children centered.
|
||||
.blockquote-center {
|
||||
border-left: 0;
|
||||
margin: 40px 0;
|
||||
padding: 0;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
|
||||
&::before, &::after {
|
||||
left: 0;
|
||||
line-height: 1;
|
||||
opacity: .6;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
&::before {
|
||||
border-top: 1px solid $grey-light;
|
||||
text-align: left;
|
||||
top: -20px;
|
||||
@include font-family-icons('\f10d');
|
||||
}
|
||||
|
||||
&::after {
|
||||
border-bottom: 1px solid $grey-light;
|
||||
bottom: -20px;
|
||||
text-align: right;
|
||||
@include font-family-icons('\f10e');
|
||||
}
|
||||
|
||||
p, div {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
20
assets/css/_common/scaffolding/tags/group-pictures.scss
Normal file
20
assets/css/_common/scaffolding/tags/group-pictures.scss
Normal file
@@ -0,0 +1,20 @@
|
||||
.group-picture {
|
||||
margin-bottom: 20px;
|
||||
|
||||
.group-picture-row {
|
||||
display: flex;
|
||||
gap: 3px;
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
.group-picture-column {
|
||||
flex: 1;
|
||||
|
||||
img {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
object-fit: cover;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
8
assets/css/_common/scaffolding/tags/index.scss
Normal file
8
assets/css/_common/scaffolding/tags/index.scss
Normal file
@@ -0,0 +1,8 @@
|
||||
@import 'blockquote-center';
|
||||
@import 'group-pictures';
|
||||
@import 'label';
|
||||
@import 'link-grid';
|
||||
@import 'mermaid';
|
||||
@import 'note';
|
||||
@import 'pdf';
|
||||
@import 'tabs';
|
||||
12
assets/css/_common/scaffolding/tags/label.scss
Normal file
12
assets/css/_common/scaffolding/tags/label.scss
Normal file
@@ -0,0 +1,12 @@
|
||||
@use 'sass:map';
|
||||
|
||||
.post-body .label {
|
||||
color: $text-color;
|
||||
padding: 0 2px;
|
||||
|
||||
@each $type in $note-types {
|
||||
&.#{$type} {
|
||||
background: map.get($label, $type);
|
||||
}
|
||||
}
|
||||
}
|
||||
113
assets/css/_common/scaffolding/tags/link-grid.scss
Normal file
113
assets/css/_common/scaffolding/tags/link-grid.scss
Normal file
@@ -0,0 +1,113 @@
|
||||
.post-body .link-grid {
|
||||
display: grid;
|
||||
// https://caniuse.com/mdn-css_properties_gap_grid_context
|
||||
grid-gap: 1.5rem;
|
||||
gap: 1.5rem;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
margin-bottom: 20px;
|
||||
padding: 1rem;
|
||||
|
||||
@include mobile() {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.link-grid-container {
|
||||
border: solid $grey-lighter;
|
||||
box-shadow: 1rem 1rem .5rem rgba(0, 0, 0, .5);
|
||||
min-height: 5rem;
|
||||
// Fix issue #30
|
||||
min-width: 0;
|
||||
padding: .5rem;
|
||||
position: relative;
|
||||
transition: background .3s;
|
||||
|
||||
&:hover {
|
||||
animation: next-shake .5s;
|
||||
background: var(--card-bg-color);
|
||||
}
|
||||
|
||||
&:active {
|
||||
box-shadow: .5rem .5rem .25rem rgba(0, 0, 0, .5);
|
||||
transform: translate(.2rem, .2rem);
|
||||
}
|
||||
|
||||
.link-grid-image {
|
||||
border: 1px solid $grey-lighter;
|
||||
border-radius: 50%;
|
||||
box-sizing: border-box;
|
||||
height: 5rem;
|
||||
padding: 3px;
|
||||
position: absolute;
|
||||
width: 5rem;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0 1rem 0 6rem;
|
||||
|
||||
&:first-of-type {
|
||||
font-size: 1.2em;
|
||||
}
|
||||
|
||||
&:last-of-type {
|
||||
font-size: .8em;
|
||||
line-height: 1.3rem;
|
||||
opacity: .7;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
border: 0;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes next-shake {
|
||||
0% {
|
||||
transform: translate(1pt, 1pt) rotate(0deg);
|
||||
}
|
||||
|
||||
10% {
|
||||
transform: translate(-1pt, -2pt) rotate(-1deg);
|
||||
}
|
||||
|
||||
20% {
|
||||
transform: translate(-3pt, 0pt) rotate(1deg);
|
||||
}
|
||||
|
||||
30% {
|
||||
transform: translate(3pt, 2pt) rotate(0deg);
|
||||
}
|
||||
|
||||
40% {
|
||||
transform: translate(1pt, -1pt) rotate(1deg);
|
||||
}
|
||||
|
||||
50% {
|
||||
transform: translate(-1pt, 2pt) rotate(-1deg);
|
||||
}
|
||||
|
||||
60% {
|
||||
transform: translate(-3pt, 1pt) rotate(0deg);
|
||||
}
|
||||
|
||||
70% {
|
||||
transform: translate(3pt, 1pt) rotate(-1deg);
|
||||
}
|
||||
|
||||
80% {
|
||||
transform: translate(-1pt, -1pt) rotate(1deg);
|
||||
}
|
||||
|
||||
90% {
|
||||
transform: translate(1pt, 2pt) rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: translate(1pt, -2pt) rotate(-1deg);
|
||||
}
|
||||
}
|
||||
6
assets/css/_common/scaffolding/tags/mermaid.scss
Normal file
6
assets/css/_common/scaffolding/tags/mermaid.scss
Normal file
@@ -0,0 +1,6 @@
|
||||
@if hexo-config('mermaid.enable') {
|
||||
.mermaid {
|
||||
margin-bottom: 20px;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
114
assets/css/_common/scaffolding/tags/note.scss
Normal file
114
assets/css/_common/scaffolding/tags/note.scss
Normal file
@@ -0,0 +1,114 @@
|
||||
@use 'sass:map';
|
||||
|
||||
@if hexo-config('note.style') != 'disabled' {
|
||||
.post-body .note {
|
||||
$note-icons : hexo-config('note.icons');
|
||||
$note-style : hexo-config('note.style');
|
||||
|
||||
border-radius: $note-border-radius;
|
||||
margin-bottom: 20px;
|
||||
padding: 1em;
|
||||
position: relative;
|
||||
|
||||
@if $note-style == 'simple' {
|
||||
border: 1px solid $gainsboro;
|
||||
border-left-width: 5px;
|
||||
}
|
||||
|
||||
@if $note-style == 'modern' {
|
||||
background: $whitesmoke;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
@if $note-style == 'flat' {
|
||||
background: lighten($gainsboro, 65%);
|
||||
border: initial;
|
||||
border-left: 3px solid $gainsboro;
|
||||
}
|
||||
|
||||
summary {
|
||||
cursor: pointer;
|
||||
outline: 0;
|
||||
|
||||
p {
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
|
||||
h2, h3, h4, h5, h6 {
|
||||
border-bottom: initial;
|
||||
margin: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
p, ul, ol, table, pre, blockquote, img {
|
||||
&:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@if $note-icons {
|
||||
&:not(.no-icon) {
|
||||
padding-left: 2.5em;
|
||||
|
||||
&::before {
|
||||
font-size: 1.5em;
|
||||
left: .3em;
|
||||
position: absolute;
|
||||
top: calc(50% - 1em);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@each $type in $note-types {
|
||||
&.#{$type} {
|
||||
@if $note-style == 'flat' {
|
||||
background: map.get($note-bg, $type);
|
||||
@if hexo-config('darkmode') {
|
||||
@media (prefers-color-scheme: dark) {
|
||||
background: mix(map.get($note-bg, $type), $body-bg-color-dark, 10%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if $note-style == 'modern' {
|
||||
background: map.get($note-modern-bg, $type);
|
||||
border-color: map.get($note-modern-border, $type);
|
||||
color: map.get($note-modern-text, $type);
|
||||
|
||||
a:not(.btn) {
|
||||
border-bottom-color: map.get($note-modern-text, $type);
|
||||
color: map.get($note-modern-text, $type);
|
||||
|
||||
&:hover {
|
||||
border-bottom-color: map.get($note-modern-hover, $type);
|
||||
color: map.get($note-modern-hover, $type);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if $note-style != 'modern' {
|
||||
border-left-color: map.get($note-border, $type);
|
||||
|
||||
h2, h3, h4, h5, h6 {
|
||||
color: map.get($note-text, $type);
|
||||
}
|
||||
}
|
||||
|
||||
@if $note-icons {
|
||||
&:not(.no-icon)::before {
|
||||
@include font-family-icons(map.get($note-icon, $type));
|
||||
|
||||
@if $note-style != 'modern' {
|
||||
color: map.get($note-text, $type);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
8
assets/css/_common/scaffolding/tags/pdf.scss
Normal file
8
assets/css/_common/scaffolding/tags/pdf.scss
Normal file
@@ -0,0 +1,8 @@
|
||||
@if hexo-config('pdf.enable') {
|
||||
.pdfobject-container {
|
||||
iframe, embed {
|
||||
height: convert(hexo-config('pdf.height'));
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
103
assets/css/_common/scaffolding/tags/tabs.scss
Normal file
103
assets/css/_common/scaffolding/tags/tabs.scss
Normal file
@@ -0,0 +1,103 @@
|
||||
.post-body .tabs {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.post-body .tabs, .tabs-comment {
|
||||
padding-top: 10px;
|
||||
|
||||
ul.nav-tabs {
|
||||
background: if(($scheme == 'Muse') or ($scheme == 'Mist'), var(--body-bg-color), var(--content-bg-color));
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
position: -webkit-sticky;
|
||||
position: sticky;
|
||||
top: 0;
|
||||
// Fix issue #398
|
||||
z-index: $zindex-0;
|
||||
|
||||
@include mobile-smallest() {
|
||||
display: block;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
li.tab {
|
||||
border-bottom: 1px solid $grey-lighter;
|
||||
border-left: 1px solid transparent;
|
||||
border-right: 1px solid transparent;
|
||||
border-radius: $tbr $tbr 0 0;
|
||||
border-top: 3px solid transparent;
|
||||
flex-grow: 1;
|
||||
list-style-type: none;
|
||||
|
||||
@include mobile-smallest() {
|
||||
border-bottom: 1px solid transparent;
|
||||
border-left: 3px solid transparent;
|
||||
border-right: 1px solid transparent;
|
||||
border-top: 1px solid transparent;
|
||||
}
|
||||
|
||||
@include mobile-smallest() {
|
||||
border-radius: $tbr;
|
||||
}
|
||||
|
||||
@if hexo-config('tabs.transition.tabs') {
|
||||
transition: all $transition-ease-out;
|
||||
}
|
||||
|
||||
a {
|
||||
border-bottom: initial;
|
||||
display: block;
|
||||
line-height: 1.8;
|
||||
padding: .25em .75em;
|
||||
text-align: center;
|
||||
|
||||
i {
|
||||
width: (18em / 14);
|
||||
}
|
||||
|
||||
@if hexo-config('tabs.transition.labels') {
|
||||
transition: all $transition-ease-out;
|
||||
}
|
||||
}
|
||||
|
||||
&.active {
|
||||
border-bottom-color: transparent;
|
||||
border-left-color: $table-border-color;
|
||||
border-right-color: $table-border-color;
|
||||
border-top-color: $orange;
|
||||
|
||||
@include mobile-smallest() {
|
||||
border-bottom-color: $table-border-color;
|
||||
border-left-color: $orange;
|
||||
border-right-color: $table-border-color;
|
||||
border-top-color: $table-border-color;
|
||||
}
|
||||
|
||||
a {
|
||||
cursor: default;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.tab-content {
|
||||
border: 1px solid $table-border-color;
|
||||
border-radius: 0 0 $tbr $tbr;
|
||||
border-top-color: transparent;
|
||||
|
||||
@include mobile-smallest() {
|
||||
border-radius: $tbr;
|
||||
border-top-color: $table-border-color;
|
||||
}
|
||||
|
||||
.tab-pane {
|
||||
padding: 20px 20px 0;
|
||||
|
||||
&:not(.active) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
26
assets/css/_common/scaffolding/toggles.scss
Normal file
26
assets/css/_common/scaffolding/toggles.scss
Normal file
@@ -0,0 +1,26 @@
|
||||
.toggle {
|
||||
line-height: 0;
|
||||
|
||||
.toggle-line {
|
||||
background: white;
|
||||
display: block;
|
||||
height: 2px;
|
||||
left: 0;
|
||||
position: relative;
|
||||
top: 0;
|
||||
transition: all .4s;
|
||||
width: 100%;
|
||||
|
||||
&:not(:first-child) {
|
||||
margin-top: 3px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.toggle.toggle-arrow {
|
||||
@include toggle-arrow(hexo-config('sidebar.position'));
|
||||
}
|
||||
|
||||
.toggle.toggle-close {
|
||||
@include toggle-close(hexo-config('sidebar.position'));
|
||||
}
|
||||
Reference in New Issue
Block a user