├── layouts ├── partials │ ├── head_custom.html │ ├── footer_custom_js.html │ ├── sidebar.html │ ├── footer.html │ ├── pagination.html │ ├── widgets │ │ ├── tag_cloud.html │ │ ├── tags.html │ │ ├── categories.html │ │ └── recent_articles.html │ ├── footer_js.html │ ├── single_article.html │ ├── prev_next_post.html │ ├── article_list.html │ ├── profile.html │ ├── article_header.html │ ├── head.html │ ├── header.html │ ├── article_footer.html │ └── social.html ├── index.html ├── _default │ ├── single.html │ ├── baseof.html │ ├── list.html │ ├── terms.html │ └── summary.html ├── shortcodes │ └── gallery.html └── 404.html ├── exampleSite ├── .gitignore ├── static │ └── banners │ │ └── placeholder.png ├── content │ ├── about │ │ └── _index.md │ └── post │ │ ├── linked-post.md │ │ ├── using-the-gallery-shortcode.md │ │ ├── formulas-with-mathjax.md │ │ └── markdown-cheat-sheet.md ├── data │ └── l10n.toml └── config.toml ├── images ├── tn.png └── screenshot.png ├── static ├── favicon.ico ├── fancybox │ ├── blank.gif │ ├── fancybox_sprite.png │ ├── fancybox_loading.gif │ ├── fancybox_overlay.png │ ├── fancybox_sprite@2x.png │ ├── fancybox_loading@2x.gif │ ├── helpers │ │ ├── fancybox_buttons.png │ │ ├── jquery.fancybox-thumbs.css │ │ ├── jquery.fancybox-buttons.css │ │ ├── jquery.fancybox-buttons.js │ │ ├── jquery.fancybox-thumbs.js │ │ └── jquery.fancybox-media.js │ ├── jquery.fancybox.css │ └── jquery.fancybox.pack.js ├── apple-touch-icon.png ├── css │ ├── images │ │ ├── avatar.png │ │ ├── logo.png │ │ └── thumb-default-small.png │ ├── monokai.css │ ├── font-awesome.min.css │ └── style.css ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ └── fontawesome-webfont.woff2 └── js │ └── script.js ├── archetypes └── default.md ├── theme.toml ├── LICENSE.md ├── CHANGELOG.md └── README.md /layouts/partials/head_custom.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /layouts/partials/footer_custom_js.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exampleSite/.gitignore: -------------------------------------------------------------------------------- 1 | public/ 2 | themes 3 | -------------------------------------------------------------------------------- /layouts/index.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 | {{ partial "article_list" . }} 3 | {{ end }} -------------------------------------------------------------------------------- /images/tn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/images/tn.png -------------------------------------------------------------------------------- /layouts/_default/single.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 | {{ partial "single_article" . }} 3 | {{ end }} -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/favicon.ico -------------------------------------------------------------------------------- /images/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/images/screenshot.png -------------------------------------------------------------------------------- /static/fancybox/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/blank.gif -------------------------------------------------------------------------------- /static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/apple-touch-icon.png -------------------------------------------------------------------------------- /static/css/images/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/css/images/avatar.png -------------------------------------------------------------------------------- /static/css/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/css/images/logo.png -------------------------------------------------------------------------------- /static/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /static/fancybox/fancybox_sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/fancybox_sprite.png -------------------------------------------------------------------------------- /static/fancybox/fancybox_loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/fancybox_loading.gif -------------------------------------------------------------------------------- /static/fancybox/fancybox_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/fancybox_overlay.png -------------------------------------------------------------------------------- /static/fancybox/fancybox_sprite@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/fancybox_sprite@2x.png -------------------------------------------------------------------------------- /static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /static/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /static/fancybox/fancybox_loading@2x.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/fancybox_loading@2x.gif -------------------------------------------------------------------------------- /exampleSite/static/banners/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/exampleSite/static/banners/placeholder.png -------------------------------------------------------------------------------- /static/css/images/thumb-default-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/css/images/thumb-default-small.png -------------------------------------------------------------------------------- /static/fancybox/helpers/fancybox_buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/static/fancybox/helpers/fancybox_buttons.png -------------------------------------------------------------------------------- /archetypes/default.md: -------------------------------------------------------------------------------- 1 | +++ 2 | tags = [] 3 | categories = [] 4 | description = "" 5 | menu = "" 6 | banner = "" 7 | images = [] 8 | +++ 9 | 10 | 11 | -------------------------------------------------------------------------------- /exampleSite/content/about/_index.md: -------------------------------------------------------------------------------- 1 | +++ 2 | title = "About" 3 | date = "2017-05-19T21:49:20+02:00" 4 | menu = "main" 5 | disable_comments = true 6 | +++ 7 | 8 | Add some information about yourself. -------------------------------------------------------------------------------- /layouts/partials/sidebar.html: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /layouts/shortcodes/gallery.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | {{ range .Params }} 4 | 5 | 6 | 7 | {{ end }} 8 |
9 |
10 | -------------------------------------------------------------------------------- /layouts/partials/footer.html: -------------------------------------------------------------------------------- 1 | 9 | 10 | {{ partial "footer_js" . }} 11 | {{ partial "footer_custom_js" . }} 12 | -------------------------------------------------------------------------------- /exampleSite/content/post/linked-post.md: -------------------------------------------------------------------------------- 1 | +++ 2 | title = "How to add pages to the menu" 3 | date = "2015-10-02T21:49:20+02:00" 4 | tags = ["golang", "programming", "theme", "hugo"] 5 | categories = ["programming"] 6 | menu = "main" 7 | banner = "banners/placeholder.png" 8 | +++ 9 | 10 | I'm a linked post in the menu. You can add other posts by adding the following line to the frontmatter: 11 | 12 | menu = "main" -------------------------------------------------------------------------------- /layouts/_default/baseof.html: -------------------------------------------------------------------------------- 1 | {{ partial "head" . }} 2 | 3 |
4 | {{ partialCached "header" . }} 5 | 6 |
7 | {{ if not .Params.disable_profile }} 8 | {{ partialCached "profile" . }} 9 | {{ end }} 10 | 11 |
12 | {{ block "main" . }}{{ end }} 13 |
14 | 15 | {{ if not .Params.disable_widgets }} 16 | {{ partial "sidebar" . }} 17 | {{ end }} 18 |
19 |
20 | 21 | {{ partialCached "footer" . }} 22 | 23 | -------------------------------------------------------------------------------- /layouts/partials/pagination.html: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /layouts/404.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 |
3 |
4 |
5 |

6 |

7 |

8 | {{with .Site.Data.l10n.page_not_found.title}}{{.}}{{end}} 9 |

10 |

11 | {{with .Site.Data.l10n.page_not_found.subtitle}}{{.}}{{end}} 12 |

13 |
14 |

15 |
16 |
17 |
18 | {{ end }} -------------------------------------------------------------------------------- /layouts/partials/widgets/tag_cloud.html: -------------------------------------------------------------------------------- 1 | {{ if .Site.Params.widgets.tag_cloud }} 2 | {{ if isset .Site.Taxonomies "tags" }} 3 | {{ if not (eq (len .Site.Taxonomies.tags) 0) }} 4 |
5 |

6 | {{with .Site.Data.l10n.widgets.tag_cloud.title}}{{.}}{{end}} 7 |

8 |
9 | {{ range $name, $items := .Site.Taxonomies.tags }} 10 | {{ $url := printf "%s/%s" "tags" ($name | urlize | lower)}} 11 | {{ $name }} 12 | {{ end }} 13 |
14 |
15 | {{ end }} 16 | {{ end }} 17 | {{ end }} 18 | -------------------------------------------------------------------------------- /layouts/_default/list.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 | {{ $context := . }} 3 | 4 | {{ with .Content }} 5 | {{ partial "single_article.html" $context }} 6 | {{ else }} 7 |
8 |
9 | {{ .Title }} 10 |
11 |
12 | {{ $paginator := .Paginate .Data.Pages }} 13 | {{ range $paginator.Pages }} 14 | {{ .Render "summary" }} 15 | {{ end }} 16 |
17 |
18 | {{ partial "pagination" . }} 19 | {{ end }} 20 | {{ end }} -------------------------------------------------------------------------------- /layouts/_default/terms.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 |
3 |
4 | {{ .Title }} 5 |
6 |
7 | 15 |
16 |
17 | {{ end }} -------------------------------------------------------------------------------- /exampleSite/content/post/using-the-gallery-shortcode.md: -------------------------------------------------------------------------------- 1 | +++ 2 | banner = "" 3 | categories = [] 4 | date = "2017-05-20T12:00:23+02:00" 5 | description = "" 6 | images = [] 7 | menu = "" 8 | tags = [] 9 | title = "Using the gallery shortcode" 10 | +++ 11 | 12 | This way you can easily include a gallery into your page. Copy the code below into your content file and enter the relative paths to your images. 13 | 14 | 15 | 16 | 17 | {{}} 22 | 23 |

24 | 25 | {{< gallery "/banners/placeholder.png" "/banners/placeholder.png" "/banners/placeholder.png" >}} 26 | -------------------------------------------------------------------------------- /exampleSite/content/post/formulas-with-mathjax.md: -------------------------------------------------------------------------------- 1 | +++ 2 | banner = "" 3 | categories = [] 4 | date = "2017-05-20T11:58:06+02:00" 5 | description = "" 6 | images = [] 7 | menu = "" 8 | tags = [] 9 | title = "Formulas with MathJax" 10 | +++ 11 | 12 | Mathematical equations in form of LaTeX or MathML code can be rendered with the support of [MathJax](https://www.mathjax.org). MathML works out of the box. If you're using LaTeX you need to wrap your equation with `$$` as shown in the following example: 13 | 14 | 15 | 16 | $$ z = r \cdot (\sin{\phi} + \cos{\phi} \cdot i) $$ 17 | 18 | $$ z = r \cdot (\sin{\phi} + \cos{\phi} \cdot i) $$ 19 | 20 | You can also print formulas inline: $a^2 + b^2 = c^2$. In this case wrap the formula only once with `$`. 21 | -------------------------------------------------------------------------------- /theme.toml: -------------------------------------------------------------------------------- 1 | name = "Icarus" 2 | license = "MIT" 3 | licenselink = "//github.com/digitalcraftsman/hugo-icarus-theme/blob/master/LICENSE.md" 4 | description = "The blog theme you may fall in love with, coming to Hugo. " 5 | homepage = "//github.com/digitalcraftsman/hugo-icarus-theme" 6 | tags = ["syntax highlighting", "maxthjax", "rss", "gallery", "widgets", "google analytics"] 7 | features = ["syntax highlighting", "maxthjax", "rss", "gallery", "widgets", "google analytics"] 8 | min_version = 0.20 9 | 10 | [author] 11 | name = "Digitalcraftsman" 12 | homepage = "//github.com/digitalcraftsman" 13 | 14 | # If porting an existing theme 15 | [original] 16 | name = "Ruipeng Zhang" 17 | homepage = "http://blog.zhangruipeng.me" 18 | repo = "//github.com/ppoffice/hexo-theme-icarus" 19 | -------------------------------------------------------------------------------- /layouts/partials/footer_js.html: -------------------------------------------------------------------------------- 1 | {{ template "_internal/google_analytics.html" . }} 2 | 3 | 4 | 5 | 6 | {{ range .Site.Params.custom_js }} 7 | 8 | {{ end }} 9 | 10 | 11 | {{ if not .Site.Params.disable_mathjax }} 12 | 18 | 19 | {{ end }} 20 | -------------------------------------------------------------------------------- /layouts/partials/single_article.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | {{ if and (isset .Params "banner") (not (eq .Params.banner "")) }} 4 | 5 | {{ end }} 6 | 7 | {{ partial "article_header" . }} 8 |
9 | {{ .Content }} 10 |
11 | {{ partial "article_footer" . }} 12 |
13 | 14 | {{ partial "prev_next_post" . }} 15 |
16 | 17 | {{ if and (not (eq .Site.DisqusShortname "")) (not .Params.disable_comments) }} 18 |
19 |
20 | {{ template "_internal/disqus.html" . }} 21 |
22 |
23 | {{ end }} -------------------------------------------------------------------------------- /exampleSite/data/l10n.toml: -------------------------------------------------------------------------------- 1 | [articles] 2 | read_more = "Read more" 3 | words = "words" 4 | readingtime = "minute read" 5 | share = "Share" 6 | comments = "Comments" 7 | 8 | # Linked older/newer posts at the bottom of each one 9 | [articles.linked_posts] 10 | older = "Older" 11 | newer = "Newer" 12 | 13 | [search] 14 | placeholder = "Search" 15 | 16 | [pagination] 17 | previous = "Prev" 18 | next = "Next" 19 | 20 | [profile] 21 | follow_button = "Follow" 22 | tags = "Tags" 23 | posts = "Posts" 24 | 25 | [page_not_found] 26 | title = "404 - page not found" 27 | subtitle = "The content you're looking for doesn't seem to exist." 28 | 29 | [widgets.categories] 30 | title = "Categories" 31 | 32 | [widgets.recent_articles] 33 | title = "Recents" 34 | 35 | [widgets.tag_cloud] 36 | title = "Tag cloud" 37 | 38 | [widgets.tags] 39 | title = "Tags" 40 | -------------------------------------------------------------------------------- /layouts/partials/widgets/tags.html: -------------------------------------------------------------------------------- 1 | {{ if .Site.Params.widgets.tags }} 2 | {{ if isset .Site.Taxonomies "tags" }} 3 | {{ if not (eq (len .Site.Taxonomies.tags) 0) }} 4 |
5 |

6 | {{ with .Site.Data.l10n.widgets.tags.title }}{{.}}{{end}} 7 |

8 |
9 | 20 |
21 |
22 | {{ end }} 23 | {{ end }} 24 | {{ end }} 25 | -------------------------------------------------------------------------------- /layouts/partials/prev_next_post.html: -------------------------------------------------------------------------------- 1 | {{ if and (or .PrevInSection .NextInSection) (not .Params.noprevnext) }} 2 | 21 | {{ end }} 22 | -------------------------------------------------------------------------------- /layouts/partials/widgets/categories.html: -------------------------------------------------------------------------------- 1 | {{ if .Site.Params.widgets.categories }} 2 | {{ if isset .Site.Taxonomies "categories" }} 3 | {{ if not (eq (len .Site.Taxonomies.categories) 0) }} 4 |
5 |

{{with .Site.Data.l10n.widgets.categories.title}}{{.}}{{end}}

6 |
7 | 18 |
19 |
20 | {{ end }} 21 | {{ end }} 22 | {{ end }} 23 | -------------------------------------------------------------------------------- /static/fancybox/helpers/jquery.fancybox-thumbs.css: -------------------------------------------------------------------------------- 1 | #fancybox-thumbs { 2 | position: fixed; 3 | left: 0; 4 | width: 100%; 5 | overflow: hidden; 6 | z-index: 8050; 7 | } 8 | 9 | #fancybox-thumbs.bottom { 10 | bottom: 2px; 11 | } 12 | 13 | #fancybox-thumbs.top { 14 | top: 2px; 15 | } 16 | 17 | #fancybox-thumbs ul { 18 | position: relative; 19 | list-style: none; 20 | margin: 0; 21 | padding: 0; 22 | } 23 | 24 | #fancybox-thumbs ul li { 25 | float: left; 26 | padding: 1px; 27 | opacity: 0.5; 28 | } 29 | 30 | #fancybox-thumbs ul li.active { 31 | opacity: 0.75; 32 | padding: 0; 33 | border: 1px solid #fff; 34 | } 35 | 36 | #fancybox-thumbs ul li:hover { 37 | opacity: 1; 38 | } 39 | 40 | #fancybox-thumbs ul li a { 41 | display: block; 42 | position: relative; 43 | overflow: hidden; 44 | border: 1px solid #222; 45 | background: #111; 46 | outline: none; 47 | } 48 | 49 | #fancybox-thumbs ul li img { 50 | display: block; 51 | position: relative; 52 | border: 0; 53 | padding: 0; 54 | max-width: none; 55 | } -------------------------------------------------------------------------------- /layouts/partials/article_list.html: -------------------------------------------------------------------------------- 1 | {{ $paginator := .Paginate (where .Data.Pages "Section" "in" .Site.Params.mainSections) }} 2 | {{ range $paginator.Pages }} 3 |
4 |
5 | {{ if and (isset .Params "banner") (not (eq .Params.banner "")) }} 6 | 10 | 11 | {{ partial "article_header" . }} 12 |
13 |

14 | {{ .Description | default .Summary }} 15 |

16 |

17 | 18 | {{with .Site.Data.l10n.articles.read_more}}{{.}}{{end}} 19 | 20 |

21 |
22 | {{ partial "article_footer" . }} 23 |
24 |
25 | {{ end }} 26 | 27 | {{ partial "pagination" . }} -------------------------------------------------------------------------------- /layouts/_default/summary.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | {{ if isset .Params "banner" }} 5 | 6 | 7 | 8 | {{ else }} 9 | 10 | 11 | 12 | {{ end }} 13 |
14 |
15 |

16 | {{ .Title }} 17 |

18 | 22 |
23 |
24 |
25 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 ZHANG Ruipeng 4 | Copyright (c) 2015 Digitalcraftsman 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | SOFTWARE. -------------------------------------------------------------------------------- /layouts/partials/profile.html: -------------------------------------------------------------------------------- 1 | 44 | -------------------------------------------------------------------------------- /static/js/script.js: -------------------------------------------------------------------------------- 1 | (function($){ 2 | var toTop = ($('#sidebar').height() - $(window).height()) + 60; 3 | // Caption 4 | $('.article-entry').each(function(i){ 5 | $(this).find('img').each(function(){ 6 | if ($(this).parent().hasClass('fancybox')) { 7 | return; 8 | } 9 | var alt = this.alt; 10 | if (alt) { 11 | $(this).after('' + alt + ''); 12 | } 13 | 14 | $(this).wrap(''); 15 | }); 16 | 17 | $(this).find('.fancybox').each(function(){ 18 | $(this).attr('rel', 'article' + i); 19 | }); 20 | }); 21 | if ($.fancybox){ 22 | $('.fancybox').fancybox(); 23 | } 24 | 25 | // Profile card 26 | $(document).on('click', function () { 27 | $('#profile').removeClass('card'); 28 | }).on('click', '#profile-anchor', function (e) { 29 | e.stopPropagation(); 30 | $('#profile').toggleClass('card'); 31 | }).on('click', '.profile-inner', function (e) { 32 | e.stopPropagation(); 33 | }); 34 | 35 | // To Top 36 | if ($('#sidebar').length) { 37 | $(document).on('scroll', function () { 38 | if ($(document).width() >= 800) { 39 | if(($(this).scrollTop() > toTop) && ($(this).scrollTop() > 0)) { 40 | $('#toTop').fadeIn(); 41 | $('#toTop').css('left', $('#sidebar').offset().left); 42 | } else { 43 | $('#toTop').fadeOut(); 44 | } 45 | } else { 46 | $('#toTop').fadeIn(); 47 | $('#toTop').css('right', 20); 48 | } 49 | }).on('click', '#toTop', function () { 50 | $('body, html').animate({ scrollTop: 0 }, 600); 51 | }); 52 | } 53 | 54 | })(jQuery); 55 | -------------------------------------------------------------------------------- /layouts/partials/widgets/recent_articles.html: -------------------------------------------------------------------------------- 1 | {{ if .Site.Params.widgets.recent_articles }} 2 |
3 |

4 | {{with .Site.Data.l10n.widgets.recent_articles.title}}{{.}}{{end}} 5 |

6 |
7 | 38 |
39 |
40 | {{ end }} 41 | -------------------------------------------------------------------------------- /layouts/partials/article_header.html: -------------------------------------------------------------------------------- 1 |
2 | 3 |

4 | {{ .Title }} 5 |

6 |
7 |
8 | 9 | {{ if not .Params.nodateline }} 10 | 20 | {{ end }} 21 | {{ if isset .Params "categories" }} 22 | {{ $categoriesLen := len .Params.categories }} 23 | {{ if gt $categoriesLen 0 }} 24 | 32 | {{ end }} 33 | {{ end }} 34 | 35 | {{ if isset .Params "tags" }} 36 | {{ $tagsLen := len .Params.tags }} 37 | {{ if gt $tagsLen 0 }} 38 | 46 | {{ end }} 47 | {{ end }} 48 |
49 |
50 | -------------------------------------------------------------------------------- /layouts/partials/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ .Title }} · {{ .Site.Title }}{{ end }} 5 | {{ .Hugo.Generator }} 6 | 7 | 8 | {{ with .Site.Params.author }}{{ end }} 9 | {{ with .Description }} 10 | 11 | {{ else }} 12 | 13 | {{ end }} 14 | {{ with .RSSLink }} 15 | 16 | 17 | {{ end }} 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | {{ range .Site.Params.custom_css }} 26 | 27 | {{ end }} 28 | 29 | 30 | {{ template "_internal/opengraph.html" . }} 31 | {{ template "_internal/google_news.html" . }} 32 | {{ template "_internal/schema.html" . }} 33 | {{ template "_internal/twitter_cards.html" . }} 34 | {{ partial "head_custom" . }} 35 | 36 | {{ if .Params.disable_profile | and .Params.disable_widgets }} 37 | 42 | {{ end }} 43 | 44 | 45 | 46 | 47 | 48 |
49 | -------------------------------------------------------------------------------- /static/css/monokai.css: -------------------------------------------------------------------------------- 1 | /* 2 | Monokai style - ported by Luigi Maselli - http://grigio.org 3 | */ 4 | 5 | .hljs { 6 | display: block; 7 | overflow-x: auto; 8 | padding: 0.5em; 9 | background: #272822; 10 | -webkit-text-size-adjust: none; 11 | } 12 | 13 | .hljs-tag, 14 | .hljs-tag .hljs-title, 15 | .hljs-keyword, 16 | .hljs-literal, 17 | .hljs-strong, 18 | .hljs-change, 19 | .hljs-winutils, 20 | .hljs-flow, 21 | .nginx .hljs-title, 22 | .tex .hljs-special { 23 | color: #f92672; 24 | } 25 | 26 | .hljs { 27 | color: #ddd; 28 | } 29 | 30 | .hljs .hljs-constant, 31 | .asciidoc .hljs-code, 32 | .markdown .hljs-code { 33 | color: #66d9ef; 34 | } 35 | 36 | .hljs-code, 37 | .hljs-class .hljs-title, 38 | .hljs-header { 39 | color: white; 40 | } 41 | 42 | .hljs-link_label, 43 | .hljs-attribute, 44 | .hljs-symbol, 45 | .hljs-symbol .hljs-string, 46 | .hljs-value, 47 | .hljs-regexp { 48 | color: #bf79db; 49 | } 50 | 51 | .hljs-link_url, 52 | .hljs-tag .hljs-value, 53 | .hljs-string, 54 | .hljs-bullet, 55 | .hljs-subst, 56 | .hljs-title, 57 | .hljs-emphasis, 58 | .hljs-type, 59 | .hljs-preprocessor, 60 | .hljs-pragma, 61 | .ruby .hljs-class .hljs-parent, 62 | .hljs-built_in, 63 | .django .hljs-template_tag, 64 | .django .hljs-variable, 65 | .smalltalk .hljs-class, 66 | .django .hljs-filter .hljs-argument, 67 | .smalltalk .hljs-localvars, 68 | .smalltalk .hljs-array, 69 | .hljs-attr_selector, 70 | .hljs-pseudo, 71 | .hljs-addition, 72 | .hljs-stream, 73 | .hljs-envvar, 74 | .apache .hljs-tag, 75 | .apache .hljs-cbracket, 76 | .tex .hljs-command, 77 | .hljs-prompt, 78 | .hljs-name { 79 | color: #a6e22e; 80 | } 81 | 82 | .hljs-comment, 83 | .hljs-annotation, 84 | .smartquote, 85 | .hljs-blockquote, 86 | .hljs-horizontal_rule, 87 | .hljs-decorator, 88 | .hljs-pi, 89 | .hljs-doctype, 90 | .hljs-deletion, 91 | .hljs-shebang, 92 | .apache .hljs-sqbracket, 93 | .tex .hljs-formula { 94 | color: #75715e; 95 | } 96 | 97 | .hljs-keyword, 98 | .hljs-literal, 99 | .css .hljs-id, 100 | .hljs-doctag, 101 | .hljs-title, 102 | .hljs-header, 103 | .hljs-type, 104 | .vbscript .hljs-built_in, 105 | .rsl .hljs-built_in, 106 | .smalltalk .hljs-class, 107 | .diff .hljs-header, 108 | .hljs-chunk, 109 | .hljs-winutils, 110 | .bash .hljs-variable, 111 | .apache .hljs-tag, 112 | .tex .hljs-special, 113 | .hljs-request, 114 | .hljs-status { 115 | font-weight: bold; 116 | } 117 | 118 | .coffeescript .javascript, 119 | .javascript .xml, 120 | .tex .hljs-formula, 121 | .xml .javascript, 122 | .xml .vbscript, 123 | .xml .css, 124 | .xml .hljs-cdata { 125 | opacity: 0.5; 126 | } 127 | -------------------------------------------------------------------------------- /static/fancybox/helpers/jquery.fancybox-buttons.css: -------------------------------------------------------------------------------- 1 | #fancybox-buttons { 2 | position: fixed; 3 | left: 0; 4 | width: 100%; 5 | z-index: 8050; 6 | } 7 | 8 | #fancybox-buttons.top { 9 | top: 10px; 10 | } 11 | 12 | #fancybox-buttons.bottom { 13 | bottom: 10px; 14 | } 15 | 16 | #fancybox-buttons ul { 17 | display: block; 18 | width: 166px; 19 | height: 30px; 20 | margin: 0 auto; 21 | padding: 0; 22 | list-style: none; 23 | border: 1px solid #111; 24 | border-radius: 3px; 25 | -webkit-box-shadow: inset 0 0 0 1px rgba(255,255,255,.05); 26 | -moz-box-shadow: inset 0 0 0 1px rgba(255,255,255,.05); 27 | box-shadow: inset 0 0 0 1px rgba(255,255,255,.05); 28 | background: rgb(50,50,50); 29 | background: -moz-linear-gradient(top, rgb(68,68,68) 0%, rgb(52,52,52) 50%, rgb(41,41,41) 50%, rgb(51,51,51) 100%); 30 | background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(68,68,68)), color-stop(50%,rgb(52,52,52)), color-stop(50%,rgb(41,41,41)), color-stop(100%,rgb(51,51,51))); 31 | background: -webkit-linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 32 | background: -o-linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 33 | background: -ms-linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 34 | background: linear-gradient(top, rgb(68,68,68) 0%,rgb(52,52,52) 50%,rgb(41,41,41) 50%,rgb(51,51,51) 100%); 35 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#444444', endColorstr='#222222',GradientType=0 ); 36 | } 37 | 38 | #fancybox-buttons ul li { 39 | float: left; 40 | margin: 0; 41 | padding: 0; 42 | } 43 | 44 | #fancybox-buttons a { 45 | display: block; 46 | width: 30px; 47 | height: 30px; 48 | text-indent: -9999px; 49 | background-color: transparent; 50 | background-image: url('fancybox_buttons.png'); 51 | background-repeat: no-repeat; 52 | outline: none; 53 | opacity: 0.8; 54 | } 55 | 56 | #fancybox-buttons a:hover { 57 | opacity: 1; 58 | } 59 | 60 | #fancybox-buttons a.btnPrev { 61 | background-position: 5px 0; 62 | } 63 | 64 | #fancybox-buttons a.btnNext { 65 | background-position: -33px 0; 66 | border-right: 1px solid #3e3e3e; 67 | } 68 | 69 | #fancybox-buttons a.btnPlay { 70 | background-position: 0 -30px; 71 | } 72 | 73 | #fancybox-buttons a.btnPlayOn { 74 | background-position: -30px -30px; 75 | } 76 | 77 | #fancybox-buttons a.btnToggle { 78 | background-position: 3px -60px; 79 | border-left: 1px solid #111; 80 | border-right: 1px solid #3e3e3e; 81 | width: 35px 82 | } 83 | 84 | #fancybox-buttons a.btnToggleOn { 85 | background-position: -27px -60px; 86 | } 87 | 88 | #fancybox-buttons a.btnClose { 89 | border-left: 1px solid #111; 90 | width: 35px; 91 | background-position: -56px 0px; 92 | } 93 | 94 | #fancybox-buttons a.btnDisabled { 95 | opacity : 0.4; 96 | cursor: default; 97 | } -------------------------------------------------------------------------------- /layouts/partials/header.html: -------------------------------------------------------------------------------- 1 | 72 | -------------------------------------------------------------------------------- /layouts/partials/article_footer.html: -------------------------------------------------------------------------------- 1 | 77 | -------------------------------------------------------------------------------- /exampleSite/content/post/markdown-cheat-sheet.md: -------------------------------------------------------------------------------- 1 | +++ 2 | banner = "" 3 | categories = [] 4 | date = "2017-05-20T12:10:51+02:00" 5 | description = "" 6 | images = [] 7 | menu = "" 8 | tags = ["markdown"] 9 | title = "Markdown Cheat Sheet" 10 | +++ 11 | 12 | This note demonstrates some of what [Markdown][1] is capable of doing. 13 | 14 | *Note: Feel free to play with this page. Unlike regular notes, this doesn't automatically save itself.* 15 | 16 | 17 | 18 | ## Basic formatting 19 | 20 | Paragraphs can be written like so. A paragraph is the basic block of Markdown. A paragraph is what text will turn into when there is no reason it should become anything else. 21 | 22 | Paragraphs must be separated by a blank line. Basic formatting of *italics* and **bold** is supported. This *can be **nested** like* so. 23 | 24 | ## Lists 25 | 26 | ### Ordered list 27 | 28 | 1. Item 1 29 | 2. A second item 30 | 3. Number 3 31 | 4. Ⅳ 32 | 33 | *Note: the fourth item uses the Unicode character for [Roman numeral four][2].* 34 | 35 | ### Unordered list 36 | 37 | * An item 38 | * Another item 39 | * Yet another item 40 | * And there's more... 41 | 42 | ## Paragraph modifiers 43 | 44 | ### Code block 45 | 46 | Code blocks are very useful for developers and other people who look at code or other things that are written in plain text. As you can see, it uses a fixed-width font. 47 | 48 | You can also make `inline code` to add code into other things. 49 | 50 | ### Quote 51 | 52 | > Here is a quote. What this is should be self explanatory. Quotes are automatically indented when they are used. 53 | 54 | ## Headings 55 | 56 | There are six levels of headings. They correspond with the six levels of HTML headings. You've probably noticed them already in the page. Each level down uses one more hash character. 57 | 58 | ### Headings *can* also contain **formatting** 59 | 60 | ### They can even contain `inline code` 61 | 62 | Of course, demonstrating what headings look like messes up the structure of the page. 63 | 64 | I don't recommend using more than three or four levels of headings here, because, when you're smallest heading isn't too small, and you're largest heading isn't too big, and you want each size up to look noticeably larger and more important, there there are only so many sizes that you can use. 65 | 66 | ## URLs 67 | 68 | URLs can be made in a handful of ways: 69 | 70 | * A named link to [MarkItDown][3]. The easiest way to do these is to select what you want to make a link and hit `Ctrl+L`. 71 | * Another named link to [MarkItDown](http://www.markitdown.net/) 72 | * Sometimes you just want a URL like . 73 | 74 | ## Horizontal rule 75 | 76 | A horizontal rule is a line that goes across the middle of the page. 77 | 78 | --- 79 | 80 | It's sometimes handy for breaking things up. 81 | 82 | ## Images 83 | 84 | Markdown can also contain images. I'll need to add something here sometime. 85 | 86 | ## Finally 87 | 88 | There's actually a lot more to Markdown than this. See the official [introduction][4] and [syntax][5] for more information. However, be aware that this is not using the official implementation, and this might work subtly differently in some of the little things. 89 | 90 | 91 | [1]: http://daringfireball.net/projects/markdown/ 92 | [2]: http://www.fileformat.info/info/unicode/char/2163/index.htm 93 | [3]: http://www.markitdown.net/ 94 | [4]: http://daringfireball.net/projects/markdown/basics 95 | [5]: http://daringfireball.net/projects/markdown/syntax 96 | 97 | 98 | 99 | -------------------------------------------------------------------------------- /exampleSite/config.toml: -------------------------------------------------------------------------------- 1 | baseurl = "https://example.org/" 2 | languageCode = "en-us" 3 | title = "Icarus" 4 | # Enable comments by entering your Disqus shortname 5 | disqusShortname = "spf13" 6 | # Enable Google Analytics by entering your tracking code 7 | googleAnalytics = "" 8 | # Define the number of posts per page 9 | paginate = 10 10 | footnotereturnlinkcontents = "↩" 11 | theme = "hugo-icarus-theme" 12 | # Comment the themesDir option if you use this theme in production 13 | themesDir = "../.." 14 | 15 | 16 | [permalinks] 17 | post = "/:year/:month/:day/:slug" 18 | 19 | 20 | [params] 21 | # Tell me who you are 22 | author = "John Doe" 23 | bio = "Blogger - Programmer - Gopher" 24 | location = "Earth" 25 | site_description = "" 26 | copyright = "Powered by [Hugo](//gohugo.io). Theme by [PPOffice](http://github.com/ppoffice)." 27 | avatar = "css/images/avatar.png" 28 | # Enter your email address to display your Gravatar icon in the profile. If not set the theme 29 | # will fallback to the avatar. 30 | gravatar = "you@example.com" 31 | logo = "css/images/logo.png" 32 | disable_mathjax = false # set to true to disable MathJax 33 | 34 | # define which types of pages should be shown. By default the type with the most regular pages 35 | mainSections = ["post"] 36 | 37 | # Format dates with Go's time formatting 38 | date_format = "2006-01-02" 39 | 40 | # Add custom assets with their paths relative to the static folder 41 | custom_css = [] 42 | custom_js = [] 43 | 44 | # Create custom menu entries by defining a label and a link for 45 | # them. Since you can also link posts, you've the option the 46 | # place the links before or after them. 47 | # 48 | # E.g.: "Home" appears before all linked posts in the menu 49 | # and "Tags" / "Categories" after them. 50 | [[params.menu]] 51 | before = true 52 | label = "Home" 53 | link = "/" 54 | 55 | [[params.menu]] 56 | before = false 57 | label = "Tags" 58 | link = "tags/" 59 | 60 | [[params.menu]] 61 | before = false 62 | label = "Categories" 63 | link = "categories/" 64 | 65 | # Enter a link for the follow button on the left 66 | [params.profile] 67 | follow_button = "https://github.com/digitalcraftsman" 68 | 69 | 70 | [social] 71 | # Add your social network accounts to the profile section on the left 72 | # by entering your username. The links to your account will be 73 | # created automatically. 74 | github = "digitalcraftsman" 75 | gitlab = "" 76 | bitbucket = "" 77 | jsfiddle = "" 78 | codepen = "" 79 | foursquare = "" 80 | dribbble = "" 81 | deviantart = "" 82 | behance = "" 83 | flickr = "" 84 | instagram = "" 85 | youtube = "" 86 | vimeo = "" 87 | vine = "" 88 | medium = "" 89 | wordpress = "" 90 | tumblr = "" 91 | xing = "" 92 | linkedin = "" 93 | slideshare = "" 94 | stackoverflow = "" 95 | reddit = "" 96 | pinterest = "" 97 | googleplus = "" 98 | facebook = "" 99 | facebook_admin = "" 100 | twitter_domain = "" 101 | twitter = "spf13" 102 | 103 | # Enable and disable widgets for the right sidebar 104 | [params.widgets] 105 | recent_articles = true 106 | categories = true 107 | tags = true 108 | tag_cloud = true 109 | -------------------------------------------------------------------------------- /static/fancybox/helpers/jquery.fancybox-buttons.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Buttons helper for fancyBox 3 | * version: 1.0.5 (Mon, 15 Oct 2012) 4 | * @requires fancyBox v2.0 or later 5 | * 6 | * Usage: 7 | * $(".fancybox").fancybox({ 8 | * helpers : { 9 | * buttons: { 10 | * position : 'top' 11 | * } 12 | * } 13 | * }); 14 | * 15 | */ 16 | ;(function ($) { 17 | //Shortcut for fancyBox object 18 | var F = $.fancybox; 19 | 20 | //Add helper object 21 | F.helpers.buttons = { 22 | defaults : { 23 | skipSingle : false, // disables if gallery contains single image 24 | position : 'top', // 'top' or 'bottom' 25 | tpl : '
' 26 | }, 27 | 28 | list : null, 29 | buttons: null, 30 | 31 | beforeLoad: function (opts, obj) { 32 | //Remove self if gallery do not have at least two items 33 | 34 | if (opts.skipSingle && obj.group.length < 2) { 35 | obj.helpers.buttons = false; 36 | obj.closeBtn = true; 37 | 38 | return; 39 | } 40 | 41 | //Increase top margin to give space for buttons 42 | obj.margin[ opts.position === 'bottom' ? 2 : 0 ] += 30; 43 | }, 44 | 45 | onPlayStart: function () { 46 | if (this.buttons) { 47 | this.buttons.play.attr('title', 'Pause slideshow').addClass('btnPlayOn'); 48 | } 49 | }, 50 | 51 | onPlayEnd: function () { 52 | if (this.buttons) { 53 | this.buttons.play.attr('title', 'Start slideshow').removeClass('btnPlayOn'); 54 | } 55 | }, 56 | 57 | afterShow: function (opts, obj) { 58 | var buttons = this.buttons; 59 | 60 | if (!buttons) { 61 | this.list = $(opts.tpl).addClass(opts.position).appendTo('body'); 62 | 63 | buttons = { 64 | prev : this.list.find('.btnPrev').click( F.prev ), 65 | next : this.list.find('.btnNext').click( F.next ), 66 | play : this.list.find('.btnPlay').click( F.play ), 67 | toggle : this.list.find('.btnToggle').click( F.toggle ), 68 | close : this.list.find('.btnClose').click( F.close ) 69 | } 70 | } 71 | 72 | //Prev 73 | if (obj.index > 0 || obj.loop) { 74 | buttons.prev.removeClass('btnDisabled'); 75 | } else { 76 | buttons.prev.addClass('btnDisabled'); 77 | } 78 | 79 | //Next / Play 80 | if (obj.loop || obj.index < obj.group.length - 1) { 81 | buttons.next.removeClass('btnDisabled'); 82 | buttons.play.removeClass('btnDisabled'); 83 | 84 | } else { 85 | buttons.next.addClass('btnDisabled'); 86 | buttons.play.addClass('btnDisabled'); 87 | } 88 | 89 | this.buttons = buttons; 90 | 91 | this.onUpdate(opts, obj); 92 | }, 93 | 94 | onUpdate: function (opts, obj) { 95 | var toggle; 96 | 97 | if (!this.buttons) { 98 | return; 99 | } 100 | 101 | toggle = this.buttons.toggle.removeClass('btnDisabled btnToggleOn'); 102 | 103 | //Size toggle button 104 | if (obj.canShrink) { 105 | toggle.addClass('btnToggleOn'); 106 | 107 | } else if (!obj.canExpand) { 108 | toggle.addClass('btnDisabled'); 109 | } 110 | }, 111 | 112 | beforeClose: function () { 113 | if (this.list) { 114 | this.list.remove(); 115 | } 116 | 117 | this.list = null; 118 | this.buttons = null; 119 | } 120 | }; 121 | 122 | }(jQuery)); 123 | -------------------------------------------------------------------------------- /layouts/partials/social.html: -------------------------------------------------------------------------------- 1 | {{ with .Site.Social.github }} 2 | 3 | {{ end }} 4 | 5 | {{ with .Site.Social.gitlab }} 6 | 7 | {{ end }} 8 | 9 | {{ with .Site.Social.bitbucket }} 10 | 11 | {{ end }} 12 | 13 | {{ with .Site.Social.jsfiddle }} 14 | 15 | {{ end }} 16 | 17 | {{ with .Site.Social.codepen }} 18 | 19 | {{ end }} 20 | 21 | {{ with .Site.Social.foursquare }} 22 | 23 | {{ end }} 24 | 25 | {{ with .Site.Social.dribbble }} 26 | 27 | {{ end }} 28 | 29 | {{ with .Site.Social.deviantart }} 30 | 31 | {{ end }} 32 | 33 | {{ with .Site.Social.behance }} 34 | 35 | {{ end }} 36 | 37 | {{ with .Site.Social.flickr }} 38 | 39 | {{ end }} 40 | 41 | {{ with .Site.Social.instagram }} 42 | 43 | {{ end }} 44 | 45 | {{ with .Site.Social.youtube }} 46 | 47 | {{ end }} 48 | 49 | {{ with .Site.Social.vimeo }} 50 | 51 | {{ end }} 52 | 53 | {{ with .Site.Social.vine }} 54 | 55 | {{ end }} 56 | 57 | {{ with .Site.Social.medium}} 58 | 59 | {{ end }} 60 | 61 | {{ with .Site.Social.wordpress }} 62 | 63 | {{ end }} 64 | 65 | {{ with .Site.Social.tumblr }} 66 | 67 | {{ end }} 68 | 69 | {{ with .Site.Social.xing }} 70 | 71 | {{ end }} 72 | 73 | {{ with .Site.Social.linkedin }} 74 | 75 | {{ end }} 76 | 77 | {{ with .Site.Social.slideshare }} 78 | 79 | {{ end }} 80 | 81 | {{ with .Site.Social.stackoverflow }} 82 | 83 | {{ end }} 84 | 85 | {{ with .Site.Social.reddit }} 86 | 87 | {{ end }} 88 | 89 | {{ with .Site.Social.pinterest }} 90 | 91 | {{ end }} 92 | 93 | {{ with .Site.Social.googleplus }} 94 | 95 | {{ end }} 96 | 97 | {{ with .Site.Social.facebook }} 98 | 99 | {{ end }} 100 | 101 | {{ with .Site.Social.twitter }} 102 | 103 | {{ end }} 104 | -------------------------------------------------------------------------------- /static/fancybox/helpers/jquery.fancybox-thumbs.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Thumbnail helper for fancyBox 3 | * version: 1.0.7 (Mon, 01 Oct 2012) 4 | * @requires fancyBox v2.0 or later 5 | * 6 | * Usage: 7 | * $(".fancybox").fancybox({ 8 | * helpers : { 9 | * thumbs: { 10 | * width : 50, 11 | * height : 50 12 | * } 13 | * } 14 | * }); 15 | * 16 | */ 17 | ;(function ($) { 18 | //Shortcut for fancyBox object 19 | var F = $.fancybox; 20 | 21 | //Add helper object 22 | F.helpers.thumbs = { 23 | defaults : { 24 | width : 50, // thumbnail width 25 | height : 50, // thumbnail height 26 | position : 'bottom', // 'top' or 'bottom' 27 | source : function ( item ) { // function to obtain the URL of the thumbnail image 28 | var href; 29 | 30 | if (item.element) { 31 | href = $(item.element).find('img').attr('src'); 32 | } 33 | 34 | if (!href && item.type === 'image' && item.href) { 35 | href = item.href; 36 | } 37 | 38 | return href; 39 | } 40 | }, 41 | 42 | wrap : null, 43 | list : null, 44 | width : 0, 45 | 46 | init: function (opts, obj) { 47 | var that = this, 48 | list, 49 | thumbWidth = opts.width, 50 | thumbHeight = opts.height, 51 | thumbSource = opts.source; 52 | 53 | //Build list structure 54 | list = ''; 55 | 56 | for (var n = 0; n < obj.group.length; n++) { 57 | list += '
  • '; 58 | } 59 | 60 | this.wrap = $('
    ').addClass(opts.position).appendTo('body'); 61 | this.list = $('').appendTo(this.wrap); 62 | 63 | //Load each thumbnail 64 | $.each(obj.group, function (i) { 65 | var el = obj.group[ i ], 66 | href = thumbSource( el ); 67 | 68 | if (!href) { 69 | return; 70 | } 71 | 72 | $("").load(function () { 73 | var width = this.width, 74 | height = this.height, 75 | widthRatio, heightRatio, parent; 76 | 77 | if (!that.list || !width || !height) { 78 | return; 79 | } 80 | 81 | //Calculate thumbnail width/height and center it 82 | widthRatio = width / thumbWidth; 83 | heightRatio = height / thumbHeight; 84 | 85 | parent = that.list.children().eq(i).find('a'); 86 | 87 | if (widthRatio >= 1 && heightRatio >= 1) { 88 | if (widthRatio > heightRatio) { 89 | width = Math.floor(width / heightRatio); 90 | height = thumbHeight; 91 | 92 | } else { 93 | width = thumbWidth; 94 | height = Math.floor(height / widthRatio); 95 | } 96 | } 97 | 98 | $(this).css({ 99 | width : width, 100 | height : height, 101 | top : Math.floor(thumbHeight / 2 - height / 2), 102 | left : Math.floor(thumbWidth / 2 - width / 2) 103 | }); 104 | 105 | parent.width(thumbWidth).height(thumbHeight); 106 | 107 | $(this).hide().appendTo(parent).fadeIn(300); 108 | 109 | }) 110 | .attr('src', href) 111 | .attr('title', el.title); 112 | }); 113 | 114 | //Set initial width 115 | this.width = this.list.children().eq(0).outerWidth(true); 116 | 117 | this.list.width(this.width * (obj.group.length + 1)).css('left', Math.floor($(window).width() * 0.5 - (obj.index * this.width + this.width * 0.5))); 118 | }, 119 | 120 | beforeLoad: function (opts, obj) { 121 | //Remove self if gallery do not have at least two items 122 | if (obj.group.length < 2) { 123 | obj.helpers.thumbs = false; 124 | 125 | return; 126 | } 127 | 128 | //Increase bottom margin to give space for thumbs 129 | obj.margin[ opts.position === 'top' ? 0 : 2 ] += ((opts.height) + 15); 130 | }, 131 | 132 | afterShow: function (opts, obj) { 133 | //Check if exists and create or update list 134 | if (this.list) { 135 | this.onUpdate(opts, obj); 136 | 137 | } else { 138 | this.init(opts, obj); 139 | } 140 | 141 | //Set active element 142 | this.list.children().removeClass('active').eq(obj.index).addClass('active'); 143 | }, 144 | 145 | //Center list 146 | onUpdate: function (opts, obj) { 147 | if (this.list) { 148 | this.list.stop(true).animate({ 149 | 'left': Math.floor($(window).width() * 0.5 - (obj.index * this.width + this.width * 0.5)) 150 | }, 150); 151 | } 152 | }, 153 | 154 | beforeClose: function () { 155 | if (this.wrap) { 156 | this.wrap.remove(); 157 | } 158 | 159 | this.wrap = null; 160 | this.list = null; 161 | this.width = 0; 162 | } 163 | } 164 | 165 | }(jQuery)); -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | 4 | ## Release v1.1 - 20th May 2017 5 | 6 | *In the future new additions and changes will be assigned to version numbers rather than dates.* This allows you to track changes in a better fashion. The state of this theme before this release has been assigned to v1.0. 7 | 8 | **This change requires Hugo v0.20 or greater** due to the usage of new Hugo features. 9 | 10 | ### General information 11 | 12 | The `exampleSite` folder has become a standalone demo by modified the `themesDir` property in the `config.toml`. Make sure to comment out `themesDir` in the config file if you use the theme in production. [Read more](/README.md#setup) 13 | 14 | ### Fixes 15 | 16 | - Switch CDN for Mathjax due to retirement. See [#86](https://github.com/digitalcraftsman/hugo-icarus-theme/pull/86) (thanks @Heliosmaster) 17 | - Prevent appearance of link for /posts on homepage. See [dc62f88](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/dc62f88037645c57bc45b340d51725541e140528) (thanks @igor-sokolov) 18 | 19 | ### Improvements 20 | 21 | - [Block templates](https://gohugo.io/templates/blocks/) are now used to reduce redundancy. See [62d00ff](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/62d00ff27ab2e4b363cd1a3aecd8da2fa0ef9bd74) 22 | - Cache partials where possible. See [d38e4be](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/d38e4be45711c49174079fe57c2af959891e2cde) 23 | - Add example for about page. See [183f569](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/183f569749f8051e609c36a57f417124f02a21f7) 24 | - The `.Site.Params.mainSections` options allows you to specify which types of pages should be shown on the homepage. See [0928ac7](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/0928ac7868816f52541d07a2a66a4038c54de344) 25 | - Add `.Site.Params.gravatar` as a way use Gravatar for the profile picure. See [b6b79b7](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/b6b79b766386db444df1703dd295a87acd5f6157) 26 | 27 | ### Deprecations 28 | 29 | - The JSFiddle shortcode has been removed. See [5203108](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/52031082ef5cf8da6132d79bf6bfca2eb7a583e7) 30 | 31 | 32 | --- 33 | 34 | 35 | ### 1st April 2017 36 | 37 | With Hugo v0.20 the `.Now` is deprecated and will be replaced by the `now` template function. v0.19 does support both and as part of the transition phase. Hence the least required version of Hugo is v0.19. 38 | 39 | ### 28th October 2016 - Option to link custom assets 40 | 41 | You're now able to link local or external assets by adding their url to 42 | the `custom_js` and `custom_css` variables in the config file. 43 | 44 | [Show me the diff](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/cd1a8c02e0cf97c443cfdbf44091e66863305eba) 45 | 46 | ### 8th March 2016 - Options to disable features for single pages 47 | 48 | #### Comments 49 | 50 | The comment section can be disabled for single pages in the frontmatter. 51 | 52 | [Show me the diff](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/c7dcfa6548cc71c48d39bba6367aea7d15203b37) 53 | 54 | #### Profile and widgets 55 | 56 | The profile and the widgets can be disabled for single pages in the frontmatter. Are both disabled the content will use the full width of the page 57 | 58 | [Show me the diff](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/d0fcabe2fbd5e0d5d6f29b6c8d19699e5b11fdde) 59 | 60 | 61 | ### 3rd January 2016 - Allow specifying an avatar 62 | 63 | This change adds the new variable `avatar` under `[params]` in the configuration. You need to set this path in order to show an avatar image. The default one can still be found under `css/images/avatar.png`. 64 | 65 | [Show me the diff](https://github.com/larrywright/hugo-icarus-theme/commit/0850eabae7e7f79151bfcb462d4ad6795d7caeea) 66 | 67 | 68 | ### 27th November 2015 - Upgrade to Hugo v0.15 69 | 70 | Hugo v0.15 is required in order to run the theme with the changes listed below: 71 | 72 | #### Google Analytics template 73 | 74 | The setup of Google Analytics changed slighty due to the switch to Hugo's built-in template. In order to update the theme you need to relocate thr `google_analytics` variable in the configs and rename it to `googleAnalytics`. Take a look in the example [`config.toml`](https://github.com/digitalcraftsman/hugo-icarus-theme/blob/dev/exampleSite/config.toml). 75 | 76 | [Show me the diff](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/fa50238040577c80b5871772cf944681ccfc075f) 77 | 78 | 79 | ### 18th October 2015 - Rename i10n to l10n 80 | 81 | Since the right shortcut of localization is "l10n" and not "i10n" (from internationalization) I renamed the shortcut in all places of the theme. The most significant change is the renaming of the `i10n.toml` file inside the `data` folder to `l10n.toml`. This has the side effect that all key paths used for l10n changed within the templates too. 82 | 83 | [Show me the diff](https://github.com/digitalcraftsman/hugo-icarus-theme/commit/f52c1da20d8daed67bc2d51627bfe00c7a7b158e) 84 | -------------------------------------------------------------------------------- /static/fancybox/jquery.fancybox.css: -------------------------------------------------------------------------------- 1 | /*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */ 2 | .fancybox-wrap, 3 | .fancybox-skin, 4 | .fancybox-outer, 5 | .fancybox-inner, 6 | .fancybox-image, 7 | .fancybox-wrap iframe, 8 | .fancybox-wrap object, 9 | .fancybox-nav, 10 | .fancybox-nav span, 11 | .fancybox-tmp 12 | { 13 | padding: 0; 14 | margin: 0; 15 | border: 0; 16 | outline: none; 17 | vertical-align: top; 18 | } 19 | 20 | .fancybox-wrap { 21 | position: absolute; 22 | top: 0; 23 | left: 0; 24 | z-index: 8020; 25 | } 26 | 27 | .fancybox-skin { 28 | position: relative; 29 | background: #f9f9f9; 30 | color: #444; 31 | text-shadow: none; 32 | } 33 | 34 | .fancybox-opened { 35 | z-index: 8030; 36 | } 37 | 38 | .fancybox-opened .fancybox-skin { 39 | -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); 40 | -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); 41 | box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); 42 | } 43 | 44 | .fancybox-outer, .fancybox-inner { 45 | position: relative; 46 | } 47 | 48 | .fancybox-inner { 49 | overflow: hidden; 50 | } 51 | 52 | .fancybox-type-iframe .fancybox-inner { 53 | -webkit-overflow-scrolling: touch; 54 | } 55 | 56 | .fancybox-error { 57 | color: #444; 58 | font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; 59 | margin: 0; 60 | padding: 15px; 61 | white-space: nowrap; 62 | } 63 | 64 | .fancybox-image, .fancybox-iframe { 65 | display: block; 66 | width: 100%; 67 | height: 100%; 68 | } 69 | 70 | .fancybox-image { 71 | max-width: 100%; 72 | max-height: 100%; 73 | } 74 | 75 | #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { 76 | background-image: url(fancybox_sprite.png); 77 | } 78 | 79 | #fancybox-loading { 80 | position: fixed; 81 | top: 50%; 82 | left: 50%; 83 | margin-top: -22px; 84 | margin-left: -22px; 85 | background-position: 0 -108px; 86 | opacity: 0.8; 87 | cursor: pointer; 88 | z-index: 8060; 89 | } 90 | 91 | #fancybox-loading div { 92 | width: 44px; 93 | height: 44px; 94 | background: url(fancybox_loading.gif) center center no-repeat; 95 | } 96 | 97 | .fancybox-close { 98 | position: absolute; 99 | top: -18px; 100 | right: -18px; 101 | width: 36px; 102 | height: 36px; 103 | cursor: pointer; 104 | z-index: 8040; 105 | } 106 | 107 | .fancybox-nav { 108 | position: absolute; 109 | top: 0; 110 | width: 40%; 111 | height: 100%; 112 | cursor: pointer; 113 | text-decoration: none; 114 | background: transparent url(blank.gif); /* helps IE */ 115 | -webkit-tap-highlight-color: rgba(0,0,0,0); 116 | z-index: 8040; 117 | } 118 | 119 | .fancybox-prev { 120 | left: 0; 121 | } 122 | 123 | .fancybox-next { 124 | right: 0; 125 | } 126 | 127 | .fancybox-nav span { 128 | position: absolute; 129 | top: 50%; 130 | width: 36px; 131 | height: 34px; 132 | margin-top: -18px; 133 | cursor: pointer; 134 | z-index: 8040; 135 | visibility: hidden; 136 | } 137 | 138 | .fancybox-prev span { 139 | left: 10px; 140 | background-position: 0 -36px; 141 | } 142 | 143 | .fancybox-next span { 144 | right: 10px; 145 | background-position: 0 -72px; 146 | } 147 | 148 | .fancybox-nav:hover span { 149 | visibility: visible; 150 | } 151 | 152 | .fancybox-tmp { 153 | position: absolute; 154 | top: -99999px; 155 | left: -99999px; 156 | max-width: 99999px; 157 | max-height: 99999px; 158 | overflow: visible !important; 159 | } 160 | 161 | /* Overlay helper */ 162 | 163 | .fancybox-lock { 164 | overflow: visible !important; 165 | width: auto; 166 | } 167 | 168 | .fancybox-lock body { 169 | overflow: hidden !important; 170 | } 171 | 172 | .fancybox-lock-test { 173 | overflow-y: hidden !important; 174 | } 175 | 176 | .fancybox-overlay { 177 | position: absolute; 178 | top: 0; 179 | left: 0; 180 | overflow: hidden; 181 | display: none; 182 | z-index: 8010; 183 | background: url(fancybox_overlay.png); 184 | } 185 | 186 | .fancybox-overlay-fixed { 187 | position: fixed; 188 | bottom: 0; 189 | right: 0; 190 | } 191 | 192 | .fancybox-lock .fancybox-overlay { 193 | overflow: auto; 194 | overflow-y: scroll; 195 | } 196 | 197 | /* Title helper */ 198 | 199 | .fancybox-title { 200 | visibility: hidden; 201 | font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; 202 | position: relative; 203 | text-shadow: none; 204 | z-index: 8050; 205 | } 206 | 207 | .fancybox-opened .fancybox-title { 208 | visibility: visible; 209 | } 210 | 211 | .fancybox-title-float-wrap { 212 | position: absolute; 213 | bottom: 0; 214 | right: 50%; 215 | margin-bottom: -35px; 216 | z-index: 8050; 217 | text-align: center; 218 | } 219 | 220 | .fancybox-title-float-wrap .child { 221 | display: inline-block; 222 | margin-right: -100%; 223 | padding: 2px 20px; 224 | background: transparent; /* Fallback for web browsers that doesn't support RGBa */ 225 | background: rgba(0, 0, 0, 0.8); 226 | -webkit-border-radius: 15px; 227 | -moz-border-radius: 15px; 228 | border-radius: 15px; 229 | text-shadow: 0 1px 2px #222; 230 | color: #FFF; 231 | font-weight: bold; 232 | line-height: 24px; 233 | white-space: nowrap; 234 | } 235 | 236 | .fancybox-title-outside-wrap { 237 | position: relative; 238 | margin-top: 10px; 239 | color: #fff; 240 | } 241 | 242 | .fancybox-title-inside-wrap { 243 | padding-top: 10px; 244 | } 245 | 246 | .fancybox-title-over-wrap { 247 | position: absolute; 248 | bottom: 0; 249 | left: 0; 250 | color: #fff; 251 | padding: 10px; 252 | background: #000; 253 | background: rgba(0, 0, 0, .8); 254 | } 255 | 256 | /*Retina graphics!*/ 257 | @media only screen and (-webkit-min-device-pixel-ratio: 1.5), 258 | only screen and (min--moz-device-pixel-ratio: 1.5), 259 | only screen and (min-device-pixel-ratio: 1.5){ 260 | 261 | #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { 262 | background-image: url(fancybox_sprite@2x.png); 263 | background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/ 264 | } 265 | 266 | #fancybox-loading div { 267 | background-image: url(fancybox_loading@2x.gif); 268 | background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/ 269 | } 270 | } -------------------------------------------------------------------------------- /static/fancybox/helpers/jquery.fancybox-media.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Media helper for fancyBox 3 | * version: 1.0.6 (Fri, 14 Jun 2013) 4 | * @requires fancyBox v2.0 or later 5 | * 6 | * Usage: 7 | * $(".fancybox").fancybox({ 8 | * helpers : { 9 | * media: true 10 | * } 11 | * }); 12 | * 13 | * Set custom URL parameters: 14 | * $(".fancybox").fancybox({ 15 | * helpers : { 16 | * media: { 17 | * youtube : { 18 | * params : { 19 | * autoplay : 0 20 | * } 21 | * } 22 | * } 23 | * } 24 | * }); 25 | * 26 | * Or: 27 | * $(".fancybox").fancybox({, 28 | * helpers : { 29 | * media: true 30 | * }, 31 | * youtube : { 32 | * autoplay: 0 33 | * } 34 | * }); 35 | * 36 | * Supports: 37 | * 38 | * Youtube 39 | * http://www.youtube.com/watch?v=opj24KnzrWo 40 | * http://www.youtube.com/embed/opj24KnzrWo 41 | * http://youtu.be/opj24KnzrWo 42 | * http://www.youtube-nocookie.com/embed/opj24KnzrWo 43 | * Vimeo 44 | * http://vimeo.com/40648169 45 | * http://vimeo.com/channels/staffpicks/38843628 46 | * http://vimeo.com/groups/surrealism/videos/36516384 47 | * http://player.vimeo.com/video/45074303 48 | * Metacafe 49 | * http://www.metacafe.com/watch/7635964/dr_seuss_the_lorax_movie_trailer/ 50 | * http://www.metacafe.com/watch/7635964/ 51 | * Dailymotion 52 | * http://www.dailymotion.com/video/xoytqh_dr-seuss-the-lorax-premiere_people 53 | * Twitvid 54 | * http://twitvid.com/QY7MD 55 | * Twitpic 56 | * http://twitpic.com/7p93st 57 | * Instagram 58 | * http://instagr.am/p/IejkuUGxQn/ 59 | * http://instagram.com/p/IejkuUGxQn/ 60 | * Google maps 61 | * http://maps.google.com/maps?q=Eiffel+Tower,+Avenue+Gustave+Eiffel,+Paris,+France&t=h&z=17 62 | * http://maps.google.com/?ll=48.857995,2.294297&spn=0.007666,0.021136&t=m&z=16 63 | * http://maps.google.com/?ll=48.859463,2.292626&spn=0.000965,0.002642&t=m&z=19&layer=c&cbll=48.859524,2.292532&panoid=YJ0lq28OOy3VT2IqIuVY0g&cbp=12,151.58,,0,-15.56 64 | */ 65 | ;(function ($) { 66 | "use strict"; 67 | 68 | //Shortcut for fancyBox object 69 | var F = $.fancybox, 70 | format = function( url, rez, params ) { 71 | params = params || ''; 72 | 73 | if ( $.type( params ) === "object" ) { 74 | params = $.param(params, true); 75 | } 76 | 77 | $.each(rez, function(key, value) { 78 | url = url.replace( '$' + key, value || '' ); 79 | }); 80 | 81 | if (params.length) { 82 | url += ( url.indexOf('?') > 0 ? '&' : '?' ) + params; 83 | } 84 | 85 | return url; 86 | }; 87 | 88 | //Add helper object 89 | F.helpers.media = { 90 | defaults : { 91 | youtube : { 92 | matcher : /(youtube\.com|youtu\.be|youtube-nocookie\.com)\/(watch\?v=|v\/|u\/|embed\/?)?(videoseries\?list=(.*)|[\w-]{11}|\?listType=(.*)&list=(.*)).*/i, 93 | params : { 94 | autoplay : 1, 95 | autohide : 1, 96 | fs : 1, 97 | rel : 0, 98 | hd : 1, 99 | wmode : 'opaque', 100 | enablejsapi : 1 101 | }, 102 | type : 'iframe', 103 | url : '//www.youtube.com/embed/$3' 104 | }, 105 | vimeo : { 106 | matcher : /(?:vimeo(?:pro)?.com)\/(?:[^\d]+)?(\d+)(?:.*)/, 107 | params : { 108 | autoplay : 1, 109 | hd : 1, 110 | show_title : 1, 111 | show_byline : 1, 112 | show_portrait : 0, 113 | fullscreen : 1 114 | }, 115 | type : 'iframe', 116 | url : '//player.vimeo.com/video/$1' 117 | }, 118 | metacafe : { 119 | matcher : /metacafe.com\/(?:watch|fplayer)\/([\w\-]{1,10})/, 120 | params : { 121 | autoPlay : 'yes' 122 | }, 123 | type : 'swf', 124 | url : function( rez, params, obj ) { 125 | obj.swf.flashVars = 'playerVars=' + $.param( params, true ); 126 | 127 | return '//www.metacafe.com/fplayer/' + rez[1] + '/.swf'; 128 | } 129 | }, 130 | dailymotion : { 131 | matcher : /dailymotion.com\/video\/(.*)\/?(.*)/, 132 | params : { 133 | additionalInfos : 0, 134 | autoStart : 1 135 | }, 136 | type : 'swf', 137 | url : '//www.dailymotion.com/swf/video/$1' 138 | }, 139 | twitvid : { 140 | matcher : /twitvid\.com\/([a-zA-Z0-9_\-\?\=]+)/i, 141 | params : { 142 | autoplay : 0 143 | }, 144 | type : 'iframe', 145 | url : '//www.twitvid.com/embed.php?guid=$1' 146 | }, 147 | twitpic : { 148 | matcher : /twitpic\.com\/(?!(?:place|photos|events)\/)([a-zA-Z0-9\?\=\-]+)/i, 149 | type : 'image', 150 | url : '//twitpic.com/show/full/$1/' 151 | }, 152 | instagram : { 153 | matcher : /(instagr\.am|instagram\.com)\/p\/([a-zA-Z0-9_\-]+)\/?/i, 154 | type : 'image', 155 | url : '//$1/p/$2/media/?size=l' 156 | }, 157 | google_maps : { 158 | matcher : /maps\.google\.([a-z]{2,3}(\.[a-z]{2})?)\/(\?ll=|maps\?)(.*)/i, 159 | type : 'iframe', 160 | url : function( rez ) { 161 | return '//maps.google.' + rez[1] + '/' + rez[3] + '' + rez[4] + '&output=' + (rez[4].indexOf('layer=c') > 0 ? 'svembed' : 'embed'); 162 | } 163 | } 164 | }, 165 | 166 | beforeLoad : function(opts, obj) { 167 | var url = obj.href || '', 168 | type = false, 169 | what, 170 | item, 171 | rez, 172 | params; 173 | 174 | for (what in opts) { 175 | if (opts.hasOwnProperty(what)) { 176 | item = opts[ what ]; 177 | rez = url.match( item.matcher ); 178 | 179 | if (rez) { 180 | type = item.type; 181 | params = $.extend(true, {}, item.params, obj[ what ] || ($.isPlainObject(opts[ what ]) ? opts[ what ].params : null)); 182 | 183 | url = $.type( item.url ) === "function" ? item.url.call( this, rez, params, obj ) : format( item.url, rez, params ); 184 | 185 | break; 186 | } 187 | } 188 | } 189 | 190 | if (type) { 191 | obj.href = url; 192 | obj.type = type; 193 | 194 | obj.autoHeight = false; 195 | } 196 | } 197 | }; 198 | 199 | }(jQuery)); -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Icarus 2 | 3 | Icarus is a responsive and customizable theme for bloggers. It's a port of the same-named theme for [Hexo](//hexo.io) made by [Ruipeng Zhang](https://github.com/ppoffice). Noteworthy features of this Hugo theme are the integration of a comment-system powered by Disqus, localization (l10n) support, syntax highlighting for source code and optional widgets for the sidebar. 4 | 5 | ### Please note that this theme is no longer maintained. 6 | *A maintained fork of this theme can be found at [gitlab.com/toryanderson/hugo-icarus](https://gitlab.com/toryanderson/hugo-icarus)* 7 | 8 | ![](https://raw.githubusercontent.com/digitalcraftsman/hugo-icarus-theme/master/images/screenshot.png) 9 | 10 | ## Get the theme 11 | 12 | I assume you've Git installed. Inside the folder of your Hugo site run 13 | 14 | $ cd themes 15 | $ git clone https://github.com/digitalcraftsman/hugo-icarus-theme.git 16 | 17 | You should see a folder called `hugo-icarus-theme` inside the `themes` directory that we created a few moments ago. For more information read the official [setup guide](https://gohugo.io/overview/installing/) of Hugo. 18 | 19 | 20 | ## Setup 21 | 22 | Next, navigate to the `exampleSite` folder at `themes/hugo-type-theme/exampleSite/`. In order to get your site running, you need to copy `config.toml` and all the content of all relevant subfolders such as `data/l10n.toml` into the root folders. 23 | 24 | To turn the `exampleSite` folder in a standalone demo site the `themesDir` property has been set to `../..`. This way you can preview this theme by running `hugo server` inside `exampleSite` folder. 25 | 26 | **Due to the customized `themesDir` path Hugo will fail to find themes if you copied the `config.toml` into the root directory of a regular Hugo website.** Make sure you comment out the `themesDir` property if you use the theme in production. 27 | 28 | 29 | ## The config file 30 | 31 | Now, let us take a look into the `config.toml`. Feel free to play around with the settings. 32 | 33 | 34 | ### Comments 35 | 36 | The optional comment system is powered by Disqus. Enter your shortname to enable the comment section under your posts. 37 | 38 | disqusShortname = "" 39 | 40 | Tip: you can disable the comment section for a single page in its frontmatter: 41 | 42 | ```toml 43 | +++ 44 | disable_comments = true 45 | +++ 46 | ``` 47 | 48 | 49 | ### Menu 50 | 51 | You can also define the items menu entries as you like. First, let us link a post that you've written. We can do this in the frontmatter of the post's content file by setting `menu` to `main`. 52 | 53 | +++ 54 | menu = "main" 55 | +++ 56 | 57 | Furthermore, we can add entries that don't link to posts. Back in the `config.toml` you'll find a section for the menus: 58 | 59 | [[params.menu]] 60 | before = true 61 | label = "Home" 62 | link = "/" 63 | 64 | Define a label and enter the URL to resource you want to link. With `before` you can decide whether the link should appear before **or** after all linked posts in the menu. Therefore, `Home` appears before the linked post. 65 | 66 | 67 | ### Sidebars 68 | 69 | In order to use the full width of the website you can disable the profile on the left and / or the widgets on the right for a single page in the frontmatter: 70 | 71 | ```toml 72 | +++ 73 | disable_profile = true 74 | disable_widgets = true 75 | +++ 76 | ``` 77 | 78 | 79 | ### Tell me who you are 80 | 81 | This theme also provides a profile section on the left. Add your social network accounts to the profile section on the left by entering your username under `social`. The links to your account will be create automatically. 82 | 83 | 84 | ### Widgets 85 | 86 | Beside the profile section you can add widgets on the right sidebar. The following widgets are available: 87 | 88 | - recent articles 89 | - category list 90 | - tag list 91 | - tag cloud 92 | 93 | You can deactivate them under `params.widgets`: 94 | 95 | [params.widgets] 96 | recent_articles = false 97 | categories = true 98 | tags = true 99 | tag_cloud = true 100 | 101 | ### Date line 102 | 103 | The date line includes: post date, # of words, approximate reading, time tags and categories. However, if you want certain pages to omit the date line, simply put `nodateline = true` in the front matter for that page. 104 | 105 | ### Disable Previous / next article links 106 | 107 | To disable the inclusion of a previous/next article link at the bottom of the page, add `noprevnext = true` to the front matter. This feature, along with `nodateline` can be used to create standalone pages that are less "blog-like" 108 | 109 | ## Localization (l10n) 110 | 111 | You don't blog in English and you want to translate the theme into your native locale? No problem. Take a look in the `data` folder and you'll find a file `l10n.toml` that we've copied at the beginning. It contains all strings related to the theme. Just replace the original strings with your own. 112 | 113 | 114 | ## Linking thumbnails 115 | 116 | After creating a new post you can define a banner by entering the relative path to the image. 117 | 118 | banner = "banners/placeholder.png" 119 | 120 | This way you can store them either next to the content file or in the `static` folder. 121 | 122 | 123 | ## Mathematical equations 124 | 125 | Mathematical equations in form of LaTeX or MathML code can be rendered with the support of [MathJax](https://www.mathjax.org). MathML works out of the box. If you're using LaTeX you need to wrap your equation with `$$`. 126 | 127 | You can also print formulas inline. In this case wrap the formula only once with `$`. 128 | 129 | If you don't need equations, you can disable MathJax but putting `disable_mathjax = true` in your config.toml. This will prevent clients from unnecessarily downloading the MathJax library. 130 | 131 | 132 | ### Gallery shortcode 133 | 134 | This shortcode you to easily include a gallery into your pages. Copy the code below into your content file and enter the relative paths to your images. 135 | 136 | {{< gallery 137 | "/banners/placeholder.png" 138 | "/banners/placeholder.png" 139 | "/banners/placeholder.png" 140 | >}} 141 | 142 | 143 | ## Nearly finished 144 | 145 | In order to see your site in action, run Hugo's built-in local server. 146 | 147 | $ hugo server 148 | 149 | Now enter [`localhost:1313`](http://localhost:1313) in the address bar of your browser. 150 | 151 | 152 | ## Contributing 153 | 154 | Have you found a bug or got an idea for a new feature? Feel free to use the [issue tracker](//github.com/digitalcraftsman/hugo-icarus-theme/issues) to let me know. Or make directly a [pull request](//github.com/digitalcraftsman/hugo-icarus-theme/pulls). 155 | 156 | 157 | ## License 158 | 159 | This theme is released under the MIT license. For more information read the [license](https://github.com/digitalcraftsman/hugo-icarus-theme/blob/master/LICENSE.md). 160 | 161 | 162 | ## Acknowledgements 163 | 164 | Thanks to 165 | 166 | - [Ruipeng Zhang](https://github.com/ppoffice) for creating this theme 167 | - [Steve Francia](//github.com/spf13) for creating Hugo and the awesome community around the project 168 | -------------------------------------------------------------------------------- /static/fancybox/jquery.fancybox.pack.js: -------------------------------------------------------------------------------- 1 | /*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */ 2 | (function(s,H,f,w){var K=f("html"),q=f(s),p=f(H),b=f.fancybox=function(){b.open.apply(this,arguments)},J=navigator.userAgent.match(/msie/i),C=null,t=H.createTouch!==w,u=function(a){return a&&a.hasOwnProperty&&a instanceof f},r=function(a){return a&&"string"===f.type(a)},F=function(a){return r(a)&&0
    ',image:'',iframe:'",error:'

    The requested content cannot be loaded.
    Please try again later.

    ',closeBtn:'',next:'',prev:''},openEffect:"fade",openSpeed:250,openEasing:"swing",openOpacity:!0, 6 | openMethod:"zoomIn",closeEffect:"fade",closeSpeed:250,closeEasing:"swing",closeOpacity:!0,closeMethod:"zoomOut",nextEffect:"elastic",nextSpeed:250,nextEasing:"swing",nextMethod:"changeIn",prevEffect:"elastic",prevSpeed:250,prevEasing:"swing",prevMethod:"changeOut",helpers:{overlay:!0,title:!0},onCancel:f.noop,beforeLoad:f.noop,afterLoad:f.noop,beforeShow:f.noop,afterShow:f.noop,beforeChange:f.noop,beforeClose:f.noop,afterClose:f.noop},group:{},opts:{},previous:null,coming:null,current:null,isActive:!1, 7 | isOpen:!1,isOpened:!1,wrap:null,skin:null,outer:null,inner:null,player:{timer:null,isActive:!1},ajaxLoad:null,imgPreload:null,transitions:{},helpers:{},open:function(a,d){if(a&&(f.isPlainObject(d)||(d={}),!1!==b.close(!0)))return f.isArray(a)||(a=u(a)?f(a).get():[a]),f.each(a,function(e,c){var l={},g,h,k,n,m;"object"===f.type(c)&&(c.nodeType&&(c=f(c)),u(c)?(l={href:c.data("fancybox-href")||c.attr("href"),title:f("
    ").text(c.data("fancybox-title")||c.attr("title")).html(),isDom:!0,element:c}, 8 | f.metadata&&f.extend(!0,l,c.metadata())):l=c);g=d.href||l.href||(r(c)?c:null);h=d.title!==w?d.title:l.title||"";n=(k=d.content||l.content)?"html":d.type||l.type;!n&&l.isDom&&(n=c.data("fancybox-type"),n||(n=(n=c.prop("class").match(/fancybox\.(\w+)/))?n[1]:null));r(g)&&(n||(b.isImage(g)?n="image":b.isSWF(g)?n="swf":"#"===g.charAt(0)?n="inline":r(c)&&(n="html",k=c)),"ajax"===n&&(m=g.split(/\s+/,2),g=m.shift(),m=m.shift()));k||("inline"===n?g?k=f(r(g)?g.replace(/.*(?=#[^\s]+$)/,""):g):l.isDom&&(k=c): 9 | "html"===n?k=g:n||g||!l.isDom||(n="inline",k=c));f.extend(l,{href:g,type:n,content:k,title:h,selector:m});a[e]=l}),b.opts=f.extend(!0,{},b.defaults,d),d.keys!==w&&(b.opts.keys=d.keys?f.extend({},b.defaults.keys,d.keys):!1),b.group=a,b._start(b.opts.index)},cancel:function(){var a=b.coming;a&&!1===b.trigger("onCancel")||(b.hideLoading(),a&&(b.ajaxLoad&&b.ajaxLoad.abort(),b.ajaxLoad=null,b.imgPreload&&(b.imgPreload.onload=b.imgPreload.onerror=null),a.wrap&&a.wrap.stop(!0,!0).trigger("onReset").remove(), 10 | b.coming=null,b.current||b._afterZoomOut(a)))},close:function(a){b.cancel();!1!==b.trigger("beforeClose")&&(b.unbindEvents(),b.isActive&&(b.isOpen&&!0!==a?(b.isOpen=b.isOpened=!1,b.isClosing=!0,f(".fancybox-item, .fancybox-nav").remove(),b.wrap.stop(!0,!0).removeClass("fancybox-opened"),b.transitions[b.current.closeMethod]()):(f(".fancybox-wrap").stop(!0).trigger("onReset").remove(),b._afterZoomOut())))},play:function(a){var d=function(){clearTimeout(b.player.timer)},e=function(){d();b.current&&b.player.isActive&& 11 | (b.player.timer=setTimeout(b.next,b.current.playSpeed))},c=function(){d();p.unbind(".player");b.player.isActive=!1;b.trigger("onPlayEnd")};!0===a||!b.player.isActive&&!1!==a?b.current&&(b.current.loop||b.current.index=c.index?"next":"prev"],b.router=e||"jumpto",c.loop&&(0>a&&(a=c.group.length+a%c.group.length),a%=c.group.length),c.group[a]!==w&&(b.cancel(),b._start(a)))},reposition:function(a,d){var e=b.current,c=e?e.wrap:null,l;c&&(l=b._getPosition(d),a&&"scroll"===a.type?(delete l.position,c.stop(!0,!0).animate(l,200)):(c.css(l),e.pos=f.extend({},e.dim,l)))}, 13 | update:function(a){var d=a&&a.originalEvent&&a.originalEvent.type,e=!d||"orientationchange"===d;e&&(clearTimeout(C),C=null);b.isOpen&&!C&&(C=setTimeout(function(){var c=b.current;c&&!b.isClosing&&(b.wrap.removeClass("fancybox-tmp"),(e||"load"===d||"resize"===d&&c.autoResize)&&b._setDimension(),"scroll"===d&&c.canShrink||b.reposition(a),b.trigger("onUpdate"),C=null)},e&&!t?0:300))},toggle:function(a){b.isOpen&&(b.current.fitToView="boolean"===f.type(a)?a:!b.current.fitToView,t&&(b.wrap.removeAttr("style").addClass("fancybox-tmp"), 14 | b.trigger("onUpdate")),b.update())},hideLoading:function(){p.unbind(".loading");f("#fancybox-loading").remove()},showLoading:function(){var a,d;b.hideLoading();a=f('
    ').click(b.cancel).appendTo("body");p.bind("keydown.loading",function(a){27===(a.which||a.keyCode)&&(a.preventDefault(),b.cancel())});b.defaults.fixed||(d=b.getViewport(),a.css({position:"absolute",top:0.5*d.h+d.y,left:0.5*d.w+d.x}));b.trigger("onLoading")},getViewport:function(){var a=b.current&& 15 | b.current.locked||!1,d={x:q.scrollLeft(),y:q.scrollTop()};a&&a.length?(d.w=a[0].clientWidth,d.h=a[0].clientHeight):(d.w=t&&s.innerWidth?s.innerWidth:q.width(),d.h=t&&s.innerHeight?s.innerHeight:q.height());return d},unbindEvents:function(){b.wrap&&u(b.wrap)&&b.wrap.unbind(".fb");p.unbind(".fb");q.unbind(".fb")},bindEvents:function(){var a=b.current,d;a&&(q.bind("orientationchange.fb"+(t?"":" resize.fb")+(a.autoCenter&&!a.locked?" scroll.fb":""),b.update),(d=a.keys)&&p.bind("keydown.fb",function(e){var c= 16 | e.which||e.keyCode,l=e.target||e.srcElement;if(27===c&&b.coming)return!1;e.ctrlKey||e.altKey||e.shiftKey||e.metaKey||l&&(l.type||f(l).is("[contenteditable]"))||f.each(d,function(d,l){if(1h[0].clientWidth||h[0].clientHeight&&h[0].scrollHeight>h[0].clientHeight),h=f(h).parent();0!==c&&!k&&1g||0>l)&&b.next(0>g?"up":"right"),d.preventDefault())}))},trigger:function(a,d){var e,c=d||b.coming||b.current;if(c){f.isFunction(c[a])&&(e=c[a].apply(c,Array.prototype.slice.call(arguments,1)));if(!1===e)return!1;c.helpers&&f.each(c.helpers,function(d,e){if(e&& 18 | b.helpers[d]&&f.isFunction(b.helpers[d][a]))b.helpers[d][a](f.extend(!0,{},b.helpers[d].defaults,e),c)})}p.trigger(a)},isImage:function(a){return r(a)&&a.match(/(^data:image\/.*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg)((\?|#).*)?$)/i)},isSWF:function(a){return r(a)&&a.match(/\.(swf)((\?|#).*)?$/i)},_start:function(a){var d={},e,c;a=m(a);e=b.group[a]||null;if(!e)return!1;d=f.extend(!0,{},b.opts,e);e=d.margin;c=d.padding;"number"===f.type(e)&&(d.margin=[e,e,e,e]);"number"===f.type(c)&&(d.padding=[c,c, 19 | c,c]);d.modal&&f.extend(!0,d,{closeBtn:!1,closeClick:!1,nextClick:!1,arrows:!1,mouseWheel:!1,keys:null,helpers:{overlay:{closeClick:!1}}});d.autoSize&&(d.autoWidth=d.autoHeight=!0);"auto"===d.width&&(d.autoWidth=!0);"auto"===d.height&&(d.autoHeight=!0);d.group=b.group;d.index=a;b.coming=d;if(!1===b.trigger("beforeLoad"))b.coming=null;else{c=d.type;e=d.href;if(!c)return b.coming=null,b.current&&b.router&&"jumpto"!==b.router?(b.current.index=a,b[b.router](b.direction)):!1;b.isActive=!0;if("image"=== 20 | c||"swf"===c)d.autoHeight=d.autoWidth=!1,d.scrolling="visible";"image"===c&&(d.aspectRatio=!0);"iframe"===c&&t&&(d.scrolling="scroll");d.wrap=f(d.tpl.wrap).addClass("fancybox-"+(t?"mobile":"desktop")+" fancybox-type-"+c+" fancybox-tmp "+d.wrapCSS).appendTo(d.parent||"body");f.extend(d,{skin:f(".fancybox-skin",d.wrap),outer:f(".fancybox-outer",d.wrap),inner:f(".fancybox-inner",d.wrap)});f.each(["Top","Right","Bottom","Left"],function(a,b){d.skin.css("padding"+b,x(d.padding[a]))});b.trigger("onReady"); 21 | if("inline"===c||"html"===c){if(!d.content||!d.content.length)return b._error("content")}else if(!e)return b._error("href");"image"===c?b._loadImage():"ajax"===c?b._loadAjax():"iframe"===c?b._loadIframe():b._afterLoad()}},_error:function(a){f.extend(b.coming,{type:"html",autoWidth:!0,autoHeight:!0,minWidth:0,minHeight:0,scrolling:"no",hasError:a,content:b.coming.tpl.error});b._afterLoad()},_loadImage:function(){var a=b.imgPreload=new Image;a.onload=function(){this.onload=this.onerror=null;b.coming.width= 22 | this.width/b.opts.pixelRatio;b.coming.height=this.height/b.opts.pixelRatio;b._afterLoad()};a.onerror=function(){this.onload=this.onerror=null;b._error("image")};a.src=b.coming.href;!0!==a.complete&&b.showLoading()},_loadAjax:function(){var a=b.coming;b.showLoading();b.ajaxLoad=f.ajax(f.extend({},a.ajax,{url:a.href,error:function(a,e){b.coming&&"abort"!==e?b._error("ajax",a):b.hideLoading()},success:function(d,e){"success"===e&&(a.content=d,b._afterLoad())}}))},_loadIframe:function(){var a=b.coming, 23 | d=f(a.tpl.iframe.replace(/\{rnd\}/g,(new Date).getTime())).attr("scrolling",t?"auto":a.iframe.scrolling).attr("src",a.href);f(a.wrap).bind("onReset",function(){try{f(this).find("iframe").hide().attr("src","//about:blank").end().empty()}catch(a){}});a.iframe.preload&&(b.showLoading(),d.one("load",function(){f(this).data("ready",1);t||f(this).bind("load.fb",b.update);f(this).parents(".fancybox-wrap").width("100%").removeClass("fancybox-tmp").show();b._afterLoad()}));a.content=d.appendTo(a.inner);a.iframe.preload|| 24 | b._afterLoad()},_preloadImages:function(){var a=b.group,d=b.current,e=a.length,c=d.preload?Math.min(d.preload,e-1):0,f,g;for(g=1;g<=c;g+=1)f=a[(d.index+g)%e],"image"===f.type&&f.href&&((new Image).src=f.href)},_afterLoad:function(){var a=b.coming,d=b.current,e,c,l,g,h;b.hideLoading();if(a&&!1!==b.isActive)if(!1===b.trigger("afterLoad",a,d))a.wrap.stop(!0).trigger("onReset").remove(),b.coming=null;else{d&&(b.trigger("beforeChange",d),d.wrap.stop(!0).removeClass("fancybox-opened").find(".fancybox-item, .fancybox-nav").remove()); 25 | b.unbindEvents();e=a.content;c=a.type;l=a.scrolling;f.extend(b,{wrap:a.wrap,skin:a.skin,outer:a.outer,inner:a.inner,current:a,previous:d});g=a.href;switch(c){case "inline":case "ajax":case "html":a.selector?e=f("
    ").html(e).find(a.selector):u(e)&&(e.data("fancybox-placeholder")||e.data("fancybox-placeholder",f('
    ').insertAfter(e).hide()),e=e.show().detach(),a.wrap.bind("onReset",function(){f(this).find(e).length&&e.hide().replaceAll(e.data("fancybox-placeholder")).data("fancybox-placeholder", 26 | !1)}));break;case "image":e=a.tpl.image.replace(/\{href\}/g,g);break;case "swf":e='',h="",f.each(a.swf,function(a,b){e+='';h+=" "+a+'="'+b+'"'}),e+='"}u(e)&&e.parent().is(a.inner)||a.inner.append(e);b.trigger("beforeShow"); 27 | a.inner.css("overflow","yes"===l?"scroll":"no"===l?"hidden":l);b._setDimension();b.reposition();b.isOpen=!1;b.coming=null;b.bindEvents();if(!b.isOpened)f(".fancybox-wrap").not(a.wrap).stop(!0).trigger("onReset").remove();else if(d.prevMethod)b.transitions[d.prevMethod]();b.transitions[b.isOpened?a.nextMethod:a.openMethod]();b._preloadImages()}},_setDimension:function(){var a=b.getViewport(),d=0,e=!1,c=!1,e=b.wrap,l=b.skin,g=b.inner,h=b.current,c=h.width,k=h.height,n=h.minWidth,v=h.minHeight,p=h.maxWidth, 28 | q=h.maxHeight,t=h.scrolling,r=h.scrollOutside?h.scrollbarWidth:0,y=h.margin,z=m(y[1]+y[3]),s=m(y[0]+y[2]),w,A,u,D,B,G,C,E,I;e.add(l).add(g).width("auto").height("auto").removeClass("fancybox-tmp");y=m(l.outerWidth(!0)-l.width());w=m(l.outerHeight(!0)-l.height());A=z+y;u=s+w;D=F(c)?(a.w-A)*m(c)/100:c;B=F(k)?(a.h-u)*m(k)/100:k;if("iframe"===h.type){if(I=h.content,h.autoHeight&&1===I.data("ready"))try{I[0].contentWindow.document.location&&(g.width(D).height(9999),G=I.contents().find("body"),r&&G.css("overflow-x", 29 | "hidden"),B=G.outerHeight(!0))}catch(H){}}else if(h.autoWidth||h.autoHeight)g.addClass("fancybox-tmp"),h.autoWidth||g.width(D),h.autoHeight||g.height(B),h.autoWidth&&(D=g.width()),h.autoHeight&&(B=g.height()),g.removeClass("fancybox-tmp");c=m(D);k=m(B);E=D/B;n=m(F(n)?m(n,"w")-A:n);p=m(F(p)?m(p,"w")-A:p);v=m(F(v)?m(v,"h")-u:v);q=m(F(q)?m(q,"h")-u:q);G=p;C=q;h.fitToView&&(p=Math.min(a.w-A,p),q=Math.min(a.h-u,q));A=a.w-z;s=a.h-s;h.aspectRatio?(c>p&&(c=p,k=m(c/E)),k>q&&(k=q,c=m(k*E)),cA||z>s)&&c>n&&k>v&&!(19p&&(c=p,k=m(c/E)),g.width(c).height(k),e.width(c+y),a=e.width(),z=e.height();else c=Math.max(n,Math.min(c,c-(a-A))),k=Math.max(v,Math.min(k,k-(z-s)));r&&"auto"===t&&kA||z>s)&&c>n&&k>v;c=h.aspectRatio?cv&&k
    ').appendTo(d&&d.lenth?d:"body");this.fixed=!1;a.fixed&&b.defaults.fixed&&(this.overlay.addClass("fancybox-overlay-fixed"),this.fixed=!0)},open:function(a){var d=this;a=f.extend({},this.defaults,a);this.overlay?this.overlay.unbind(".overlay").width("auto").height("auto"):this.create(a);this.fixed||(q.bind("resize.overlay",f.proxy(this.update,this)),this.update());a.closeClick&&this.overlay.bind("click.overlay", 40 | function(a){if(f(a.target).hasClass("fancybox-overlay"))return b.isActive?b.close():d.close(),!1});this.overlay.css(a.css).show()},close:function(){q.unbind("resize.overlay");this.el.hasClass("fancybox-lock")&&(f(".fancybox-margin").removeClass("fancybox-margin"),this.el.removeClass("fancybox-lock"),q.scrollTop(this.scrollV).scrollLeft(this.scrollH));f(".fancybox-overlay").remove().hide();f.extend(this,{overlay:null,fixed:!1})},update:function(){var a="100%",b;this.overlay.width(a).height("100%"); 41 | J?(b=Math.max(H.documentElement.offsetWidth,H.body.offsetWidth),p.width()>b&&(a=p.width())):p.width()>q.width()&&(a=p.width());this.overlay.width(a).height(p.height())},onReady:function(a,b){var e=this.overlay;f(".fancybox-overlay").stop(!0,!0);e||this.create(a);a.locked&&this.fixed&&b.fixed&&(b.locked=this.overlay.append(b.wrap),b.fixed=!1);!0===a.showEarly&&this.beforeShow.apply(this,arguments)},beforeShow:function(a,b){b.locked&&!this.el.hasClass("fancybox-lock")&&(!1!==this.fixPosition&&f("*").filter(function(){return"fixed"=== 42 | f(this).css("position")&&!f(this).hasClass("fancybox-overlay")&&!f(this).hasClass("fancybox-wrap")}).addClass("fancybox-margin"),this.el.addClass("fancybox-margin"),this.scrollV=q.scrollTop(),this.scrollH=q.scrollLeft(),this.el.addClass("fancybox-lock"),q.scrollTop(this.scrollV).scrollLeft(this.scrollH));this.open(a)},onUpdate:function(){this.fixed||this.update()},afterClose:function(a){this.overlay&&!b.coming&&this.overlay.fadeOut(a.speedOut,f.proxy(this.close,this))}};b.helpers.title={defaults:{type:"float", 43 | position:"bottom"},beforeShow:function(a){var d=b.current,e=d.title,c=a.type;f.isFunction(e)&&(e=e.call(d.element,d));if(r(e)&&""!==f.trim(e)){d=f('
    '+e+"
    ");switch(c){case "inside":c=b.skin;break;case "outside":c=b.wrap;break;case "over":c=b.inner;break;default:c=b.skin,d.appendTo("body"),J&&d.width(d.width()),d.wrapInner(''),b.current.margin[2]+=Math.abs(m(d.css("margin-bottom")))}d["top"===a.position?"prependTo": 44 | "appendTo"](c)}}};f.fn.fancybox=function(a){var d,e=f(this),c=this.selector||"",l=function(g){var h=f(this).blur(),k=d,l,m;g.ctrlKey||g.altKey||g.shiftKey||g.metaKey||h.is(".fancybox-wrap")||(l=a.groupAttr||"data-fancybox-group",m=h.attr(l),m||(l="rel",m=h.get(0)[l]),m&&""!==m&&"nofollow"!==m&&(h=c.length?f(c):e,h=h.filter("["+l+'="'+m+'"]'),k=h.index(this)),a.index=k,!1!==b.open(h,a)&&g.preventDefault())};a=a||{};d=a.index||0;c&&!1!==a.live?p.undelegate(c,"click.fb-start").delegate(c+":not('.fancybox-item, .fancybox-nav')", 45 | "click.fb-start",l):e.unbind("click.fb-start").bind("click.fb-start",l);this.filter("[data-fancybox-start=1]").trigger("click");return this};p.ready(function(){var a,d;f.scrollbarWidth===w&&(f.scrollbarWidth=function(){var a=f('
    ').appendTo("body"),b=a.children(),b=b.innerWidth()-b.height(99).innerWidth();a.remove();return b});f.support.fixedPosition===w&&(f.support.fixedPosition=function(){var a=f('
    ').appendTo("body"), 46 | b=20===a[0].offsetTop||15===a[0].offsetTop;a.remove();return b}());f.extend(b.defaults,{scrollbarWidth:f.scrollbarWidth(),fixed:f.support.fixedPosition,parent:f("body")});a=f(s).width();K.addClass("fancybox-lock-test");d=f(s).width();K.removeClass("fancybox-lock-test");f("").appendTo("head")})})(window,document,jQuery); -------------------------------------------------------------------------------- /static/css/font-awesome.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.6.3');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto} 5 | -------------------------------------------------------------------------------- /static/css/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | width: 100%; 3 | } 4 | body:before, 5 | body:after { 6 | content: ""; 7 | display: table; 8 | } 9 | body:after { 10 | clear: both; 11 | } 12 | html, 13 | body, 14 | div, 15 | span, 16 | applet, 17 | object, 18 | iframe, 19 | h1, 20 | h2, 21 | h3, 22 | h4, 23 | h5, 24 | h6, 25 | p, 26 | blockquote, 27 | pre, 28 | a, 29 | abbr, 30 | acronym, 31 | address, 32 | big, 33 | cite, 34 | code, 35 | del, 36 | dfn, 37 | em, 38 | img, 39 | ins, 40 | kbd, 41 | q, 42 | s, 43 | samp, 44 | small, 45 | strike, 46 | strong, 47 | sub, 48 | sup, 49 | tt, 50 | var, 51 | dl, 52 | dt, 53 | dd, 54 | ol, 55 | ul, 56 | li, 57 | fieldset, 58 | form, 59 | label, 60 | legend, 61 | table, 62 | caption, 63 | tbody, 64 | tfoot, 65 | thead, 66 | tr, 67 | th, 68 | td { 69 | margin: 0; 70 | padding: 0; 71 | border: 0; 72 | outline: 0; 73 | font-weight: inherit; 74 | font-style: inherit; 75 | font-family: inherit; 76 | font-size: 100%; 77 | vertical-align: baseline; 78 | } 79 | body { 80 | line-height: 1; 81 | color: #000; 82 | background: #fff; 83 | } 84 | ol, 85 | ul { 86 | list-style: none; 87 | } 88 | table { 89 | border-collapse: separate; 90 | border-spacing: 0; 91 | vertical-align: middle; 92 | } 93 | caption, 94 | th, 95 | td { 96 | text-align: left; 97 | font-weight: normal; 98 | vertical-align: middle; 99 | } 100 | a img { 101 | border: none; 102 | } 103 | input, 104 | button { 105 | margin: 0; 106 | padding: 0; 107 | } 108 | input::-moz-focus-inner, 109 | button::-moz-focus-inner { 110 | border: 0; 111 | padding: 0; 112 | } 113 | html, 114 | body, 115 | #container { 116 | height: 100%; 117 | } 118 | body { 119 | color: #565a5f; 120 | background: #f5f8f9; 121 | font: 14px "open sans", "Helvetica Neue", "Microsoft Yahei", Helvetica, Arial, sans-serif; 122 | -webkit-text-size-adjust: 100%; 123 | } 124 | a { 125 | color: #38b7ea; 126 | text-decoration: none; 127 | } 128 | a:visited { 129 | color: #38b7ea; 130 | } 131 | code { 132 | margin: 0 2px; 133 | color: #e96900; 134 | padding: 3px 5px; 135 | font-size: 0.8em; 136 | -webkit-border-radius: 2px; 137 | border-radius: 2px; 138 | font-family: "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace; 139 | background-color: #f8f8f8; 140 | } 141 | .outer { 142 | max-width: 1320px; 143 | margin: 0 auto; 144 | padding: 0 20px; 145 | } 146 | .outer:before, 147 | .outer:after { 148 | content: ""; 149 | display: table; 150 | } 151 | .outer:after { 152 | clear: both; 153 | } 154 | @media screen and (max-width: 559px) { 155 | .outer { 156 | padding: 0; 157 | } 158 | } 159 | .left, 160 | .alignleft { 161 | float: left; 162 | } 163 | .right, 164 | .alignright { 165 | float: right; 166 | } 167 | .clear { 168 | clear: both; 169 | } 170 | .logo { 171 | width: 40px; 172 | height: 40px; 173 | background-repeat: no-repeat; 174 | background-image: url("images/logo.png"); 175 | -webkit-background-size: 40px 40px; 176 | -moz-background-size: 40px 40px; 177 | background-size: 40px 40px; 178 | } 179 | #container { 180 | position: relative; 181 | } 182 | #container > .outer { 183 | margin-bottom: 30px; 184 | } 185 | @media screen and (min-width: 1200px) { 186 | #main { 187 | display: inline; 188 | float: left; 189 | width: 52.307692307692314%; 190 | margin: 0 0.769230769230769%; 191 | } 192 | } 193 | @media screen and (min-width: 800px) and (max-width: 1199px) { 194 | #main { 195 | display: inline; 196 | float: left; 197 | width: 67.6923076923077%; 198 | margin: 0 0.769230769230769%; 199 | } 200 | } 201 | .archive-article-header a, 202 | .layout-wrap-inner.tag-cloud a, 203 | .timeline-row .content h1 a, 204 | .archive-article-header a:visited, 205 | .layout-wrap-inner.tag-cloud a:visited, 206 | .timeline-row .content h1 a:visited { 207 | color: #565a5f; 208 | -webkit-transition: 0.2s ease; 209 | -moz-transition: 0.2s ease; 210 | -ms-transition: 0.2s ease; 211 | transition: 0.2s ease; 212 | } 213 | .archive-article-header a:hover, 214 | .layout-wrap-inner.tag-cloud a:hover, 215 | .timeline-row .content h1 a:hover, 216 | .archive-article-header a:visited:hover, 217 | .layout-wrap-inner.tag-cloud a:visited:hover, 218 | .timeline-row .content h1 a:visited:hover { 219 | color: #38b7ea; 220 | } 221 | .article-meta, 222 | .archive-year, 223 | .widget-title { 224 | line-height: 1em; 225 | text-decoration: none; 226 | text-transform: uppercase; 227 | } 228 | #header, 229 | #profile .inner, 230 | .article-inner, 231 | #comments, 232 | .archive-article, 233 | .timeline-row .content, 234 | #toTop { 235 | background: #fff; 236 | -webkit-box-shadow: 0 1px 2px rgba(0,0,0,0.05); 237 | box-shadow: 0 1px 2px rgba(0,0,0,0.05); 238 | } 239 | .article-entry h1, 240 | .widget h1 { 241 | font-size: 2em; 242 | } 243 | .article-entry h2, 244 | .widget h2 { 245 | font-size: 1.5em; 246 | } 247 | .article-entry h3, 248 | .widget h3 { 249 | font-size: 1.3em; 250 | } 251 | .article-entry h4, 252 | .widget h4 { 253 | font-size: 1.2em; 254 | } 255 | .article-entry h5, 256 | .widget h5 { 257 | font-size: 1em; 258 | } 259 | .article-entry h6, 260 | .widget h6 { 261 | font-size: 1em; 262 | color: #999; 263 | } 264 | .article-entry hr, 265 | .widget hr { 266 | border: 1px dashed #eceff2; 267 | } 268 | .article-entry strong, 269 | .widget strong { 270 | font-weight: bold; 271 | } 272 | .article-entry em, 273 | .widget em, 274 | .article-entry cite, 275 | .widget cite { 276 | font-style: italic; 277 | } 278 | .article-entry sup, 279 | .widget sup, 280 | .article-entry sub, 281 | .widget sub { 282 | font-size: 0.75em; 283 | line-height: 0; 284 | position: relative; 285 | vertical-align: baseline; 286 | } 287 | .article-entry sup, 288 | .widget sup { 289 | top: -0.5em; 290 | } 291 | .article-entry sub, 292 | .widget sub { 293 | bottom: -0.2em; 294 | } 295 | .article-entry small, 296 | .widget small { 297 | font-size: 0.85em; 298 | } 299 | .article-entry acronym, 300 | .widget acronym, 301 | .article-entry abbr, 302 | .widget abbr { 303 | border-bottom: 1px dotted; 304 | } 305 | .article-entry ul, 306 | .widget ul, 307 | .article-entry ol, 308 | .widget ol, 309 | .article-entry dl, 310 | .widget dl { 311 | margin: 0 20px; 312 | line-height: 1.6em; 313 | } 314 | .article-entry ul ul, 315 | .widget ul ul, 316 | .article-entry ol ul, 317 | .widget ol ul, 318 | .article-entry ul ol, 319 | .widget ul ol, 320 | .article-entry ol ol, 321 | .widget ol ol { 322 | margin-top: 0; 323 | margin-bottom: 0; 324 | } 325 | .article-entry ul, 326 | .widget ul { 327 | list-style: disc; 328 | } 329 | .article-entry ol, 330 | .widget ol { 331 | list-style: decimal; 332 | } 333 | .article-entry dt, 334 | .widget dt { 335 | font-weight: bold; 336 | } 337 | #header { 338 | background: #fff; 339 | position: relative; 340 | } 341 | #header a, 342 | #header a:visited { 343 | white-space: nowrap; 344 | -webkit-transition: 0.2s ease; 345 | -moz-transition: 0.2s ease; 346 | -ms-transition: 0.2s ease; 347 | transition: 0.2s ease; 348 | color: #565a5f; 349 | } 350 | #header a:hover { 351 | color: #38b7ea; 352 | } 353 | .header-inner #logo, 354 | #main-nav, 355 | #sub-nav, 356 | #search-form-wrap { 357 | height: 40px; 358 | line-height: 40px; 359 | padding: 12px 15px; 360 | } 361 | .header-inner #logo, 362 | #main-nav { 363 | float: left; 364 | } 365 | #sub-nav, 366 | #search-form-wrap { 367 | float: right; 368 | } 369 | .header-inner { 370 | height: 100%; 371 | position: relative; 372 | } 373 | .header-inner #logo { 374 | display: inline-block; 375 | } 376 | .header-inner #logo .logo { 377 | margin-right: 5px; 378 | display: inline-block; 379 | } 380 | .header-inner #logo .site-title { 381 | font-size: 16px; 382 | display: inline-block; 383 | vertical-align: top; 384 | font-weight: 600; 385 | } 386 | #header-title { 387 | text-align: center; 388 | height: 40px; 389 | position: absolute; 390 | top: 50%; 391 | left: 0; 392 | margin-top: -20px; 393 | } 394 | .header-sub { 395 | border-top: 1px solid #eceff2; 396 | } 397 | .header-sub ul { 398 | margin: 0 15px; 399 | } 400 | .header-sub ul:before, 401 | .header-sub ul:after { 402 | content: ""; 403 | display: table; 404 | } 405 | .header-sub ul:after { 406 | clear: both; 407 | } 408 | .header-sub ul li { 409 | float: left; 410 | margin: 0 10px; 411 | } 412 | .header-sub ul li a { 413 | display: inline-block; 414 | line-height: 48px; 415 | } 416 | .header-sub .main-nav-link { 417 | display: inline-block; 418 | line-height: 48px; 419 | } 420 | @media screen and (min-width: 560px) and (max-width: 799px) { 421 | #header-sub { 422 | display: none; 423 | } 424 | } 425 | @media screen and (max-width: 559px) { 426 | #header-sub { 427 | display: none; 428 | } 429 | } 430 | @media screen and (min-width: 560px) and (max-width: 799px) { 431 | #main-nav { 432 | display: none; 433 | } 434 | } 435 | @media screen and (max-width: 559px) { 436 | #main-nav { 437 | display: none; 438 | } 439 | } 440 | @media screen and (min-width: 800px) and (max-width: 1199px) { 441 | #main-nav-mobile { 442 | display: none; 443 | } 444 | } 445 | @media screen and (min-width: 1200px) { 446 | #main-nav-mobile { 447 | display: none; 448 | } 449 | } 450 | .nav-icon, 451 | .main-nav-link { 452 | float: left; 453 | display: block; 454 | padding: 0 15px; 455 | } 456 | .nav-icon { 457 | text-align: center; 458 | font-size: 14px; 459 | width: 14px; 460 | height: 14px; 461 | position: relative; 462 | cursor: pointer; 463 | height: 40px !important; 464 | line-height: 40px !important; 465 | } 466 | .main-nav-link { 467 | font-weight: 300; 468 | } 469 | @media screen and (min-width: 1200px) { 470 | #sub-nav { 471 | display: none; 472 | } 473 | } 474 | #sub-nav #profile-nav #profile-anchor { 475 | display: block; 476 | height: 40px; 477 | line-height: 40px; 478 | } 479 | #sub-nav #profile-nav #profile-anchor:before, 480 | #sub-nav #profile-nav #profile-anchor:after { 481 | content: ""; 482 | display: table; 483 | } 484 | #sub-nav #profile-nav #profile-anchor:after { 485 | clear: both; 486 | } 487 | #sub-nav #profile-nav .avatar, 488 | #sub-nav #profile-nav .fa { 489 | float: left; 490 | } 491 | #sub-nav #profile-nav .avatar { 492 | width: 40px; 493 | height: 40px; 494 | margin-right: 8px; 495 | } 496 | #sub-nav #profile-nav .fa { 497 | line-height: 40px; 498 | } 499 | @media screen and (max-width: 559px) { 500 | #search-form-wrap { 501 | display: none; 502 | } 503 | } 504 | #search-form-wrap .search-form { 505 | position: relative; 506 | } 507 | #search-form-wrap .search-form .search-form-input { 508 | width: 100%; 509 | padding: 0 30px 0 15px; 510 | line-height: 40px; 511 | height: 40px !important; 512 | -webkit-border-radius: 21px; 513 | border-radius: 21px; 514 | } 515 | #search-form-wrap .search-form .search-form-input::-webkit-search-results-decoration, 516 | #search-form-wrap .search-form .search-form-input::-webkit-search-cancel-button { 517 | -webkit-appearance: none; 518 | } 519 | #search-form-wrap .search-form .search-form-submit { 520 | top: 50%; 521 | right: 15px; 522 | border: none; 523 | cursor: pointer; 524 | margin-top: -7px; 525 | background: none; 526 | position: absolute; 527 | font: 13px font-icon; 528 | font-family: 'FontAwesome'; 529 | } 530 | #search-form-wrap .search-form .search-form-submit:before { 531 | content: '\f002'; 532 | } 533 | #search-form-wrap .search-form .search-form-submit:hover, 534 | #search-form-wrap .search-form .search-form-submit:focus { 535 | color: #777; 536 | } 537 | .search-form-input, 538 | .search-form-input.ins-search-input, 539 | .search-form-input.st-ui-search-input, 540 | .search-form-input.st-default-search-input { 541 | -webkit-appearance: textarea; 542 | -webkit-appearance: textarea; 543 | -moz-appearance: textarea; 544 | appearance: textarea; 545 | padding: 0; 546 | width: 200px; 547 | -webkit-box-shadow: none; 548 | box-shadow: none; 549 | color: #565a5f; 550 | -webkit-transition: 0.2s ease; 551 | -moz-transition: 0.2s ease; 552 | -ms-transition: 0.2s ease; 553 | transition: 0.2s ease; 554 | -webkit-box-sizing: border-box; 555 | -moz-box-sizing: border-box; 556 | box-sizing: border-box; 557 | height: auto !important; 558 | line-height: 1.6em; 559 | outline: none !important; 560 | background: none !important; 561 | font: 14px "open sans", "Helvetica Neue", "Microsoft Yahei", Helvetica, Arial, sans-serif; 562 | border: 1px solid #eceff2 !important; 563 | } 564 | .search-form-input:focus, 565 | .search-form-input.ins-search-input:focus, 566 | .search-form-input.st-ui-search-input:focus, 567 | .search-form-input.st-default-search-input:focus { 568 | border-color: #38b7ea !important; 569 | } 570 | .search-form-input::-webkit-search-results-decoration, 571 | .search-form-input.ins-search-input::-webkit-search-results-decoration, 572 | .search-form-input.st-ui-search-input::-webkit-search-results-decoration, 573 | .search-form-input.st-default-search-input::-webkit-search-results-decoration, 574 | .search-form-input::-webkit-search-cancel-button, 575 | .search-form-input.ins-search-input::-webkit-search-cancel-button, 576 | .search-form-input.st-ui-search-input::-webkit-search-cancel-button, 577 | .search-form-input.st-default-search-input::-webkit-search-cancel-button { 578 | -webkit-appearance: none; 579 | } 580 | #main-nav-mobile { 581 | overflow-y: hidden; 582 | overflow-x: auto; 583 | } 584 | #main-nav-mobile .menu { 585 | margin: 0; 586 | height: 48px; 587 | } 588 | #main-nav-mobile .menu:before, 589 | #main-nav-mobile .menu:after { 590 | content: ""; 591 | display: table; 592 | } 593 | #main-nav-mobile .menu:after { 594 | clear: both; 595 | } 596 | #main-nav-mobile .menu .search-form-input { 597 | display: none; 598 | padding: 0 10px; 599 | margin-right: 15px; 600 | height: 32px; 601 | line-height: 32px; 602 | -webkit-border-radius: 16px; 603 | border-radius: 16px; 604 | } 605 | @media screen and (max-width: 559px) { 606 | #main-nav-mobile .menu .search-form-input { 607 | display: block; 608 | } 609 | } 610 | #main-nav-mobile .menu .search-form-input::-webkit-search-results-decoration, 611 | #main-nav-mobile .menu .search-form-input::-webkit-search-cancel-button { 612 | -webkit-appearance: none; 613 | } 614 | .bio { 615 | text-align: center; 616 | } 617 | #profile .inner .bio h2 { 618 | font-size: 1.3em; 619 | font-weight: bold; 620 | margin-top: 15px; 621 | } 622 | #profile .inner .bio p { 623 | margin: 5px 20px 10px 20px; 624 | text-align: justify; 625 | max-width: 300px; 626 | line-height: 1.5em; 627 | } 628 | .profile-block { 629 | padding: 15px 20px; 630 | border-bottom: 1px solid #eceff2; 631 | } 632 | .profile-block:last-child { 633 | border-bottom: none; 634 | } 635 | #profile { 636 | display: inline; 637 | float: left; 638 | width: 21.53846153846154%; 639 | margin: 0 0.769230769230769%; 640 | display: none; 641 | } 642 | @media screen and (min-width: 1200px) { 643 | #profile { 644 | display: block; 645 | } 646 | } 647 | #profile .inner { 648 | margin-top: 40px; 649 | background: #fff; 650 | } 651 | #profile .inner .base-info #avatar { 652 | display: block; 653 | margin: 10px auto 20px; 654 | width: 128px; 655 | height: 128px; 656 | } 657 | #profile .inner .base-info #name, 658 | #profile .inner .base-info #title, 659 | #profile .inner .base-info #location { 660 | display: block; 661 | text-align: center; 662 | } 663 | #profile .inner .base-info #name { 664 | font-size: 20px; 665 | font-weight: 600; 666 | } 667 | #profile .inner .base-info #location { 668 | font-size: 12px; 669 | margin-top: 5px; 670 | color: #9a9ea3; 671 | } 672 | #profile .inner .base-info #location .fa { 673 | margin-right: 5px; 674 | } 675 | #profile .inner .base-info #follow { 676 | color: #fff; 677 | width: 150px; 678 | height: 40px; 679 | display: block; 680 | font-size: 14px; 681 | line-height: 40px; 682 | text-align: center; 683 | margin: 20px auto 10px; 684 | background: #38b7ea; 685 | -webkit-border-radius: 20px; 686 | border-radius: 20px; 687 | -webkit-transition: 0.2s ease; 688 | -moz-transition: 0.2s ease; 689 | -ms-transition: 0.2s ease; 690 | transition: 0.2s ease; 691 | } 692 | #profile .inner .base-info #follow:hover { 693 | background: #49c8fb; 694 | } 695 | #profile .inner .article-info { 696 | padding: 0px; 697 | } 698 | #profile .inner .article-info:before, 699 | #profile .inner .article-info:after { 700 | content: ""; 701 | display: table; 702 | } 703 | #profile .inner .article-info:after { 704 | clear: both; 705 | } 706 | #profile .inner .article-info .article-info-block { 707 | width: 50%; 708 | float: left; 709 | padding: 20px 15px; 710 | text-align: center; 711 | -webkit-box-sizing: border-box; 712 | -moz-box-sizing: border-box; 713 | box-sizing: border-box; 714 | font-size: 20px; 715 | } 716 | #profile .inner .article-info .article-info-block span { 717 | display: block; 718 | font-size: 14px; 719 | text-transform: uppercase; 720 | } 721 | #profile .inner .article-info .article-info-block:first-child { 722 | border-right: 1px solid #eceff2; 723 | } 724 | #profile .inner .social-links > table { 725 | width: 100%; 726 | } 727 | #profile .inner .social-links > table td { 728 | text-align: center; 729 | font-size: 24px; 730 | } 731 | #profile .inner .social-links > table td a { 732 | position: relative; 733 | -webkit-transition: 0.2s ease; 734 | -moz-transition: 0.2s ease; 735 | -ms-transition: 0.2s ease; 736 | transition: 0.2s ease; 737 | color: #898d92; 738 | } 739 | #profile .inner .social-links > table td a:hover { 740 | color: #565a5f; 741 | } 742 | #profile .inner .social-links > table td a.tooltip:hover:after { 743 | right: -50%; 744 | top: -41px; 745 | color: #fff; 746 | background: #333; 747 | font-size: 14px; 748 | content: attr(title); 749 | display: block; 750 | padding: 5px 15px; 751 | position: absolute; 752 | white-space: nowrap; 753 | -webkit-border-radius: 2px; 754 | border-radius: 2px; 755 | text-transform: uppercase; 756 | -webkit-box-shadow: 0 0 2px rgba(0,0,0,0.2); 757 | box-shadow: 0 0 2px rgba(0,0,0,0.2); 758 | z-index: 1; 759 | } 760 | #profile .inner .social-links > table td a.tooltip:hover:before { 761 | top: -12px; 762 | right: 8px; 763 | border: solid; 764 | border-color: #333 transparent; 765 | border-width: 5px 5px 0 5px; 766 | content: ""; 767 | display: block; 768 | position: absolute; 769 | z-index: 2; 770 | } 771 | #profile.card { 772 | top: 50px; 773 | right: 20px; 774 | z-index: 999; 775 | display: block; 776 | min-width: 280px; 777 | position: absolute; 778 | } 779 | #profile.card .profile-inner { 780 | position: relative; 781 | -webkit-box-shadow: 0 2px 5px rgba(0,0,0,0.2); 782 | box-shadow: 0 2px 5px rgba(0,0,0,0.2); 783 | } 784 | #profile.card .profile-inner:before, 785 | #profile.card .profile-inner:after { 786 | z-index: 1; 787 | content: ''; 788 | top: -20px; 789 | right: 10px; 790 | position: absolute; 791 | border-width: 10px; 792 | border-style: solid; 793 | border-color: transparent transparent #fff transparent; 794 | } 795 | #profile.card .profile-inner:after { 796 | z-index: 0; 797 | border-color: transparent transparent #dbdee1 transparent; 798 | } 799 | .article { 800 | margin: 40px 0; 801 | } 802 | .article-inner { 803 | overflow: hidden; 804 | } 805 | .article-banner { 806 | width: 100%; 807 | height: auto; 808 | } 809 | .article-header { 810 | padding: 20px 20px 0; 811 | } 812 | .article-header .article-title { 813 | display: block; 814 | margin-bottom: 14px; 815 | } 816 | .article-title { 817 | font-size: 2em; 818 | color: #565a5f; 819 | text-decoration: none; 820 | line-height: 1.3em; 821 | } 822 | a.article-title:visited { 823 | color: #565a5f; 824 | } 825 | a.article-title:hover { 826 | color: #38b7ea; 827 | } 828 | @media screen and (max-width: 559px) { 829 | .article-title { 830 | font-size: 1.6em; 831 | } 832 | } 833 | @media screen and (min-width: 560px) and (max-width: 799px) { 834 | .article-title { 835 | font-size: 1.6em; 836 | } 837 | } 838 | .article-meta { 839 | line-height: 1.6em; 840 | } 841 | .article-meta:before, 842 | .article-meta:after { 843 | content: ""; 844 | display: table; 845 | } 846 | .article-meta:after { 847 | clear: both; 848 | } 849 | .article-meta > div { 850 | float: left; 851 | margin-right: 10px; 852 | } 853 | .article-meta > div .fa { 854 | margin-right: 3px; 855 | } 856 | .article-meta a { 857 | color: #565a5f; 858 | } 859 | .article-meta a:hover { 860 | color: #38b7ea; 861 | } 862 | .article-category .fa-angle-right { 863 | margin: 0 5px; 864 | } 865 | .article-tag .tag-link:before { 866 | content: "#"; 867 | } 868 | .article-entry { 869 | color: #565a5f; 870 | padding: 0 20px; 871 | line-height: 1.6em; 872 | } 873 | .article-entry:before, 874 | .article-entry:after { 875 | content: ""; 876 | display: table; 877 | } 878 | .article-entry:after { 879 | clear: both; 880 | } 881 | .article-entry p, 882 | .article-entry table { 883 | line-height: 1.6em; 884 | margin: 1.6em 0; 885 | } 886 | .article-entry h1, 887 | .article-entry h2, 888 | .article-entry h3, 889 | .article-entry h4, 890 | .article-entry h5, 891 | .article-entry h6 { 892 | font-weight: bold; 893 | } 894 | .article-entry h1, 895 | .article-entry h2, 896 | .article-entry h3, 897 | .article-entry h4, 898 | .article-entry h5, 899 | .article-entry h6 { 900 | line-height: 1.3em; 901 | margin: 1.3em 0; 902 | } 903 | .article-entry a { 904 | color: #38b7ea; 905 | text-decoration: none; 906 | } 907 | .article-entry a:hover { 908 | text-decoration: underline; 909 | } 910 | .article-entry ul, 911 | .article-entry ol, 912 | .article-entry dl { 913 | margin-top: 1.6em; 914 | margin-bottom: 1.6em; 915 | } 916 | .article-entry img, 917 | .article-entry video { 918 | max-width: 100%; 919 | height: auto; 920 | display: block; 921 | margin: auto; 922 | } 923 | .article-entry iframe { 924 | border: none; 925 | } 926 | .article-entry table { 927 | width: 100%; 928 | border-collapse: collapse; 929 | border-spacing: 0; 930 | } 931 | .article-entry th { 932 | font-weight: bold; 933 | border-bottom: 3px solid #eceff2; 934 | padding-bottom: 0.5em; 935 | } 936 | .article-entry td { 937 | border-bottom: 1px solid #eceff2; 938 | padding: 10px 0; 939 | } 940 | .article-entry blockquote { 941 | position: relative; 942 | font-family: Georgia, "Times New Roman", "Microsoft Yahei", serif; 943 | font-size: 1.1em; 944 | margin: 0 -20px; 945 | padding: 10px 20px 10px 54px; 946 | background: #fcfcfc; 947 | border-left: 4px solid #eee; 948 | } 949 | .article-entry blockquote:before { 950 | top: 20px; 951 | left: 10px; 952 | content: "\f10d"; 953 | color: #e2e2e2; 954 | font-size: 32px; 955 | font-family: FontAwesome; 956 | text-align: center; 957 | position: absolute; 958 | } 959 | .article-entry blockquote footer { 960 | font-size: 14px; 961 | margin: 1.6em 0; 962 | font-family: "open sans", "Helvetica Neue", "Microsoft Yahei", Helvetica, Arial, sans-serif; 963 | } 964 | .article-entry blockquote footer cite:before { 965 | content: "—"; 966 | padding: 0 0.5em; 967 | } 968 | .article-entry .pullquote { 969 | text-align: left; 970 | width: 45%; 971 | margin: 0; 972 | } 973 | .article-entry .pullquote.left { 974 | margin-left: 0.5em; 975 | margin-right: 1em; 976 | } 977 | .article-entry .pullquote.right { 978 | margin-right: 0.5em; 979 | margin-left: 1em; 980 | } 981 | .article-entry .caption { 982 | color: #999; 983 | display: block; 984 | font-size: 0.9em; 985 | margin-top: 0.5em; 986 | position: relative; 987 | text-align: center; 988 | } 989 | .article-entry .video-container { 990 | position: relative; 991 | padding-top: 56.25%; 992 | height: 0; 993 | overflow: hidden; 994 | } 995 | .article-entry .video-container iframe, 996 | .article-entry .video-container object, 997 | .article-entry .video-container embed { 998 | position: absolute; 999 | top: 0; 1000 | left: 0; 1001 | width: 100%; 1002 | height: 100%; 1003 | margin-top: 0; 1004 | } 1005 | .article-more-link a { 1006 | display: inline-block; 1007 | line-height: 1em; 1008 | padding: 6px 15px; 1009 | -webkit-border-radius: 15px; 1010 | border-radius: 15px; 1011 | background: #f5f8f9; 1012 | color: #999; 1013 | text-shadow: 0 1px #fff; 1014 | text-decoration: none; 1015 | } 1016 | .article-more-link a:hover { 1017 | background: #38b7ea; 1018 | color: #fff; 1019 | text-decoration: none; 1020 | text-shadow: 0 1px #169cd2; 1021 | } 1022 | .article-footer { 1023 | font-size: 0.85em; 1024 | line-height: 1.6em; 1025 | border-top: 1px solid #eceff2; 1026 | padding-top: 1.6em; 1027 | margin: 0 20px 20px; 1028 | } 1029 | .article-footer:before, 1030 | .article-footer:after { 1031 | content: ""; 1032 | display: table; 1033 | } 1034 | .article-footer:after { 1035 | clear: both; 1036 | } 1037 | .article-footer a { 1038 | color: #999; 1039 | text-decoration: none; 1040 | } 1041 | .article-footer a:hover { 1042 | color: #565a5f; 1043 | } 1044 | .article-comment-link { 1045 | float: right; 1046 | } 1047 | .article-comment-link:before { 1048 | content: "\f075"; 1049 | font-family: FontAwesome; 1050 | padding-right: 5px; 1051 | } 1052 | .share-container { 1053 | float: left; 1054 | } 1055 | .article-share-link { 1056 | float: right; 1057 | cursor: pointer; 1058 | margin-left: 20px; 1059 | } 1060 | .article-share-link .fa-share { 1061 | margin-right: 5px; 1062 | } 1063 | #article-nav { 1064 | position: relative; 1065 | } 1066 | #article-nav:before, 1067 | #article-nav:after { 1068 | content: ""; 1069 | display: table; 1070 | } 1071 | #article-nav:after { 1072 | clear: both; 1073 | } 1074 | @media screen and (min-width: 1200px) { 1075 | #article-nav { 1076 | margin: 40px 0; 1077 | } 1078 | #article-nav:before { 1079 | width: 8px; 1080 | height: 8px; 1081 | position: absolute; 1082 | top: 50%; 1083 | left: 50%; 1084 | margin-top: -4px; 1085 | margin-left: -4px; 1086 | content: ""; 1087 | -webkit-border-radius: 50%; 1088 | border-radius: 50%; 1089 | background: #787c81; 1090 | } 1091 | } 1092 | .article-nav-link-wrap { 1093 | text-decoration: none; 1094 | color: #999; 1095 | -webkit-box-sizing: border-box; 1096 | -moz-box-sizing: border-box; 1097 | box-sizing: border-box; 1098 | margin-top: 40px; 1099 | text-align: center; 1100 | display: block; 1101 | } 1102 | .article-nav-link-wrap:hover { 1103 | color: #565a5f; 1104 | } 1105 | @media screen and (min-width: 1200px) { 1106 | .article-nav-link-wrap { 1107 | width: 50%; 1108 | margin-top: 0; 1109 | } 1110 | } 1111 | @media screen and (min-width: 1200px) { 1112 | #article-nav-newer { 1113 | float: left; 1114 | text-align: right; 1115 | padding-right: 20px; 1116 | } 1117 | } 1118 | @media screen and (min-width: 1200px) { 1119 | #article-nav-older { 1120 | float: right; 1121 | text-align: left; 1122 | padding-left: 20px; 1123 | } 1124 | } 1125 | .article-nav-caption { 1126 | letter-spacing: 2px; 1127 | line-height: 1em; 1128 | font-weight: bold; 1129 | color: #565a5f; 1130 | text-transform: uppercase; 1131 | } 1132 | #article-nav-newer .article-nav-caption { 1133 | margin-right: -2px; 1134 | } 1135 | .article-nav-title { 1136 | font-size: 0.85em; 1137 | margin-top: 0.5em; 1138 | color: #565a5f; 1139 | line-height: 1.6em; 1140 | } 1141 | .article-share-box { 1142 | position: absolute; 1143 | display: none; 1144 | background: #fff; 1145 | -webkit-box-shadow: 0px 2px 2px rgba(0,0,0,0.1); 1146 | box-shadow: 0px 2px 2px rgba(0,0,0,0.1); 1147 | -webkit-border-radius: 3px; 1148 | border-radius: 3px; 1149 | margin-left: -145px; 1150 | overflow: hidden; 1151 | z-index: 1; 1152 | } 1153 | .article-share-box.on { 1154 | display: block; 1155 | } 1156 | .article-share-input { 1157 | width: 100%; 1158 | background: none; 1159 | -webkit-box-sizing: border-box; 1160 | -moz-box-sizing: border-box; 1161 | box-sizing: border-box; 1162 | font: 14px "open sans", "Helvetica Neue", "Microsoft Yahei", Helvetica, Arial, sans-serif; 1163 | padding: 0 10px; 1164 | color: #565a5f; 1165 | outline: none; 1166 | border: 1px solid #eceff2; 1167 | -webkit-border-radius: 3px 3px 0 0; 1168 | border-radius: 3px 3px 0 0; 1169 | height: 36px; 1170 | line-height: 36px; 1171 | } 1172 | .article-share-links { 1173 | background: #f5f8f9; 1174 | } 1175 | .article-share-links:before, 1176 | .article-share-links:after { 1177 | content: ""; 1178 | display: table; 1179 | } 1180 | .article-share-links:after { 1181 | clear: both; 1182 | } 1183 | .article-share-twitter, 1184 | .article-share-facebook, 1185 | .article-share-pinterest, 1186 | .article-share-google { 1187 | width: 50px; 1188 | height: 36px; 1189 | display: block; 1190 | float: left; 1191 | position: relative; 1192 | color: #999; 1193 | text-shadow: 0 1px #fff; 1194 | } 1195 | .article-share-twitter:before, 1196 | .article-share-facebook:before, 1197 | .article-share-pinterest:before, 1198 | .article-share-google:before { 1199 | font-size: 20px; 1200 | width: 20px; 1201 | height: 20px; 1202 | position: absolute; 1203 | top: 50%; 1204 | left: 50%; 1205 | margin-top: -10px; 1206 | margin-left: -10px; 1207 | text-align: center; 1208 | } 1209 | .article-share-twitter:hover, 1210 | .article-share-facebook:hover, 1211 | .article-share-pinterest:hover, 1212 | .article-share-google:hover { 1213 | color: #fff; 1214 | } 1215 | .article-share-twitter:hover { 1216 | background: #00aced; 1217 | text-shadow: 0 1px #008abe; 1218 | } 1219 | .article-share-facebook:hover { 1220 | background: #3b5998; 1221 | text-shadow: 0 1px #2f477a; 1222 | } 1223 | .article-share-pinterest:hover { 1224 | background: #cb2027; 1225 | text-shadow: 0 1px #a21a1f; 1226 | } 1227 | .article-share-google:hover { 1228 | background: #dd4b39; 1229 | text-shadow: 0 1px #be3221; 1230 | } 1231 | .article-gallery { 1232 | background: #000; 1233 | position: relative; 1234 | } 1235 | .article-gallery-photos { 1236 | position: relative; 1237 | overflow: hidden; 1238 | } 1239 | .article-gallery-img { 1240 | display: none; 1241 | max-width: 100%; 1242 | } 1243 | .article-gallery-img:first-child { 1244 | display: block; 1245 | } 1246 | .article-gallery-img.loaded { 1247 | position: absolute; 1248 | display: block; 1249 | } 1250 | .article-gallery-img img { 1251 | display: block; 1252 | max-width: 100%; 1253 | margin: 0 auto; 1254 | } 1255 | .toc-article { 1256 | background: #f9f9f9; 1257 | margin: 2em 0 0 0.2em; 1258 | padding: 1em; 1259 | -webkit-border-radius: 0px; 1260 | border-radius: 0px; 1261 | } 1262 | .toc-article .toc-title { 1263 | font-size: 120%; 1264 | } 1265 | .toc-article strong { 1266 | padding: 0.3em 1; 1267 | } 1268 | ol.toc { 1269 | width: 100%; 1270 | margin: 1em 2em 0 0; 1271 | } 1272 | #toc { 1273 | line-height: 1em; 1274 | font-size: 0.8em; 1275 | float: right; 1276 | } 1277 | #toc .toc { 1278 | padding: 0; 1279 | } 1280 | #toc .toc li { 1281 | list-style-type: none; 1282 | } 1283 | #toc .toc-child { 1284 | padding-left: 0em; 1285 | } 1286 | #toc.toc-aside { 1287 | display: none; 1288 | width: 13%; 1289 | position: fixed; 1290 | right: 2%; 1291 | top: 320px; 1292 | overflow: hidden; 1293 | line-height: 1.5em; 1294 | font-size: 1em; 1295 | color: color-heading; 1296 | opacity: 0.6; 1297 | -webkit-transition: opacity 1s ease-out; 1298 | -moz-transition: opacity 1s ease-out; 1299 | -ms-transition: opacity 1s ease-out; 1300 | transition: opacity 1s ease-out; 1301 | } 1302 | #toc.toc-aside strong { 1303 | padding: 0.3em 0; 1304 | color: color-font; 1305 | } 1306 | #toc.toc-aside:hover { 1307 | -webkit-transition: opacity 0.3s ease-out; 1308 | -moz-transition: opacity 0.3s ease-out; 1309 | -ms-transition: opacity 0.3s ease-out; 1310 | transition: opacity 0.3s ease-out; 1311 | opacity: 1; 1312 | } 1313 | #toc.toc-aside a { 1314 | -webkit-transition: color 1s ease-out; 1315 | -moz-transition: color 1s ease-out; 1316 | -ms-transition: color 1s ease-out; 1317 | transition: color 1s ease-out; 1318 | } 1319 | #toc.toc-aside a:hover { 1320 | color: color-theme; 1321 | -webkit-transition: color 0.3s ease-out; 1322 | -moz-transition: color 0.3s ease-out; 1323 | -ms-transition: color 0.3s ease-out; 1324 | transition: color 0.3s ease-out; 1325 | } 1326 | #comments { 1327 | padding: 20px; 1328 | margin: 40px 0; 1329 | } 1330 | #comments a { 1331 | color: #38b7ea; 1332 | } 1333 | .archives:before, 1334 | .archives:after { 1335 | content: ""; 1336 | display: table; 1337 | } 1338 | .archives:after { 1339 | clear: both; 1340 | } 1341 | .archives .article:first-child { 1342 | margin: 20px 0; 1343 | } 1344 | .archive-year-wrap, 1345 | .archive-category-wrap, 1346 | .archive-tag-wrap, 1347 | .layout-title { 1348 | font-size: 1.4em; 1349 | margin: 40px 0 20px 0; 1350 | } 1351 | @media screen and (max-width: 559px) { 1352 | .archive-year-wrap, 1353 | .archive-category-wrap, 1354 | .archive-tag-wrap, 1355 | .layout-title { 1356 | padding: 0 15px; 1357 | font-size: 1.2em; 1358 | } 1359 | } 1360 | .archive-year-wrap .fa, 1361 | .archive-category-wrap .fa, 1362 | .archive-tag-wrap .fa, 1363 | .layout-title .fa { 1364 | margin-right: 3px; 1365 | } 1366 | .archive-year-wrap .archive-year, 1367 | .archive-category-wrap .archive-year, 1368 | .archive-tag-wrap .archive-year, 1369 | .layout-title .archive-year { 1370 | color: #565a5f; 1371 | } 1372 | .archive-year-wrap .archive-year:hover, 1373 | .archive-category-wrap .archive-year:hover, 1374 | .archive-tag-wrap .archive-year:hover, 1375 | .layout-title .archive-year:hover { 1376 | color: #38b7ea; 1377 | } 1378 | @media screen and (max-width: 559px) { 1379 | .layout-wrap-inner { 1380 | padding: 0 15px; 1381 | } 1382 | } 1383 | .archive-article { 1384 | -webkit-column-break-inside: avoid; 1385 | page-break-inside: avoid; 1386 | overflow: hidden; 1387 | break-inside: avoid-column; 1388 | padding: 0; 1389 | margin-bottom: 15px; 1390 | } 1391 | .archive-article:before, 1392 | .archive-article:after { 1393 | content: ""; 1394 | display: table; 1395 | } 1396 | .archive-article:after { 1397 | clear: both; 1398 | } 1399 | .archive-article.archive-type-summary { 1400 | padding: 15px; 1401 | } 1402 | .archive-article.archive-type-summary .article-entry { 1403 | padding: 0; 1404 | } 1405 | .archive-article.archive-type-summary .article-entry p { 1406 | margin: 12px 0; 1407 | } 1408 | .archive-article .archive-article-content, 1409 | .archive-article .archive-article-thumbnail { 1410 | display: table-cell; 1411 | vertical-align: top; 1412 | } 1413 | @media screen and (max-width: 559px) { 1414 | .archive-article .archive-article-content, 1415 | .archive-article .archive-article-thumbnail { 1416 | display: block; 1417 | } 1418 | } 1419 | .archive-article .archive-article-thumbnail { 1420 | width: 160px; 1421 | padding-right: 15px; 1422 | } 1423 | @media screen and (max-width: 559px) { 1424 | .archive-article .archive-article-thumbnail { 1425 | width: 100%; 1426 | padding-bottom: 15px; 1427 | } 1428 | } 1429 | .archive-article .archive-article-thumbnail .thumbnail { 1430 | height: 0; 1431 | width: 100%; 1432 | padding-bottom: 56.25%; 1433 | display: block; 1434 | position: relative; 1435 | overflow: hidden; 1436 | } 1437 | .archive-article .archive-article-thumbnail .thumbnail span { 1438 | width: 100%; 1439 | height: 100%; 1440 | display: block; 1441 | } 1442 | .archive-article .archive-article-thumbnail .thumbnail .thumbnail-image { 1443 | position: absolute; 1444 | -webkit-background-size: cover; 1445 | -moz-background-size: cover; 1446 | background-size: cover; 1447 | background-position: center; 1448 | } 1449 | .archive-article .archive-article-thumbnail .thumbnail .thumbnail-none { 1450 | background-image: url("images/thumb-default-small.png"); 1451 | } 1452 | .archive-article-title { 1453 | display: block; 1454 | font-size: 1.6em; 1455 | line-height: 1.4em; 1456 | margin-bottom: 12px; 1457 | } 1458 | @media screen and (max-width: 559px) { 1459 | .archive-article-title { 1460 | display: block; 1461 | font-size: 1.3em; 1462 | } 1463 | } 1464 | .archive-article-date { 1465 | display: block; 1466 | margin-top: 8px; 1467 | } 1468 | .layout-wrap-inner.list-categories ul { 1469 | margin-left: 15px; 1470 | list-style: none; 1471 | } 1472 | .layout-wrap-inner.list-categories ul li, 1473 | .layout-wrap-inner.list-categories ul .category-list-child { 1474 | padding: 10px 0; 1475 | font-size: 14px; 1476 | border-bottom: 1px solid border-color; 1477 | } 1478 | .layout-wrap-inner.list-categories ul li a, 1479 | .layout-wrap-inner.list-categories ul .category-list-child a { 1480 | color: #777; 1481 | } 1482 | .layout-wrap-inner.list-categories ul ul, 1483 | .layout-wrap-inner.list-categories ul ol { 1484 | list-style: none; 1485 | } 1486 | .layout-wrap-inner.list-categories ul ul li, 1487 | .layout-wrap-inner.list-categories ul ol li { 1488 | border: none; 1489 | } 1490 | .layout-wrap-inner.list-categories ul ul li:last-child, 1491 | .layout-wrap-inner.list-categories ul ol li:last-child { 1492 | padding-bottom: 0px; 1493 | } 1494 | .layout-wrap-inner.list-categories li a:before { 1495 | color: #ccc; 1496 | content: "\f0da"; 1497 | font-size: 12px; 1498 | margin-right: 6px; 1499 | font-family: FontAwesome; 1500 | -webkit-transition: 0.2s ease; 1501 | -moz-transition: 0.2s ease; 1502 | -ms-transition: 0.2s ease; 1503 | transition: 0.2s ease; 1504 | } 1505 | .layout-wrap-inner.list-categories li a:hover:before { 1506 | color: #333; 1507 | } 1508 | .layout-wrap-inner.tag-cloud a { 1509 | margin-right: 8px; 1510 | } 1511 | .layout-wrap-inner.tag-cloud a:before { 1512 | content: '#'; 1513 | } 1514 | #page-nav { 1515 | margin: 40px auto; 1516 | text-align: center; 1517 | color: #999; 1518 | overflow: hidden; 1519 | } 1520 | #page-nav:before, 1521 | #page-nav:after { 1522 | content: ""; 1523 | display: table; 1524 | } 1525 | #page-nav:after { 1526 | clear: both; 1527 | } 1528 | #page-nav a, 1529 | #page-nav span { 1530 | height: 32px; 1531 | padding: 0 10px; 1532 | line-height: 32px; 1533 | text-align: center; 1534 | display: inline-block; 1535 | -webkit-border-radius: 2px; 1536 | border-radius: 2px; 1537 | } 1538 | #page-nav a { 1539 | color: #999; 1540 | text-decoration: none; 1541 | } 1542 | #page-nav a:hover { 1543 | color: #fff; 1544 | background: #38b7ea; 1545 | } 1546 | #page-nav .page-number { 1547 | display: inline-block; 1548 | } 1549 | @media screen and (max-width: 559px) { 1550 | #page-nav .page-number { 1551 | display: none; 1552 | } 1553 | } 1554 | #page-nav .current { 1555 | color: #565a5f; 1556 | font-weight: bold; 1557 | } 1558 | #page-nav .space { 1559 | color: #eceff2; 1560 | } 1561 | .timeline-wrap { 1562 | margin: 40px 20px 40px 40px; 1563 | border-left: 3px solid #eceff2; 1564 | } 1565 | @media screen and (max-width: 559px) { 1566 | .timeline-wrap { 1567 | margin: 40px 20px 40px 30px; 1568 | } 1569 | } 1570 | @media screen and (min-width: 560px) and (max-width: 799px) { 1571 | .timeline-wrap { 1572 | margin: 40px 20px 40px 30px; 1573 | } 1574 | } 1575 | .timeline-row { 1576 | margin: 20px 0; 1577 | } 1578 | .timeline-row:before, 1579 | .timeline-row:after { 1580 | content: ""; 1581 | display: table; 1582 | } 1583 | .timeline-row:after { 1584 | clear: both; 1585 | } 1586 | .timeline-row .node, 1587 | .timeline-row .title { 1588 | float: left; 1589 | } 1590 | .timeline-row .node { 1591 | width: 12px; 1592 | color: #fff; 1593 | height: 12px; 1594 | -webkit-border-radius: 50%; 1595 | border-radius: 50%; 1596 | margin: 11px 0 0 -8px; 1597 | display: inline-block; 1598 | background-color: #38b7ea; 1599 | } 1600 | .timeline-row .content { 1601 | margin-left: 25px; 1602 | position: relative; 1603 | } 1604 | .timeline-row .content:after, 1605 | .timeline-row .content:before { 1606 | content: ''; 1607 | position: absolute; 1608 | display: inline-block; 1609 | } 1610 | .timeline-row .content:after { 1611 | top: 10px; 1612 | left: -14px; 1613 | border: 7px solid transparent; 1614 | border-right-color: #fff; 1615 | } 1616 | .timeline-row .content:before { 1617 | top: 9px; 1618 | left: -16px; 1619 | border: 8px solid transparent; 1620 | border-right-color: rgba(0,0,0,0.05); 1621 | } 1622 | .timeline-row .content h1, 1623 | .timeline-row .content .article-meta { 1624 | padding: 10px; 1625 | } 1626 | .timeline-row .content h1 { 1627 | font-size: 16px; 1628 | } 1629 | .timeline-row .content .article-meta { 1630 | font-size: 12px; 1631 | color: #898d92; 1632 | border-top: 1px solid #f7f7f7; 1633 | background-color: rgba(244,246,247,0.2); 1634 | } 1635 | .timeline-row-major .node { 1636 | width: 14px; 1637 | height: 14px; 1638 | font-size: 14px; 1639 | margin: 0 0 0 -17px; 1640 | padding: 6px 8px 10px; 1641 | } 1642 | .timeline-row-major .title { 1643 | font-size: 18px; 1644 | margin-left: 15px; 1645 | line-height: 30px; 1646 | } 1647 | #footer { 1648 | padding: 20px 0; 1649 | border-top: 1px solid #eceff2; 1650 | color: #565a5f; 1651 | font-size: 16px; 1652 | text-align: center; 1653 | } 1654 | #footer .outer { 1655 | margin-bottom: 0; 1656 | } 1657 | #footer a { 1658 | color: #38b7ea; 1659 | text-decoration: none; 1660 | } 1661 | #footer a:hover { 1662 | text-decoration: underline; 1663 | } 1664 | #footer-info { 1665 | line-height: 1.6em; 1666 | font-size: 0.85em; 1667 | } 1668 | @media screen and (min-width: 1200px) { 1669 | #sidebar { 1670 | display: inline; 1671 | float: left; 1672 | width: 21.53846153846154%; 1673 | margin: 0 0.769230769230769%; 1674 | } 1675 | } 1676 | @media screen and (min-width: 800px) and (max-width: 1199px) { 1677 | #sidebar { 1678 | display: inline; 1679 | float: left; 1680 | width: 29.230769230769234%; 1681 | margin: 0 0.769230769230769%; 1682 | } 1683 | } 1684 | .widget { 1685 | line-height: 1.6em; 1686 | word-wrap: break-word; 1687 | font-size: 0.9em; 1688 | } 1689 | .widget ul, 1690 | .widget ol { 1691 | list-style: none; 1692 | margin: 0; 1693 | } 1694 | .widget ul ul, 1695 | .widget ol ul, 1696 | .widget ul ol, 1697 | .widget ol ol { 1698 | margin: 0 20px; 1699 | } 1700 | .widget ul ul, 1701 | .widget ol ul { 1702 | list-style: disc; 1703 | } 1704 | .widget ul ol, 1705 | .widget ol ol { 1706 | list-style: decimal; 1707 | } 1708 | .category-list-count, 1709 | .tag-list-count, 1710 | .archive-list-count { 1711 | padding-left: 5px; 1712 | color: #999; 1713 | font-size: 0.85em; 1714 | } 1715 | .category-list-count:before, 1716 | .tag-list-count:before, 1717 | .archive-list-count:before { 1718 | content: "("; 1719 | } 1720 | .category-list-count:after, 1721 | .tag-list-count:after, 1722 | .archive-list-count:after { 1723 | content: ")"; 1724 | } 1725 | .tagcloud a { 1726 | margin-right: 5px; 1727 | } 1728 | .widget-wrap { 1729 | margin: 40px 10px; 1730 | } 1731 | @media screen and (max-width: 559px) { 1732 | .widget-wrap { 1733 | margin: 40px 20px; 1734 | } 1735 | } 1736 | .widget-title { 1737 | margin-bottom: 0; 1738 | } 1739 | .widget { 1740 | padding: 15px 5px; 1741 | } 1742 | .widget a { 1743 | color: #777; 1744 | text-decoration: none; 1745 | } 1746 | .widget a:hover { 1747 | color: #333; 1748 | } 1749 | .widget ul ul, 1750 | .widget ol ul, 1751 | .widget dl ul, 1752 | .widget ul ol, 1753 | .widget ol ol, 1754 | .widget dl ol, 1755 | .widget ul dl, 1756 | .widget ol dl, 1757 | .widget dl dl { 1758 | margin-left: 15px; 1759 | list-style: disc; 1760 | } 1761 | .widget ul, 1762 | .widget ol { 1763 | list-style: none; 1764 | } 1765 | .widget ul li, 1766 | .widget ol li, 1767 | .widget ul .category-list-child, 1768 | .widget ol .category-list-child { 1769 | padding: 10px 0; 1770 | font-size: 14px; 1771 | border-bottom: 1px solid border-color; 1772 | } 1773 | .widget ul li a, 1774 | .widget ol li a, 1775 | .widget ul .category-list-child a, 1776 | .widget ol .category-list-child a { 1777 | color: #777; 1778 | } 1779 | .widget ul ul, 1780 | .widget ol ul, 1781 | .widget ul ol, 1782 | .widget ol ol { 1783 | list-style: none; 1784 | } 1785 | .widget ul ul li, 1786 | .widget ol ul li, 1787 | .widget ul ol li, 1788 | .widget ol ol li { 1789 | border: none; 1790 | } 1791 | .widget ul ul li:last-child, 1792 | .widget ol ul li:last-child, 1793 | .widget ul ol li:last-child, 1794 | .widget ol ol li:last-child { 1795 | padding-bottom: 0px; 1796 | } 1797 | .widget ul:not(#recent-post) li a:before, 1798 | .widget ol:not(#recent-post) li a:before { 1799 | color: #ccc; 1800 | content: "\f0da"; 1801 | font-size: 12px; 1802 | margin-right: 6px; 1803 | font-family: FontAwesome; 1804 | -webkit-transition: 0.2s ease; 1805 | -moz-transition: 0.2s ease; 1806 | -ms-transition: 0.2s ease; 1807 | transition: 0.2s ease; 1808 | } 1809 | .widget ul:not(#recent-post) li a:hover:before, 1810 | .widget ol:not(#recent-post) li a:hover:before { 1811 | color: #333; 1812 | } 1813 | #toTop { 1814 | display: none; 1815 | cursor: pointer; 1816 | text-align: center; 1817 | width: 60px; 1818 | height: 60px; 1819 | color: #fff; 1820 | font-size: 50px; 1821 | line-height: 55px; 1822 | background: #565a5f; 1823 | opacity: 0.8; 1824 | -webkit-border-radius: 4px; 1825 | border-radius: 4px; 1826 | bottom: 20px; 1827 | position: fixed; 1828 | } 1829 | @media screen and (min-width: 560px) and (max-width: 799px) { 1830 | #toTop { 1831 | width: 52px; 1832 | height: 52px; 1833 | font-size: 34px; 1834 | line-height: 52px; 1835 | } 1836 | } 1837 | @media screen and (max-width: 559px) { 1838 | #toTop { 1839 | width: 48px; 1840 | height: 48px; 1841 | font-size: 32px; 1842 | line-height: 48px; 1843 | } 1844 | } 1845 | #recent-post li { 1846 | padding: 10px 0 10px 94px; 1847 | } 1848 | #recent-post li:before, 1849 | #recent-post li:after { 1850 | content: ""; 1851 | display: table; 1852 | } 1853 | #recent-post li:after { 1854 | clear: both; 1855 | } 1856 | #recent-post.no-thumbnail li { 1857 | padding: 10px 0px; 1858 | } 1859 | #recent-post li .item-thumbnail { 1860 | opacity: 1; 1861 | float: left; 1862 | margin-left: -94px; 1863 | -webkit-transition: all 0.2s ease; 1864 | -moz-transition: all 0.2s ease; 1865 | -ms-transition: all 0.2s ease; 1866 | transition: all 0.2s ease; 1867 | } 1868 | #recent-post li .item-thumbnail .thumbnail { 1869 | width: 80px; 1870 | height: 80px; 1871 | display: block; 1872 | position: relative; 1873 | overflow: hidden; 1874 | } 1875 | #recent-post li .item-thumbnail .thumbnail span { 1876 | width: 100%; 1877 | height: 100%; 1878 | display: block; 1879 | } 1880 | #recent-post li .item-thumbnail .thumbnail .thumbnail-image { 1881 | position: absolute; 1882 | -webkit-background-size: cover; 1883 | -moz-background-size: cover; 1884 | background-size: cover; 1885 | background-position: center; 1886 | } 1887 | #recent-post li .item-thumbnail .thumbnail .thumbnail-none { 1888 | background-image: url("images/thumb-default-small.png"); 1889 | -webkit-background-size: 100% 100%; 1890 | -moz-background-size: 100% 100%; 1891 | background-size: 100% 100%; 1892 | } 1893 | #recent-post li .item-inner a, 1894 | #recent-post li .item-inner .item-category { 1895 | font-size: 13px; 1896 | text-transform: uppercase; 1897 | } 1898 | #recent-post li .item-inner a a, 1899 | #recent-post li .item-inner .item-category a { 1900 | color: #38b7ea; 1901 | } 1902 | #recent-post li .item-inner a a:hover, 1903 | #recent-post li .item-inner .item-category a:hover { 1904 | color: #333; 1905 | } 1906 | #recent-post li .item-inner a a, 1907 | #recent-post li .item-inner .item-category a, 1908 | #recent-post li .item-inner a .fa, 1909 | #recent-post li .item-inner .item-category .fa { 1910 | margin-right: 5px; 1911 | } 1912 | #recent-post li .item-inner .item-title { 1913 | font-size: 15px; 1914 | } 1915 | #recent-post li .item-inner .item-title a { 1916 | color: #333; 1917 | -webkit-transition: all 0.2s ease; 1918 | -moz-transition: all 0.2s ease; 1919 | -ms-transition: all 0.2s ease; 1920 | transition: all 0.2s ease; 1921 | } 1922 | #recent-post li .item-inner .item-date { 1923 | color: #aaa; 1924 | font-size: 13px; 1925 | text-transform: uppercase; 1926 | } 1927 | #recent-post li:hover .item-thumbnail { 1928 | opacity: 0.8; 1929 | } 1930 | #recent-post li:hover .item-title a { 1931 | color: #38b7ea; 1932 | } 1933 | .ins-search { 1934 | display: none; 1935 | } 1936 | .ins-search.show { 1937 | display: block; 1938 | } 1939 | .ins-selectable { 1940 | cursor: pointer; 1941 | } 1942 | .ins-search-mask, 1943 | .ins-search-container { 1944 | position: fixed; 1945 | } 1946 | .ins-search-mask { 1947 | top: 0; 1948 | left: 0; 1949 | width: 100%; 1950 | height: 100%; 1951 | z-index: 100; 1952 | background: rgba(0,0,0,0.5); 1953 | } 1954 | .ins-input-wrapper { 1955 | position: relative; 1956 | } 1957 | .ins-search-input { 1958 | width: 100%; 1959 | border: none; 1960 | outline: none; 1961 | font-size: 16px; 1962 | -webkit-box-shadow: none; 1963 | box-shadow: none; 1964 | font-weight: 200; 1965 | -webkit-border-radius: 0; 1966 | border-radius: 0; 1967 | background: #fff; 1968 | line-height: 20px; 1969 | -webkit-box-sizing: border-box; 1970 | -moz-box-sizing: border-box; 1971 | box-sizing: border-box; 1972 | padding: 12px 28px 12px 20px; 1973 | border-bottom: 1px solid #e2e2e2; 1974 | font-family: "Microsoft Yahei Light", "Microsoft Yahei", Helvetica, Arial, sans-serif; 1975 | } 1976 | .ins-close { 1977 | top: 50%; 1978 | right: 6px; 1979 | width: 20px; 1980 | height: 20px; 1981 | font-size: 16px; 1982 | margin-top: -11px; 1983 | position: absolute; 1984 | text-align: center; 1985 | display: inline-block; 1986 | } 1987 | .ins-close:hover { 1988 | color: #006bde; 1989 | } 1990 | .ins-search-container { 1991 | left: 50%; 1992 | top: 100px; 1993 | z-index: 101; 1994 | bottom: 100px; 1995 | -webkit-box-sizing: border-box; 1996 | -moz-box-sizing: border-box; 1997 | box-sizing: border-box; 1998 | width: 540px; 1999 | margin-left: -270px; 2000 | } 2001 | @media screen and (max-width: 559px), screen and (max-height: 479px) { 2002 | .ins-search-container { 2003 | top: 0; 2004 | left: 0; 2005 | margin: 0; 2006 | width: 100%; 2007 | height: 100%; 2008 | background: #f7f7f7; 2009 | } 2010 | } 2011 | .ins-section-wrapper { 2012 | left: 0; 2013 | right: 0; 2014 | top: 45px; 2015 | bottom: 0; 2016 | overflow-y: auto; 2017 | position: absolute; 2018 | } 2019 | .ins-section-container { 2020 | position: relative; 2021 | background: #f7f7f7; 2022 | } 2023 | .ins-section { 2024 | font-size: 14px; 2025 | line-height: 16px; 2026 | } 2027 | .ins-section .ins-section-header, 2028 | .ins-section .ins-search-item { 2029 | padding: 8px 15px; 2030 | } 2031 | .ins-section .ins-section-header { 2032 | color: #9a9a9a; 2033 | border-bottom: 1px solid #e2e2e2; 2034 | } 2035 | .ins-section .ins-slug { 2036 | margin-left: 5px; 2037 | color: #9a9a9a; 2038 | } 2039 | .ins-section .ins-slug:before { 2040 | content: '('; 2041 | } 2042 | .ins-section .ins-slug:after { 2043 | content: ')'; 2044 | } 2045 | .ins-section .ins-search-item header, 2046 | .ins-section .ins-search-item .ins-search-preview { 2047 | overflow: hidden; 2048 | white-space: nowrap; 2049 | text-overflow: ellipsis; 2050 | } 2051 | .ins-section .ins-search-item header .fa { 2052 | margin-right: 8px; 2053 | } 2054 | .ins-section .ins-search-item .ins-search-preview { 2055 | height: 15px; 2056 | font-size: 12px; 2057 | color: #9a9a9a; 2058 | margin: 5px 0 0 20px; 2059 | } 2060 | .ins-section .ins-search-item:hover, 2061 | .ins-section .ins-search-item.active { 2062 | color: #fff; 2063 | background: #006bde; 2064 | } 2065 | .ins-section .ins-search-item:hover .ins-slug, 2066 | .ins-section .ins-search-item.active .ins-slug, 2067 | .ins-section .ins-search-item:hover .ins-search-preview, 2068 | .ins-section .ins-search-item.active .ins-search-preview { 2069 | color: #fff; 2070 | } 2071 | .highlight { 2072 | margin: 0px; 2073 | display: block; 2074 | overflow-x: auto; 2075 | padding: 15px 20px; 2076 | font-size: 14px; 2077 | font-family: "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace; 2078 | line-height: 22.400000000000002px; 2079 | } 2080 | .highlight table { 2081 | margin: 0; 2082 | width: auto; 2083 | } 2084 | .highlight table td { 2085 | border: none; 2086 | } 2087 | .highlight table td.code { 2088 | padding-right: 20px; 2089 | } 2090 | .highlight .gutter pre { 2091 | color: #666; 2092 | text-align: right; 2093 | padding-right: 20px; 2094 | } 2095 | .article-entry .highlight { 2096 | margin: 1.6em 0; 2097 | } 2098 | .article-entry .highlight .line { 2099 | height: 1.6em; 2100 | } 2101 | .highlight { 2102 | color: #ddd; 2103 | background: #272822; 2104 | } 2105 | .highlight .code .tag, 2106 | .highlight .code .keyword, 2107 | .highlight .code .selector-tag, 2108 | .highlight .code .literal, 2109 | .highlight .code .strong, 2110 | .highlight .code .name { 2111 | color: #f92672; 2112 | } 2113 | .highlight .code .code { 2114 | color: #66d9ef; 2115 | } 2116 | .highlight .code .class .title { 2117 | color: #fff; 2118 | } 2119 | .highlight .code .attribute, 2120 | .highlight .code .symbol, 2121 | .highlight .code .regexp, 2122 | .highlight .code .link { 2123 | color: #bf79db; 2124 | } 2125 | .highlight .code .string, 2126 | .highlight .code .bullet, 2127 | .highlight .code .subst, 2128 | .highlight .code .title, 2129 | .highlight .code .section, 2130 | .highlight .code .emphasis, 2131 | .highlight .code .type, 2132 | .highlight .code .built_in, 2133 | .highlight .code .builtin-name, 2134 | .highlight .code .selector-attr, 2135 | .highlight .code .selector-pseudo, 2136 | .highlight .code .addition, 2137 | .highlight .code .variable, 2138 | .highlight .code .template-tag, 2139 | .highlight .code .template-variable { 2140 | color: #a6e22e; 2141 | } 2142 | .highlight .code .comment, 2143 | .highlight .code .quote, 2144 | .highlight .code .deletion, 2145 | .highlight .code .meta { 2146 | color: #75715e; 2147 | } 2148 | .highlight .code .keyword, 2149 | .highlight .code .selector-tag, 2150 | .highlight .code .literal, 2151 | .highlight .code .doctag, 2152 | .highlight .code .title, 2153 | .highlight .code .section, 2154 | .highlight .code .type, 2155 | .highlight .code .selector-id { 2156 | font-weight: bold; 2157 | } 2158 | --------------------------------------------------------------------------------