jekyll-theme-jsblog 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +23 -0
- data/README.md +341 -0
- data/_includes/custom_comments_provider.html +3 -0
- data/_includes/fonts.html +2 -0
- data/_includes/footer.html +11 -0
- data/_includes/footer_content.html +5 -0
- data/_includes/google_analytics.html +13 -0
- data/_includes/head.html +78 -0
- data/_includes/head_custom.html +0 -0
- data/_includes/header.html +20 -0
- data/_includes/pagination.html +11 -0
- data/_layouts/default.html +20 -0
- data/_layouts/feed.xml +97 -0
- data/_layouts/home.html +48 -0
- data/_layouts/page.html +20 -0
- data/_layouts/post.html +27 -0
- data/_sass/jsblog.scss +101 -0
- data/_sass/jsblog/_base.scss +236 -0
- data/_sass/jsblog/_layout.scss +300 -0
- data/_sass/jsblog/_syntax-highlighting.scss +72 -0
- data/assets/main.scss +58 -0
- metadata +135 -0
File without changes
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<header class="site-header">
|
2
|
+
|
3
|
+
<div class="wrapper">
|
4
|
+
|
5
|
+
<a class="site-title" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
|
6
|
+
|
7
|
+
<nav class="site-nav">
|
8
|
+
{% for link in site.data.navigation.main %}
|
9
|
+
{% if link.url contains "http" %}
|
10
|
+
{% assign url = link.url %}
|
11
|
+
{% else %}
|
12
|
+
{% assign url = link.url | relative_url %}
|
13
|
+
{% endif %}
|
14
|
+
<a class="page-link" href="{{ url }}">{{ link.title }}</a>
|
15
|
+
{% endfor %}
|
16
|
+
</nav>
|
17
|
+
|
18
|
+
</div>
|
19
|
+
|
20
|
+
</header>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
{% if paginator.total_pages > 1 %}
|
2
|
+
<div class="pagination">
|
3
|
+
{% if paginator.next_page %}
|
4
|
+
<a class="previous" href="{{ paginator.next_page_path | relative_url }}">« Older</a>
|
5
|
+
{% endif %}
|
6
|
+
|
7
|
+
{% if paginator.previous_page %}
|
8
|
+
<a class="next" href="{{ paginator.previous_page_path | relative_url }}">Newer »</a>
|
9
|
+
{% endif %}
|
10
|
+
</div>
|
11
|
+
{% endif %}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="{{ page.lang | default: site.lang | default: "en" }}">
|
3
|
+
|
4
|
+
{% include head.html %}
|
5
|
+
|
6
|
+
<body>
|
7
|
+
|
8
|
+
{% include header.html %}
|
9
|
+
|
10
|
+
<main class="page-content" aria-label="Content">
|
11
|
+
<div class="wrapper">
|
12
|
+
{{ content }}
|
13
|
+
</div>
|
14
|
+
</main>
|
15
|
+
|
16
|
+
{% include footer.html %}
|
17
|
+
|
18
|
+
</body>
|
19
|
+
|
20
|
+
</html>
|
data/_layouts/feed.xml
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
---
|
2
|
+
layout: null
|
3
|
+
---
|
4
|
+
<?xml version="1.0" encoding="utf-8"?>
|
5
|
+
<feed xmlns="http://www.w3.org/2005/Atom"{% if site.lang %} xml:lang="{{ site.lang }}"{% endif %}>
|
6
|
+
<generator uri="http://jekyllrb.com" version="{{ jekyll.version }}">Jekyll</generator>
|
7
|
+
{% assign feed_path = "/feed.xml" %}
|
8
|
+
{% if site.feed and site.feed.path %}
|
9
|
+
{% assign feed_path = site.feed.path %}
|
10
|
+
{% endif %}
|
11
|
+
<link href="{{ feed_path | absolute_url }}" rel="self" type="application/atom+xml" />
|
12
|
+
<link href="{{ '/' | absolute_url }}" rel="alternate" type="text/html" {% if site.lang %}hreflang="{{ site.lang }}" {% endif %}/>
|
13
|
+
<updated>{{ site.time | date_to_xmlschema }}</updated>
|
14
|
+
<id>{{ '/' | absolute_url | xml_escape }}/</id>
|
15
|
+
|
16
|
+
{% if site.title %}
|
17
|
+
<title type="html">{{ site.title | smartify | xml_escape }}</title>
|
18
|
+
{% elsif site.name %}
|
19
|
+
<title type="html">{{ site.name | smartify | xml_escape }}</title>
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
{% if site.description %}
|
23
|
+
<subtitle>{{ site.description | xml_escape }}</subtitle>
|
24
|
+
{% endif %}
|
25
|
+
|
26
|
+
{% if site.author %}
|
27
|
+
<author>
|
28
|
+
<name>{{ site.author.name | default: site.author | xml_escape }}</name>
|
29
|
+
{% if site.author.email %}
|
30
|
+
<email>{{ site.author.email | xml_escape }}</email>
|
31
|
+
{% endif %}
|
32
|
+
{% if site.author.uri %}
|
33
|
+
<uri>{{ site.author.uri | xml_escape }}</uri>
|
34
|
+
{% endif %}
|
35
|
+
</author>
|
36
|
+
{% endif %}
|
37
|
+
|
38
|
+
{% for post in site.posts limit: 20 %}
|
39
|
+
{% unless post.draft %}
|
40
|
+
<entry{% if post.lang %} xml:lang="{{ post.lang }}"{% endif %}>
|
41
|
+
{% if post.external-url %}
|
42
|
+
<title type="html">{{ post.title | append: " →" | smartify | strip_html | normalize_whitespace | xml_escape }}</title>
|
43
|
+
{% else %}
|
44
|
+
<title type="html">{{ post.title | smartify | strip_html | normalize_whitespace | xml_escape }}</title>
|
45
|
+
{% endif %}
|
46
|
+
{% if post.external-url %}
|
47
|
+
<link href="{{ post.external-url }}" rel="alternate" type="text/html" />
|
48
|
+
<link href="{{ post.url | absolute_url }}" rel="related" type="text/html" title="{{ post.title | xml_escape }}" />
|
49
|
+
{% else %}
|
50
|
+
<link href="{{ post.url | absolute_url }}" rel="alternate" type="text/html" title="{{ post.title | xml_escape }}" />
|
51
|
+
{% endif %}
|
52
|
+
<published>{{ post.date | date_to_xmlschema }}</published>
|
53
|
+
<updated>{{ post.last_modified_at | default: post.date | date_to_xmlschema }}</updated>
|
54
|
+
<id>{{ post.id | absolute_url | xml_escape }}</id>
|
55
|
+
<content type="html" xml:base="{{ post.url | absolute_url | xml_escape }}">{{ post.content | strip | xml_escape }}</content>
|
56
|
+
|
57
|
+
{% assign post_author = post.author | default: post.authors[0] | default: site.author %}
|
58
|
+
{% assign post_author = site.data.authors[post_author] | default: post_author %}
|
59
|
+
{% assign post_author_email = post_author.email | default: nil %}
|
60
|
+
{% assign post_author_uri = post_author.uri | default: nil %}
|
61
|
+
{% assign post_author_name = post_author.name | default: post_author %}
|
62
|
+
|
63
|
+
{% if post_author %}
|
64
|
+
<author>
|
65
|
+
<name>{{ post_author_name | xml_escape }}</name>
|
66
|
+
{% if post_author_email %}
|
67
|
+
<email>{{ post_author_email | xml_escape }}</email>
|
68
|
+
{% endif %}
|
69
|
+
{% if post_author_uri %}
|
70
|
+
<uri>{{ post_author_uri | xml_escape }}</uri>
|
71
|
+
{% endif %}
|
72
|
+
</author>
|
73
|
+
{% endif %}
|
74
|
+
|
75
|
+
{% for category in post.categories %}
|
76
|
+
<category term="{{ category | xml_escape }}" />
|
77
|
+
{% endfor %}
|
78
|
+
|
79
|
+
{% for tag in post.tags %}
|
80
|
+
<category term="{{ tag | xml_escape }}" />
|
81
|
+
{% endfor %}
|
82
|
+
|
83
|
+
{% if post.excerpt and post.excerpt != empty %}
|
84
|
+
<summary type="html">{{ post.excerpt | strip_html | normalize_whitespace | xml_escape }}</summary>
|
85
|
+
{% endif %}
|
86
|
+
|
87
|
+
{% assign post_image = post.twitter_card.image | default: post.facebook.image %}
|
88
|
+
{% if post_image %}
|
89
|
+
{% unless post_image contains "://" %}
|
90
|
+
{% assign post_image = post_image | absolute_url | xml_escape %}
|
91
|
+
{% endunless %}
|
92
|
+
<media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="{{ post_image }}" />
|
93
|
+
{% endif %}
|
94
|
+
</entry>
|
95
|
+
{% endunless %}
|
96
|
+
{% endfor %}
|
97
|
+
</feed>
|
data/_layouts/home.html
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="home">
|
6
|
+
|
7
|
+
{{ content }}
|
8
|
+
|
9
|
+
{% capture site_lang %}{{ site.lang | default: "en" }}{% endcapture %}
|
10
|
+
|
11
|
+
<ul class="post-list">
|
12
|
+
{% for post in paginator.posts %}
|
13
|
+
{% capture post_lang %}{{ post.lang | default: site_lang }}{% endcapture %}
|
14
|
+
{% capture lang %}{% if post_lang != site_lang %}{{ post_lang }}{% endif %}{% endcapture %}
|
15
|
+
|
16
|
+
<li{% if lang != empty %} lang="{{ lang }}"{% endif %}>
|
17
|
+
<header class="post-header">
|
18
|
+
<h1 class="post-title">
|
19
|
+
{% if post.external-url %}
|
20
|
+
<a class="post-link" href="{{ post.external-url }}">{{ post.title | escape }} →</a>
|
21
|
+
{% else %}
|
22
|
+
<a class="post-link" href="{{ post.url | relative_url }}">{{ post.title | escape }}</a>
|
23
|
+
{% endif %}
|
24
|
+
</h1>
|
25
|
+
|
26
|
+
<p class="post-meta">
|
27
|
+
{{ post.date | date: "%b %-d, %Y" }}
|
28
|
+
{% if post.external-url %}
|
29
|
+
• <a href="{{ post.url | relative_url }}">Permalink</a>
|
30
|
+
{% endif %}
|
31
|
+
</p>
|
32
|
+
</header>
|
33
|
+
|
34
|
+
<div class="post-content">
|
35
|
+
{{ post.excerpt }}
|
36
|
+
</div>
|
37
|
+
{% if post.content contains site.excerpt_separator %}
|
38
|
+
<p class="post-continue">
|
39
|
+
<a href="{{ post.url | relative_url }}">Read on →</a>
|
40
|
+
</p>
|
41
|
+
{% endif %}
|
42
|
+
</li>
|
43
|
+
{% endfor %}
|
44
|
+
</ul>
|
45
|
+
|
46
|
+
{% include pagination.html %}
|
47
|
+
|
48
|
+
</div>
|
data/_layouts/page.html
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<article class="post">
|
5
|
+
|
6
|
+
<header class="post-header">
|
7
|
+
<h1 class="post-title">{{ page.title | escape }}</h1>
|
8
|
+
</header>
|
9
|
+
|
10
|
+
<div class="post-content">
|
11
|
+
{{ content }}
|
12
|
+
</div>
|
13
|
+
|
14
|
+
{% if site.comments == true and page.comments != false %}
|
15
|
+
<div class="post-comments">
|
16
|
+
{% include custom_comments_provider.html %}
|
17
|
+
</div>
|
18
|
+
{% endif %}
|
19
|
+
|
20
|
+
</article>
|
data/_layouts/post.html
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<article class="post" itemscope itemtype="http://schema.org/BlogPosting">
|
5
|
+
|
6
|
+
<header class="post-header">
|
7
|
+
{% if page.external-url %}
|
8
|
+
<h1 class="post-title" itemprop="name headline"><a href="{{ page.external-url }}">{{ page.title | escape }} →</a></h1>
|
9
|
+
{% else %}
|
10
|
+
<h1 class="post-title" itemprop="name headline">{{ page.title | escape }}</h1>
|
11
|
+
{% endif %}
|
12
|
+
<p class="post-meta"><time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">{{ page.date | date: "%b %-d, %Y" }}</time>{% if page.author %} • <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span itemprop="name">{{ page.author }}</span></span>{% endif %}</p>
|
13
|
+
</header>
|
14
|
+
|
15
|
+
<hr>
|
16
|
+
|
17
|
+
<div class="post-content" itemprop="articleBody">
|
18
|
+
{{ content }}
|
19
|
+
</div>
|
20
|
+
|
21
|
+
{% if site.comments == true and page.comments != false %}
|
22
|
+
<div class="post-comments" itemprop="comment">
|
23
|
+
{% include custom_comments_provider.html %}
|
24
|
+
</div>
|
25
|
+
{% endif %}
|
26
|
+
|
27
|
+
</article>
|
data/_sass/jsblog.scss
ADDED
@@ -0,0 +1,101 @@
|
|
1
|
+
// Font Families
|
2
|
+
$base-font-family: -apple-system-font, BlinkMacSystemFont, "San Francisco", "Helvetica Neue", Helvetica, Arial, sans-serif !default;
|
3
|
+
|
4
|
+
$monospace-font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace !default;
|
5
|
+
|
6
|
+
// Site Wide Variables
|
7
|
+
$site-header-background-color: #161616 !default;
|
8
|
+
$site-header-text-color: #ffffff !default;
|
9
|
+
$site-header-text-color-visited: darken(#828282, 25%); // --grey-color-dark in light mode
|
10
|
+
$site-title-font-size: 28px !default;
|
11
|
+
$site-footer-font-size: 16px !default;
|
12
|
+
|
13
|
+
// Font Sizes
|
14
|
+
// $title-large-font-size: 1px !default;
|
15
|
+
$title-font-size: 42px !default;
|
16
|
+
$title-medium-font-size: 32px !default;
|
17
|
+
$title-small-font-size: 27px !default;
|
18
|
+
|
19
|
+
$subtitle-font-size: 24px !default;
|
20
|
+
$subtitle-small-font-size: 22px !default;
|
21
|
+
|
22
|
+
$meta-font-size: 21px !default;
|
23
|
+
$meta-small-font-size: 19px !default;
|
24
|
+
|
25
|
+
$lead-font-size: 20px !default;
|
26
|
+
$lead-small-font-size: 18px !default;
|
27
|
+
|
28
|
+
$base-font-size: 17px !default;
|
29
|
+
$caption-font-size: 17px !default;
|
30
|
+
$blockquote-font-size: 18px !default;
|
31
|
+
$small-font-size: $base-font-size * 0.875 !default;
|
32
|
+
$nav-font-size: 16px !default;
|
33
|
+
|
34
|
+
// Font Variables
|
35
|
+
$base-font-weight: 400 !default;
|
36
|
+
$heavy-font-weight: 600 !default;
|
37
|
+
$base-line-height: 1.5 !default;
|
38
|
+
|
39
|
+
// Spacing/Padding
|
40
|
+
$spacing-unit: 20px !default;
|
41
|
+
$page-content-padding: 80px !default;
|
42
|
+
|
43
|
+
// Colors
|
44
|
+
$grey-color: #828282 !default;
|
45
|
+
$brand-color: #2568ba !default;
|
46
|
+
$a-color: #0070c9 !default;
|
47
|
+
$a-hover-opacity: .65 !default;
|
48
|
+
|
49
|
+
// Width of the content area
|
50
|
+
$content-width: 1080px !default;
|
51
|
+
$on-palm: 692px !default;
|
52
|
+
$on-laptop: 980px !default;
|
53
|
+
$on-medium: 1068px !default;
|
54
|
+
$on-small: 735px !default;
|
55
|
+
|
56
|
+
// Variables that change with dark mode
|
57
|
+
:root {
|
58
|
+
--text-color: #333333;
|
59
|
+
--dim-text-color: #ffffff;
|
60
|
+
--background-color: #ffffff;
|
61
|
+
--footer-background-color: #f2f2f2;
|
62
|
+
--footer-text-color: $grey-color;
|
63
|
+
--grey-color-light: lighten(#828282, 40%); // Use the $grey-color as base
|
64
|
+
--grey-color-lighter: lighten(#828282, 50%); // Use the $grey-color as base
|
65
|
+
--grey-color-dark: darken(#828282, 25%); // Use the $grey-color as base
|
66
|
+
--grey-color-darker: darken(#828282, 35%); // Use the $grey-color as base
|
67
|
+
}
|
68
|
+
|
69
|
+
@media (prefers-color-scheme: dark) {
|
70
|
+
:root {
|
71
|
+
--text-color: #f2f2f2;
|
72
|
+
--dim-text-color: #000000;
|
73
|
+
--background-color: #2C2C2C;
|
74
|
+
--footer-background-color: #414141;
|
75
|
+
--footer-text-color: lighten(#828282, 40%); // Use the $grey-color as base
|
76
|
+
--grey-color-light: darken(#828282, 25%); // Use the $grey-color as base
|
77
|
+
--grey-color-lighter: darken(#828282, 35%); // Use the $grey-color as base
|
78
|
+
--grey-color-dark: lighten(#828282, 40%); // Use the $grey-color as base
|
79
|
+
--grey-color-darker: lighten(#828282, 50%); // Use the $grey-color as base
|
80
|
+
}
|
81
|
+
}
|
82
|
+
|
83
|
+
// Use media queries like this:
|
84
|
+
// @include media-query($on-palm) {
|
85
|
+
// .wrapper {
|
86
|
+
// padding-right: $spacing-unit / 2;
|
87
|
+
// padding-left: $spacing-unit / 2;
|
88
|
+
// }
|
89
|
+
// }
|
90
|
+
// @mixin media-query($device) {
|
91
|
+
// @media screen and (max-width: $device) {
|
92
|
+
// @content;
|
93
|
+
// }
|
94
|
+
// }
|
95
|
+
|
96
|
+
// Import partials.
|
97
|
+
@import
|
98
|
+
"jsblog/base",
|
99
|
+
"jsblog/layout",
|
100
|
+
"jsblog/syntax-highlighting"
|
101
|
+
;
|
@@ -0,0 +1,236 @@
|
|
1
|
+
/**
|
2
|
+
* Reset some basic elements
|
3
|
+
*/
|
4
|
+
body, h1, h2, h3, h4, h5, h6,
|
5
|
+
p, blockquote, pre, hr,
|
6
|
+
dl, dd, ol, ul, figure {
|
7
|
+
margin: 0;
|
8
|
+
padding: 0;
|
9
|
+
}
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
/**
|
14
|
+
* Basic styling
|
15
|
+
*/
|
16
|
+
html {
|
17
|
+
position: relative;
|
18
|
+
min-height: 100%;
|
19
|
+
}
|
20
|
+
|
21
|
+
body {
|
22
|
+
font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;
|
23
|
+
color: var(--text-color);
|
24
|
+
background-color: var(--background-color);
|
25
|
+
-webkit-text-size-adjust: 100%;
|
26
|
+
-webkit-font-feature-settings: "kern" 1;
|
27
|
+
-moz-font-feature-settings: "kern" 1;
|
28
|
+
-o-font-feature-settings: "kern" 1;
|
29
|
+
font-feature-settings: "kern" 1;
|
30
|
+
font-kerning: normal;
|
31
|
+
letter-spacing: -.022em;
|
32
|
+
margin-bottom: 60px;
|
33
|
+
word-wrap: break-word;
|
34
|
+
}
|
35
|
+
|
36
|
+
table {
|
37
|
+
width: 100%;
|
38
|
+
margin: 0 0 20px 0;
|
39
|
+
text-align: left;
|
40
|
+
}
|
41
|
+
|
42
|
+
/**
|
43
|
+
* Set `margin-bottom` to maintain vertical rhythm
|
44
|
+
*/
|
45
|
+
h1, h2, h3, h4, h5, h6,
|
46
|
+
p, pre, blockquote,
|
47
|
+
ul, ol, dl,
|
48
|
+
%vertical-rhythm {
|
49
|
+
margin-bottom: $spacing-unit / 2;
|
50
|
+
}
|
51
|
+
|
52
|
+
p+h1, ul+h1, ol+h1, p+h2, ul+h2, ol+h2, p+h3, ul+h3, ol+h3, p+h4, ul+h4, ol+h4, p+h5, ul+h5, ol+h5, p+h6, ul+h6, ol+h6 {
|
53
|
+
margin-top: 1.4em;
|
54
|
+
}
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
/**
|
59
|
+
* Images
|
60
|
+
*/
|
61
|
+
img {
|
62
|
+
max-width: 100%;
|
63
|
+
vertical-align: middle;
|
64
|
+
}
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
/**
|
69
|
+
* Figures
|
70
|
+
*/
|
71
|
+
figure {
|
72
|
+
text-align: center;
|
73
|
+
margin-top: 40px;
|
74
|
+
margin-bottom: 40px;
|
75
|
+
}
|
76
|
+
figure > img {
|
77
|
+
-webkit-backface-visibility: hidden;
|
78
|
+
backface-visibility: hidden;
|
79
|
+
box-sizing: border-box;
|
80
|
+
display: block;
|
81
|
+
max-width: 100%;
|
82
|
+
height: auto;
|
83
|
+
margin: 0;
|
84
|
+
}
|
85
|
+
figcaption {
|
86
|
+
font-size: $caption-font-size;
|
87
|
+
line-height: 1.52947;
|
88
|
+
font-weight: 600;
|
89
|
+
letter-spacing: -.021em;
|
90
|
+
margin-top: 10px;
|
91
|
+
margin-bottom: 15px;
|
92
|
+
text-align: left
|
93
|
+
}
|
94
|
+
|
95
|
+
/**
|
96
|
+
* Lists
|
97
|
+
*/
|
98
|
+
ul, ol {
|
99
|
+
margin-left: 1.17647em;
|
100
|
+
}
|
101
|
+
|
102
|
+
li {
|
103
|
+
> ul,
|
104
|
+
> ol {
|
105
|
+
margin-bottom: 0;
|
106
|
+
}
|
107
|
+
}
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
/**
|
112
|
+
* Headings
|
113
|
+
*/
|
114
|
+
h1, h2, h3, h4, h5, h6 {
|
115
|
+
font-weight: $heavy-font-weight;
|
116
|
+
|
117
|
+
code {
|
118
|
+
font-size: inherit;
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
122
|
+
// h1 { font-size: 2.2em; }
|
123
|
+
// h2 { font-size: 1.7em; }
|
124
|
+
// h3 { font-size: 1.17em; }
|
125
|
+
// h4 { font-size: 1.12em; }
|
126
|
+
// h5 { font-size: .83em; }
|
127
|
+
// h6 { font-size: .75em; }
|
128
|
+
|
129
|
+
/**
|
130
|
+
* Links
|
131
|
+
*/
|
132
|
+
a {
|
133
|
+
color: $brand-color;
|
134
|
+
text-decoration: none;
|
135
|
+
|
136
|
+
&:visited {
|
137
|
+
color: darken($brand-color, 10%);
|
138
|
+
}
|
139
|
+
|
140
|
+
&:hover {
|
141
|
+
color: var(--text-color);
|
142
|
+
opacity: $a-hover-opacity;
|
143
|
+
}
|
144
|
+
}
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
/**
|
149
|
+
* Blockquotes
|
150
|
+
*/
|
151
|
+
blockquote {
|
152
|
+
color: $grey-color;
|
153
|
+
border-left: 4px solid var(--grey-color-light);
|
154
|
+
padding-left: $spacing-unit / 2;
|
155
|
+
font-size: $blockquote-font-size;
|
156
|
+
letter-spacing: -1px;
|
157
|
+
font-style: italic;
|
158
|
+
|
159
|
+
> :last-child {
|
160
|
+
margin-bottom: 0;
|
161
|
+
}
|
162
|
+
}
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
/**
|
167
|
+
* Rules
|
168
|
+
*/
|
169
|
+
hr {
|
170
|
+
border: 0;
|
171
|
+
height: 1px;
|
172
|
+
background: #d6d6d6;
|
173
|
+
margin: 65px 0
|
174
|
+
}
|
175
|
+
|
176
|
+
|
177
|
+
|
178
|
+
/**
|
179
|
+
* Code formatting
|
180
|
+
*/
|
181
|
+
pre,
|
182
|
+
code {
|
183
|
+
font-family: $monospace-font-family;
|
184
|
+
font-size: 13px;
|
185
|
+
background-color: var(--grey-color-lighter);
|
186
|
+
}
|
187
|
+
|
188
|
+
code {
|
189
|
+
border: 0;
|
190
|
+
padding: 1px 5px;
|
191
|
+
}
|
192
|
+
|
193
|
+
pre {
|
194
|
+
padding: 8px 12px;
|
195
|
+
overflow-x: auto;
|
196
|
+
word-wrap: normal;
|
197
|
+
border: 1px solid var(--text-color);
|
198
|
+
border-radius: 5px;
|
199
|
+
|
200
|
+
> code {
|
201
|
+
// border: 0;
|
202
|
+
padding-right: 0;
|
203
|
+
padding-left: 0;
|
204
|
+
}
|
205
|
+
}
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
/**
|
210
|
+
* Wrapper
|
211
|
+
*/
|
212
|
+
.wrapper {
|
213
|
+
width: $content-width;
|
214
|
+
margin-right: auto;
|
215
|
+
margin-left: auto;
|
216
|
+
@extend %clearfix;
|
217
|
+
|
218
|
+
@include media-query($on-medium) {
|
219
|
+
width: 792px;
|
220
|
+
}
|
221
|
+
|
222
|
+
@include media-query($on-small) {
|
223
|
+
width: 87.5%;
|
224
|
+
}
|
225
|
+
}
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
/**
|
230
|
+
* Clearfix
|
231
|
+
*/
|
232
|
+
%clearfix:after {
|
233
|
+
content: "";
|
234
|
+
display: table;
|
235
|
+
clear: both;
|
236
|
+
}
|