Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d5a0a2e585 | ||
|
|
e7489a139d | ||
|
|
985a6fd47d | ||
|
|
0498eb167c | ||
|
|
eddc18ccc0 | ||
|
|
d80b49f524 | ||
|
|
215308a831 | ||
|
|
8e55544e3e | ||
|
|
e33b45a7ad | ||
|
|
8dafa9a753 | ||
|
|
d43aeab685 | ||
|
|
09fdd3c5a4 | ||
|
|
dda901e46d | ||
|
|
f06b4c163d | ||
|
|
3d685a192f | ||
|
|
3bbb09770d | ||
|
|
cd47e64b12 | ||
|
|
90830fb86f | ||
|
|
89271dd67d | ||
|
|
4bd0345eda | ||
|
|
f9d59eac80 | ||
|
|
45c6d84133 | ||
|
|
8c78e2f783 | ||
|
|
9698439543 | ||
|
|
3b2e58c7d8 | ||
|
|
7811c598b0 | ||
|
|
87b8d0b129 | ||
|
|
9a1c5ff3e6 | ||
|
|
3688b97b3c | ||
|
|
e916231560 | ||
|
|
422c0a467d | ||
|
|
1a538f15ac | ||
|
|
a41af6b53b | ||
|
|
35761b2e8d | ||
|
|
c8919d2418 | ||
|
|
050d690113 | ||
|
|
15a9ca5497 | ||
|
|
fad3d095a0 | ||
|
|
f2f00daea4 | ||
|
|
4fba65312f | ||
|
|
967190ebf9 | ||
|
|
1eac280027 | ||
|
|
2cd25f2ca0 | ||
|
|
96e60f2467 | ||
|
|
86146d58a0 | ||
|
|
8b3737cf23 | ||
|
|
1dabca2574 | ||
|
|
0ac42ec6f7 | ||
|
|
7bcb7412c9 | ||
|
|
b2b54b8ca7 | ||
|
|
ee94c5d71f | ||
|
|
b6edd3592c | ||
|
|
4e4944e6cb | ||
|
|
dc06530dd4 | ||
|
|
5525242588 | ||
|
|
6be4d23dab | ||
|
|
9f610952b9 | ||
|
|
d0313bd423 | ||
|
|
80f6c002f5 | ||
|
|
fd2b2a15d6 | ||
|
|
3ba1427cca | ||
|
|
0f0275010e | ||
|
|
99d4eee5bb | ||
|
|
1a837bbdb5 | ||
|
|
5ec4da089a | ||
|
|
88a22037f5 | ||
|
|
fc7aa8f8b8 | ||
|
|
91c30a0bf6 | ||
|
|
8803c2d53c | ||
|
|
285dad5a92 | ||
|
|
50f46ab257 | ||
|
|
b5cc7d19a0 | ||
|
|
7b24a02e13 | ||
|
|
43fb2e5688 | ||
|
|
3c73f33311 | ||
|
|
faf03b2b3f | ||
|
|
f5a313f703 | ||
|
|
83b4fde120 | ||
|
|
2c36474aa1 | ||
|
|
10300e3d62 | ||
|
|
161585f6ad | ||
|
|
027176b38f | ||
|
|
f0d24a56d6 | ||
|
|
4bfaa6c82f | ||
|
|
f3a937d08e | ||
|
|
dc5a28f1c3 | ||
|
|
a0b8dcb838 | ||
|
|
73d41d7277 | ||
|
|
1c008c25a8 | ||
|
|
644586e6ae | ||
|
|
aba6002f4e | ||
|
|
0236054d34 | ||
|
|
5a2d0ed5cf | ||
|
|
efcf3c9bb7 | ||
|
|
59f9a27ee9 |
@@ -1,7 +1,6 @@
|
||||
_site
|
||||
.sass-cache
|
||||
.DS_Store
|
||||
Gemfile.lock
|
||||
*.sublime-project
|
||||
*.sublime-workspace
|
||||
codekit-config.json
|
||||
|
||||
@@ -2,12 +2,9 @@
|
||||
layout: page
|
||||
title: "Page Not Found"
|
||||
excerpt: "Page not found. Your pixels are in another canvas."
|
||||
image:
|
||||
feature: texture-feature-01.jpg
|
||||
credit: Texture Lovers
|
||||
creditlink: http://texturelovers.com
|
||||
sitemap: false
|
||||
---
|
||||
permalink: /404.html
|
||||
---
|
||||
|
||||
Sorry, but the page you were trying to view does not exist --- perhaps you can try searching for it below.
|
||||
|
||||
@@ -16,5 +13,5 @@ Sorry, but the page you were trying to view does not exist --- perhaps you can t
|
||||
var GOOG_FIXURL_SITE = '{{ site.url }}'
|
||||
</script>
|
||||
<script type="text/javascript"
|
||||
src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js">
|
||||
</script>
|
||||
src="//linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js">
|
||||
</script>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
gem 'jekyll'
|
||||
gem "jekyll-sitemap"
|
||||
gem 'octopress', '~> 3.0.0.rc.12'
|
||||
gem 'jekyll-sitemap'
|
||||
gem 'octopress', '~> 3.0.0.rc.12'
|
||||
|
||||
@@ -2,26 +2,30 @@ GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
blankslate (2.1.2.4)
|
||||
celluloid (0.15.2)
|
||||
timers (~> 1.1.0)
|
||||
classifier (1.3.4)
|
||||
fast-stemmer (>= 1.0.0)
|
||||
celluloid (0.16.0)
|
||||
timers (~> 4.0.0)
|
||||
classifier-reborn (2.0.3)
|
||||
fast-stemmer (~> 1.0)
|
||||
coffee-script (2.3.0)
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.7.1)
|
||||
coffee-script-source (1.9.1)
|
||||
colorator (0.1)
|
||||
execjs (2.2.1)
|
||||
execjs (2.3.0)
|
||||
fast-stemmer (1.0.2)
|
||||
ffi (1.9.3-x86-mingw32)
|
||||
jekyll (2.2.0)
|
||||
classifier (~> 1.3)
|
||||
ffi (1.9.6)
|
||||
ffi (1.9.6-x64-mingw32)
|
||||
ffi (1.9.6-x86-mingw32)
|
||||
hitimes (1.2.2)
|
||||
hitimes (1.2.2-x86-mingw32)
|
||||
jekyll (2.5.3)
|
||||
classifier-reborn (~> 2.0)
|
||||
colorator (~> 0.1)
|
||||
jekyll-coffeescript (~> 1.0)
|
||||
jekyll-gist (~> 1.0)
|
||||
jekyll-paginate (~> 1.0)
|
||||
jekyll-sass-converter (~> 1.0)
|
||||
jekyll-watch (~> 1.0)
|
||||
jekyll-watch (~> 1.1)
|
||||
kramdown (~> 1.3)
|
||||
liquid (~> 2.6.1)
|
||||
mercenary (~> 0.3.3)
|
||||
@@ -29,45 +33,57 @@ GEM
|
||||
redcarpet (~> 3.1)
|
||||
safe_yaml (~> 1.0)
|
||||
toml (~> 0.1.0)
|
||||
jekyll-coffeescript (1.0.0)
|
||||
jekyll-coffeescript (1.0.1)
|
||||
coffee-script (~> 2.2)
|
||||
jekyll-gist (1.1.0)
|
||||
jekyll-paginate (1.0.0)
|
||||
jekyll-sass-converter (1.1.0)
|
||||
jekyll-paginate (1.1.0)
|
||||
jekyll-sass-converter (1.3.0)
|
||||
sass (~> 3.2)
|
||||
jekyll-sitemap (0.5.0)
|
||||
jekyll-watch (1.0.0)
|
||||
jekyll-sitemap (0.8.0)
|
||||
jekyll-watch (1.2.1)
|
||||
listen (~> 2.7)
|
||||
kramdown (1.4.0)
|
||||
liquid (2.6.1)
|
||||
listen (2.7.9)
|
||||
kramdown (1.6.0)
|
||||
liquid (2.6.2)
|
||||
listen (2.8.5)
|
||||
celluloid (>= 0.15.2)
|
||||
rb-fsevent (>= 0.9.3)
|
||||
rb-inotify (>= 0.9)
|
||||
mercenary (0.3.4)
|
||||
octopress (3.0.0.rc.14)
|
||||
mercenary (0.3.5)
|
||||
octopress (3.0.0.rc.34)
|
||||
jekyll (~> 2.0)
|
||||
mercenary (~> 0.3.2)
|
||||
octopress-deploy
|
||||
octopress-escape-code (~> 2.0)
|
||||
octopress-hooks (~> 2.0)
|
||||
titlecase
|
||||
octopress-deploy (1.1.0)
|
||||
colorator
|
||||
octopress-escape-code (2.0.6)
|
||||
octopress-hooks (~> 2.0)
|
||||
octopress-hooks (2.6.0)
|
||||
jekyll (~> 2.0)
|
||||
parslet (1.5.0)
|
||||
blankslate (~> 2.0)
|
||||
posix-spawn (0.3.8)
|
||||
pygments.rb (0.6.0)
|
||||
posix-spawn (0.3.10)
|
||||
pygments.rb (0.6.2)
|
||||
posix-spawn (~> 0.3.6)
|
||||
yajl-ruby (~> 1.1.0)
|
||||
yajl-ruby (~> 1.2.0)
|
||||
rb-fsevent (0.9.4)
|
||||
rb-inotify (0.9.5)
|
||||
ffi (>= 0.5.0)
|
||||
redcarpet (3.1.2)
|
||||
safe_yaml (1.0.3)
|
||||
sass (3.3.12)
|
||||
timers (1.1.0)
|
||||
redcarpet (3.2.2)
|
||||
safe_yaml (1.0.4)
|
||||
sass (3.4.13)
|
||||
timers (4.0.1)
|
||||
hitimes
|
||||
titlecase (0.1.1)
|
||||
toml (0.1.1)
|
||||
toml (0.1.2)
|
||||
parslet (~> 1.5.0)
|
||||
yajl-ruby (1.1.0-x86-mingw32)
|
||||
yajl-ruby (1.2.1)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
x64-mingw32
|
||||
x86-mingw32
|
||||
|
||||
DEPENDENCIES
|
||||
|
||||
@@ -80,5 +80,9 @@ module.exports = function(grunt) {
|
||||
grunt.registerTask('dev', [
|
||||
'watch'
|
||||
]);
|
||||
grunt.registerTask('images', [
|
||||
'imagemin',
|
||||
'svgmin'
|
||||
]);
|
||||
|
||||
};
|
||||
@@ -1,281 +1,21 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin St, Fifth Floor, Boston, MA 02110, USA
|
||||
Copyright (c) 2014 Michael Rose
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -1,11 +1,11 @@
|
||||
# Minimal Mistakes
|
||||
|
||||
**[Minimal Mistakes](http://mmistakes.github.io/minimal-mistakes)** is a two column responsive Jekyll theme perfect for powering your GitHub hosted blog.
|
||||
**[Minimal Mistakes](http://mmistakes.github.io/minimal-mistakes)** is a two column responsive Jekyll theme perfect for powering your GitHub hosted blog.
|
||||
|
||||
## Minimal Mistakes is all about:
|
||||
|
||||
* Responsive templates. Looking good on mobile, tablet, and desktop.
|
||||
* Gracefully degrading in older browsers. Compatible with Internet Explorer 8+ and all modern browsers.
|
||||
* Gracefully degrading in older browsers. Compatible with Internet Explorer 8+ and all modern browsers.
|
||||
* Minimal embellishments -- content first.
|
||||
* Optional large feature images for posts and pages.
|
||||
* Simple and clear permalink structure.
|
||||
@@ -18,6 +18,6 @@ See a [live version of Minimal Mistakes](http://mmistakes.github.io/minimal-mist
|
||||
|
||||
## Getting Started
|
||||
|
||||
Minimal Mistakes takes advantage of Sass and data files to make customizing easier. These features require Jekyll 2+ and will not work with older versions of Jekyll.
|
||||
Minimal Mistakes takes advantage of Sass and data files to make customizing easier. These features require Jekyll 2.x and will not work with older versions of Jekyll.
|
||||
|
||||
To learn more about how install and use this theme check out the [Setup Guide](http://mmistakes.github.io/minimal-mistakes/theme-setup/) for more information.
|
||||
To learn how to install and use this theme check out the [Setup Guide](http://mmistakes.github.io/minimal-mistakes/theme-setup/) for more information.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
title: Site Title
|
||||
locale: en_US
|
||||
url: http://localhost:4000
|
||||
url:
|
||||
|
||||
|
||||
# Jekyll configuration
|
||||
@@ -29,27 +29,33 @@ owner:
|
||||
name: Your Name
|
||||
avatar: bio-photo.jpg
|
||||
bio: "Describe your self."
|
||||
email: your@email.com
|
||||
disqus-shortname: minimalmistakes
|
||||
twitter: mmistakes
|
||||
facebook: michaelrose
|
||||
email:
|
||||
disqus-shortname:
|
||||
twitter: #username
|
||||
facebook: #username
|
||||
google:
|
||||
plus: +MichaelRoseDesign
|
||||
analytics: UA-2011187-3
|
||||
verify: UQj93ERU9zgECodaaXgVpkjrFn9UrDMEzVamacSoQ8Y
|
||||
ad-client: ca-pub-7328585512091257
|
||||
ad-slot: 7855747535
|
||||
bing-verify: D81F4C18A6CB3018F64D7C827D953DFD
|
||||
github: mmistakes
|
||||
stackoverflow:
|
||||
linkedin:
|
||||
instagram: mmistakes
|
||||
lastfm:
|
||||
tumblr:
|
||||
pinterest:
|
||||
foursquare:
|
||||
steam:
|
||||
dribbble:
|
||||
plus: #username
|
||||
analytics:
|
||||
verify:
|
||||
ad-client:
|
||||
ad-slot:
|
||||
bing-verify:
|
||||
github: #username
|
||||
stackoverflow: #123456/username from a "http://stackoverflow.com/users/123456/username" link
|
||||
linkedin: #username
|
||||
xing: #username
|
||||
instagram: #username
|
||||
lastfm: #username
|
||||
tumblr: #username
|
||||
pinterest: #username
|
||||
foursquare: #username
|
||||
steam: #username
|
||||
dribbble: #username
|
||||
youtube: #username
|
||||
soundcloud: #username
|
||||
weibo: #username
|
||||
flickr: #username
|
||||
codepen: #username
|
||||
|
||||
include: [".htaccess"]
|
||||
exclude: ["lib", "config.rb", "Capfile", "config", "log", "Rakefile", "Rakefile.rb", "tmp", "less", "*.sublime-project", "*.sublime-workspace", "test", "spec", "Gruntfile.js", "package.json", "node_modules", "Gemfile", "Gemfile.lock", "LICENSE", "README.md"]
|
||||
|
||||
@@ -5,10 +5,10 @@ billy_rick:
|
||||
web: http://thewhip.com
|
||||
email: billy@rick.com
|
||||
bio: "What do you want, jewels? I am a very extravagant man."
|
||||
avatar: bio-photo.jpg
|
||||
avatar: bio-photo-2.jpg
|
||||
twitter: extravagantman
|
||||
google:
|
||||
plus: +BillyRick
|
||||
plus: BillyRick
|
||||
|
||||
cornelius_fiddlebone:
|
||||
name: Cornelius Fiddlebone
|
||||
@@ -17,4 +17,4 @@ cornelius_fiddlebone:
|
||||
avatar: bio-photo.jpg
|
||||
twitter: rhymeswithsackit
|
||||
google:
|
||||
plus: +CorneliusFiddlebone
|
||||
plus: CorneliusFiddlebone
|
||||
@@ -2,23 +2,34 @@
|
||||
{% assign author = site.data.authors[page.author] %}{% else %}{% assign author = site.owner %}
|
||||
{% endif %}
|
||||
|
||||
<div itemscope itemtype="http://schema.org/Person">
|
||||
|
||||
{% if author.avatar contains 'http' %}
|
||||
<img src="{{ author.avatar }}" class="bio-photo" alt="{{ author.name }} bio photo"></a>
|
||||
<img src="{{ author.avatar }}" class="bio-photo" alt="{{ author.name }} bio photo">
|
||||
{% else %}
|
||||
<img src="{{ site.url }}/images/{{ author.avatar }}" class="bio-photo" alt="{{ author.name }} bio photo"></a>
|
||||
<img src="{{ site.url }}/images/{{ author.avatar }}" class="bio-photo" alt="{{ author.name }} bio photo">
|
||||
{% endif %}
|
||||
<h3>{{ author.name }}</h3>
|
||||
<p>{{ author.bio }}</p>
|
||||
{% if author.twitter %}<a href="http://twitter.com/{{ author.twitter }}" class="author-social" target="_blank"><i class="fa fa-twitter-square"></i> Twitter</a>{% endif %}
|
||||
{% if author.facebook %}<a href="http://facebook.com/{{ author.facebook }}" class="author-social" target="_blank"><i class="fa fa-facebook-square"></i> Facebook</a>{% endif %}
|
||||
{% if author.google_plus %}<a href="http://plus.google.com/+{{ author.google_plus }}" class="author-social" target="_blank"><i class="fa fa-google-plus-square"></i> Google+</a>{% endif %}
|
||||
{% if author.linkedin %}<a href="http://linkedin.com/in/{{ author.linkedin }}" class="author-social" target="_blank"><i class="fa fa-linkedin-square"></i> LinkedIn</a>{% endif %}
|
||||
{% if author.instagram %}<a href="http://instagram.com/{{ author.instagram }}" class="author-social" target="_blank"><i class="fa fa-instagram"></i> Instagram</a>{% endif %}
|
||||
{% if author.tumblr %}<a href="http://{{ author.tumblr }}.tumblr.com" class="author-social" target="_blank"><i class="fa fa-tumblr-square"></i> Tumblr</a>{% endif %}
|
||||
{% if author.github %}<a href="http://github.com/{{ author.github }}" class="author-social" target="_blank"><i class="fa fa-github"></i> Github</a>{% endif %}
|
||||
{% if author.stackoverflow %}<a href="http://stackoverflow.com/users/{{ author.stackoverflow }}" class="author-social" target="_blank"><i class="fa fa-stack-overflow"></i> Stackoverflow</a>{% endif %}
|
||||
{% if author.lastfm %}<a href="http://lastfm.com/user/{{ author.lastfm }}" class="author-social" target="_blank"><i class="fa fa-music"></i> Last.fm</a>{% endif %}
|
||||
{% if author.dribbble %}<a href="http://dribbble.com/{{ author.dribbble }}" class="author-social" target="_blank"><i class="fa fa-dribbble"></i> Dribbble</a>{% endif %}
|
||||
{% if author.pinterest %}<a href="http://www.pinterest.com/{{ author.pinterest }}" class="author-social" target="_blank"><i class="fa fa-pinterest"></i> Pinterest</a>{% endif %}
|
||||
{% if author.foursquare %}<a href="http://foursquare.com/{{ author.foursquare }}" class="author-social" target="_blank"><i class="fa fa-foursquare"></i> Foursquare</a>{% endif %}
|
||||
{% if author.steam %}<a href="http://steamcommunity.com/id/{{ author.steam }}" class="author-social" target="_blank"><i class="fa fa-steam-square"></i> Steam</a>{% endif %}
|
||||
|
||||
<h3 itemprop="name">{{ author.name }}</h3>
|
||||
<p>{{ author.bio }}</p>
|
||||
{% if author.email %}<a href="mailto:{{ author.email }}" class="author-social" target="_blank"><i class="fa fa-fw fa-envelope-square"></i> Email</a>{% endif %}
|
||||
{% if author.twitter %}<a href="http://twitter.com/{{ author.twitter }}" class="author-social" target="_blank"><i class="fa fa-fw fa-twitter-square"></i> Twitter</a>{% endif %}
|
||||
{% if author.facebook %}<a href="http://facebook.com/{{ author.facebook }}" class="author-social" target="_blank"><i class="fa fa-fw fa-facebook-square"></i> Facebook</a>{% endif %}
|
||||
{% if author.google.plus %}<a href="http://plus.google.com/+{{ author.google.plus }}" class="author-social" target="_blank"><i class="fa fa-fw fa-google-plus-square"></i> Google+</a>{% endif %}
|
||||
{% if author.linkedin %}<a href="http://linkedin.com/in/{{ author.linkedin }}" class="author-social" target="_blank"><i class="fa fa-fw fa-linkedin-square"></i> LinkedIn</a>{% endif %}
|
||||
{% if author.xing %}<a href="http://www.xing.com/profile/{{ author.xing }}" class="author-social" target="_blank"><i class="fa fa-fw fa-xing-square"></i> XING</a>{% endif %}
|
||||
{% if author.instagram %}<a href="http://instagram.com/{{ author.instagram }}" class="author-social" target="_blank"><i class="fa fa-fw fa-instagram"></i> Instagram</a>{% endif %}
|
||||
{% if author.tumblr %}<a href="http://{{ author.tumblr }}.tumblr.com" class="author-social" target="_blank"><i class="fa fa-fw fa-tumblr-square"></i> Tumblr</a>{% endif %}
|
||||
{% if author.github %}<a href="http://github.com/{{ author.github }}" class="author-social" target="_blank"><i class="fa fa-fw fa-github"></i> Github</a>{% endif %}
|
||||
{% if author.stackoverflow %}<a href="http://stackoverflow.com/users/{{ author.stackoverflow }}" class="author-social" target="_blank"><i class="fa fa-fw fa-stack-overflow"></i> Stackoverflow</a>{% endif %}
|
||||
{% if author.lastfm %}<a href="http://lastfm.com/user/{{ author.lastfm }}" class="author-social" target="_blank"><i class="fa fa-fw fa-music"></i> Last.fm</a>{% endif %}
|
||||
{% if author.dribbble %}<a href="http://dribbble.com/{{ author.dribbble }}" class="author-social" target="_blank"><i class="fa fa-fw fa-dribbble"></i> Dribbble</a>{% endif %}
|
||||
{% if author.pinterest %}<a href="http://www.pinterest.com/{{ author.pinterest }}" class="author-social" target="_blank"><i class="fa fa-fw fa-pinterest"></i> Pinterest</a>{% endif %}
|
||||
{% if author.foursquare %}<a href="http://foursquare.com/{{ author.foursquare }}" class="author-social" target="_blank"><i class="fa fa-fw fa-foursquare"></i> Foursquare</a>{% endif %}
|
||||
{% if author.steam %}<a href="http://steamcommunity.com/id/{{ author.steam }}" class="author-social" target="_blank"><i class="fa fa-fw fa-steam-square"></i> Steam</a>{% endif %}
|
||||
{% if author.youtube %}<a href="https://youtube.com/user/{{ author.youtube }}" class="author-social" target="_blank"><i class="fa fa-fw fa-youtube-square"></i> Youtube</a>{% endif %}
|
||||
{% if author.soundcloud %}<a href="http://soundcloud.com/{{ author.soundcloud }}" class="author-social" target="_blank"><i class="fa fa-fw fa-soundcloud"></i> Soundcloud</a>{% endif %}
|
||||
{% if author.weibo %}<a href="http://www.weibo.com/{{ author.weibo }}" class="author-social" target="_blank"><i class="fa fa-fw fa-weibo"></i> Weibo</a>{% endif %}
|
||||
{% if author.flickr %}<a href="http://www.flickr.com/{{ author.flickr }}" class="author-social" target="_blank"><i class="fa fa-fw fa-flickr"></i> Flickr</a>{% endif %}
|
||||
{% if author.codepen %}<a href="http://codepen.io/{{ author.codepen }}" class="author-social" target="_blank"><i class="fa fa-fw fa-codepen"></i> CodePen</a>{% endif %}
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
<p><a href="{{ site.url }}{{ post.url }}">{{ post.title | xml_escape }}</a> was originally published by {{ site.owner.name }} at <a href="{{ site.url }}">{{ site.title }}</a> on {{ post.date | date: "%B %d, %Y" }}.</p>
|
||||
@@ -1,13 +1,15 @@
|
||||
{% if site.owner.google.ad-client and site.owner.google.ad-slot %}
|
||||
<div class="google-ads">
|
||||
<!-- 320 x 50 ad -->
|
||||
<script async src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
<ins class="adsbygoogle"
|
||||
style="display:inline-block;width:320px;height:50px"
|
||||
data-ad-client="{{ site.owner.google.ad-client }}"
|
||||
data-ad-slot="{{ site.owner.goodle.slot }}"></ins>
|
||||
data-ad-slot="{{ site.owner.google.ad-slot }}"></ins>
|
||||
<script>
|
||||
(adsbygoogle = window.adsbygoogle || []).push({});
|
||||
</script>
|
||||
</div><!-- /.google-ads -->
|
||||
{% endif %}
|
||||
|
||||
<span>© {{ site.time | date: '%Y' }} {{ site.owner.name }}. Powered by <a href="http://jekyllrb.com">Jekyll</a> using the <a href="http://mademistakes.com/minimal-mistakes/">Minimal Mistakes</a> theme.</span>
|
||||
<span>© {{ site.time | date: '%Y' }} {{ site.owner.name }}. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> using the <a href="http://mademistakes.com/minimal-mistakes/" rel="nofollow">Minimal Mistakes</a> theme.</span>
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
{% capture canonical %}{{ site.url }}{% if site.permalink contains '.html' %}{{ page.url }}{% else %}{{ page.url | remove:'index.html' | strip_slash }}{% endif %}{% endcapture %}
|
||||
<link rel="canonical" href="{{ canonical }}">
|
||||
<link href="{{ site.url }}/feed.xml" type="application/atom+xml" rel="alternate" title="{{ site.title }} Feed">
|
||||
{% if site.owner.google.plus %}<link rel="author" href="http://plus.google.com/+{{ site.owner.google.plus }}?rel=author">{% endif %}
|
||||
|
||||
<!-- http://t.co/dKP3o1e -->
|
||||
<meta name="HandheldFriendly" content="True">
|
||||
@@ -36,6 +35,8 @@
|
||||
<!-- Modernizr -->
|
||||
<script src="{{ site.url }}/assets/js/vendor/modernizr-2.7.1.custom.min.js"></script>
|
||||
|
||||
<link href='//fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700%7CPT+Serif:400,700,400italic' rel='stylesheet' type='text/css'>
|
||||
|
||||
<!-- Icons -->
|
||||
<!-- 16x16 -->
|
||||
<link rel="shortcut icon" href="{{ site.url }}/favicon.ico">
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
<div class="navigation-wrapper">
|
||||
<div class="site-name">
|
||||
<a href="{{ site.url }}">{{ site.title }}</a>
|
||||
<a href="{{ site.url }}/">{{ site.title }}</a>
|
||||
</div><!-- /.site-name -->
|
||||
<div class="top-navigation">
|
||||
<nav role="navigation" id="site-nav" class="nav">
|
||||
<ul>
|
||||
{% for link in site.data.navigation %}
|
||||
{% if link.url contains 'http' %}
|
||||
{% assign domain = '' %}
|
||||
{% else %}
|
||||
{% assign domain = site.url %}
|
||||
{% endif %}
|
||||
<li><a href="{{ domain }}{{ link.url }}" {% if link.url contains 'http' %}target="_blank"{% endif %}>{{ link.title }}</a></li>
|
||||
{% endfor %}
|
||||
{% if link.url contains 'http' %}
|
||||
{% assign domain = '' %}
|
||||
{% else %}
|
||||
{% assign domain = site.url %}
|
||||
{% endif %}
|
||||
<li><a href="{{ domain }}{{ link.url }}" {% if link.url contains 'http' %}target="_blank"{% endif %}>{{ link.title }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</nav>
|
||||
</div><!-- /.top-navigation -->
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<meta name="twitter:image" content="{{ site.url }}/images/{{ page.image.feature }}">
|
||||
{% else %}
|
||||
<meta name="twitter:card" content="summary">
|
||||
<meta name="twitter:image" content="{% if page.image.thumb %}{{ site.url }}/images/{{ page.image.thumb }}{% else %}{{ site.url }}/images/{{ site.logo }}{% endif %}">
|
||||
<meta name="twitter:image" content="{% if page.image.thumb %}{{ site.url }}/images/{{ page.image.thumb }}{% else %}{{ site.url }}/images/default-thumb.png{% endif %}">
|
||||
{% endif %}
|
||||
<!-- Open Graph -->
|
||||
<meta property="og:locale" content="{{ site.locale }}">
|
||||
@@ -16,4 +16,9 @@
|
||||
<meta property="og:title" content="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}">
|
||||
{% if page.excerpt %}<meta property="og:description" content="{{ page.excerpt | strip_html }}">{% endif %}
|
||||
<meta property="og:url" content="{{ page.url | replace:'index.html','' | prepend: site.url }}">
|
||||
<meta property="og:site_name" content="{{ site.title }}">
|
||||
<meta property="og:site_name" content="{{ site.title }}">
|
||||
{% if page.image.feature %}
|
||||
<meta property="og:image" content="{{ site.url }}/images/{{ page.image.feature }}">
|
||||
{% else %}
|
||||
<meta property="og:image" content="{% if page.image.thumb %}{{ site.url }}/images/{{ page.image.thumb }}{% else %}{{ site.url }}/images/default-thumb.png{% endif %}">
|
||||
{% endif %}
|
||||
@@ -5,7 +5,7 @@
|
||||
<!-- Asynchronous Google Analytics snippet -->
|
||||
<script>
|
||||
var _gaq = _gaq || [];
|
||||
var pluginUrl =
|
||||
var pluginUrl =
|
||||
'//www.google-analytics.com/plugins/ga/inpage_linkid.js';
|
||||
_gaq.push(['_require', 'inpage_linkid', pluginUrl]);
|
||||
_gaq.push(['_setAccount', '{{ site.owner.google.analytics }}']);
|
||||
@@ -20,4 +20,4 @@
|
||||
{% endif %}
|
||||
{% if page.comments %}
|
||||
{% include _disqus_comments.html %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
<div class="social-share">
|
||||
<h4>Share on</h4>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://twitter.com/intent/tweet?text={{ site.url }}{{ page.url }}" class="twitter" title="Share on Twitter"><i class="fa fa-twitter"></i><span> Twitter</span></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://www.facebook.com/sharer/sharer.php?u={{ site.url }}{{ page.url }}" class="facebook" title="Share on Facebook"><i class="fa fa-facebook"></i><span> Facebook</span></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://plus.google.com/share?url={{ site.url }}{{ page.url }}" class="google-plus" title="Share on Google Plus"><i class="fa fa-google-plus"></i><span> Google+</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- /.social-share -->
|
||||
@@ -0,0 +1,9 @@
|
||||
<section id="table-of-contents" class="toc">
|
||||
<header>
|
||||
<h3><i class="fa fa-book"></i> Overview</h3>
|
||||
</header>
|
||||
<div id="drawer" markdown="1">
|
||||
* Auto generated table of contents
|
||||
{:toc}
|
||||
</div>
|
||||
</section><!-- /#table-of-contents -->
|
||||
@@ -28,23 +28,24 @@
|
||||
</div><!-- /.image-wrap -->
|
||||
{% endif %}
|
||||
|
||||
<div class="article-author-side">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
|
||||
<div id="index">
|
||||
<h3><a href="{{ site.url}}/posts/">Recent Posts</a></h3>
|
||||
{% for post in site.posts limit:5 %}
|
||||
<article>
|
||||
{% if post.link %}
|
||||
<h2 class="link-post"><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a> <a href="{{ post.link }}" target="_blank" title="{{ post.title }}"><i class="fa fa-link"></i></h2>
|
||||
{% else %}
|
||||
<h2><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></h2>
|
||||
<p>{{ post.excerpt | strip_html | truncate: 160 }}</p>
|
||||
{% endif %}
|
||||
</article>
|
||||
{% endfor %}
|
||||
</div><!-- /#index -->
|
||||
<div id="main" role="main">
|
||||
<div class="article-author-side">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
<div id="index">
|
||||
<h3><a href="{{ site.url}}/posts/">Recent Posts</a></h3>
|
||||
{% for post in site.posts limit:5 %}
|
||||
<article>
|
||||
{% if post.link %}
|
||||
<h2 class="link-post"><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a> <a href="{{ post.link }}" target="_blank" title="{{ post.title }}"><i class="fa fa-link"></i></h2>
|
||||
{% else %}
|
||||
<h2><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></h2>
|
||||
<p>{{ post.excerpt | strip_html | truncate: 160 }}</p>
|
||||
{% endif %}
|
||||
</article>
|
||||
{% endfor %}
|
||||
</div><!-- /#index -->
|
||||
</div><!-- /#main -->
|
||||
|
||||
<div class="footer-wrap">
|
||||
<footer>
|
||||
@@ -53,6 +54,6 @@
|
||||
</div><!-- /.footer-wrap -->
|
||||
|
||||
{% include _scripts.html %}
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -32,10 +32,14 @@
|
||||
<div class="article-author-side">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
<article>
|
||||
<article class="page">
|
||||
<h1>{{ page.title }}</h1>
|
||||
<div class="article-wrap">
|
||||
{{ content }}
|
||||
{% if page.share != false %}
|
||||
<hr />
|
||||
{% include _social-share.html %}
|
||||
{% endif %}
|
||||
</div><!-- /.article-wrap -->
|
||||
{% if site.owner.disqus-shortname and page.comments == true %}
|
||||
<section id="disqus_thread"></section><!-- /#disqus_thread -->
|
||||
@@ -49,7 +53,7 @@
|
||||
</footer>
|
||||
</div><!-- /.footer-wrap -->
|
||||
|
||||
{% include _scripts.html %}
|
||||
{% include _scripts.html %}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@@ -28,32 +28,30 @@
|
||||
</div><!-- /.image-wrap -->
|
||||
{% endif %}
|
||||
|
||||
<div class="article-author-side">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
|
||||
<div id="index">
|
||||
<h1>{{ page.title }}</h1>
|
||||
{% for post in site.posts %}
|
||||
{% unless post.next %}
|
||||
<h3>{{ post.date | date: '%Y' }}</h3>
|
||||
{% else %}
|
||||
<div id="main" role="main">
|
||||
<div class="article-author-side">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
<div id="index">
|
||||
<h1>{{ page.title }}</h1>
|
||||
{% capture written_year %}'None'{% endcapture %}
|
||||
{% for post in site.posts %}
|
||||
{% capture year %}{{ post.date | date: '%Y' }}{% endcapture %}
|
||||
{% capture nyear %}{{ post.next.date | date: '%Y' }}{% endcapture %}
|
||||
{% if year != nyear %}
|
||||
<h3>{{ post.date | date: '%Y' }}</h3>
|
||||
{% if year != written_year %}
|
||||
<h3>{{ year }}</h3>
|
||||
{% capture written_year %}{{ year }}{% endcapture %}
|
||||
{% endif %}
|
||||
{% endunless %}
|
||||
<article>
|
||||
{% if post.link %}
|
||||
<h2 class="link-post"><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a> <a href="{{ post.link }}" target="_blank" title="{{ post.title }}"><i class="fa fa-link"></i></h2>
|
||||
{% else %}
|
||||
<h2><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></h2>
|
||||
<p>{{ post.excerpt | strip_html | truncate: 160 }}</p>
|
||||
{% endif %}
|
||||
</article>
|
||||
{% endfor %}
|
||||
</div><!-- /#index -->
|
||||
<article>
|
||||
{% if post.link %}
|
||||
<h2 class="link-post"><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a> <a href="{{ post.link }}" target="_blank" title="{{ post.title }}"><i class="fa fa-link"></i></a></h2>
|
||||
{% else %}
|
||||
<h2><a href="{{ site.url }}{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></h2>
|
||||
<p>{{ post.excerpt | strip_html | truncate: 160 }}</p>
|
||||
{% endif %}
|
||||
</article>
|
||||
{% endfor %}
|
||||
</div><!-- /#index -->
|
||||
</div><!-- /#main -->
|
||||
|
||||
<div class="footer-wrap">
|
||||
<footer>
|
||||
@@ -62,6 +60,6 @@
|
||||
</div><!-- /.footer-wrap -->
|
||||
|
||||
{% include _scripts.html %}
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="article-author-side">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
<article>
|
||||
<article class="post">
|
||||
<div class="headline-wrap">
|
||||
{% if page.link %}
|
||||
<h1><a href="{{ page.link }}">{{ page.title }}</a></h1>
|
||||
@@ -44,9 +44,7 @@
|
||||
{{ content }}
|
||||
<hr />
|
||||
<footer role="contentinfo">
|
||||
<div class="article-author-bottom">
|
||||
{% include _author-bio.html %}
|
||||
</div>
|
||||
{% if page.share != false %}{% include _social-share.html %}{% endif %}
|
||||
<p class="byline"><strong>{{ page.title }}</strong> was published on <time datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: "%B %d, %Y" }}</time>{% if page.modified %} and last modified on <time datetime="{{ page.modified | date: "%Y-%m-%d" }}">{{ page.modified | date: "%B %d, %Y" }}</time>{% endif %}.</p>
|
||||
</footer>
|
||||
</div><!-- /.article-wrap -->
|
||||
@@ -57,6 +55,7 @@
|
||||
</div><!-- /#main -->
|
||||
|
||||
<div class="footer-wrap">
|
||||
{% if site.related_posts.size > 0 %}
|
||||
<div class="related-articles">
|
||||
<h4>You might also enjoy <small class="pull-right">(<a href="{{ site.url }}/posts/">View all posts</a>)</small></h4>
|
||||
<ul>
|
||||
@@ -66,12 +65,13 @@
|
||||
</ul>
|
||||
<hr />
|
||||
</div><!-- /.related-articles -->
|
||||
{% endif %}
|
||||
<footer>
|
||||
{% include _footer.html %}
|
||||
</footer>
|
||||
</div><!-- /.footer-wrap -->
|
||||
|
||||
{% include _scripts.html %}
|
||||
{% include _scripts.html %}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@@ -6,9 +6,9 @@ modified: 2013-05-31
|
||||
tags: [intro, beginner, jekyll, tutorial]
|
||||
comments: true
|
||||
image:
|
||||
feature: texture-feature-05.jpg
|
||||
credit: Texture Lovers
|
||||
creditlink: http://texturelovers.com
|
||||
feature: sample-image-5.jpg
|
||||
credit: WeGraphics
|
||||
creditlink: http://wegraphics.net/downloads/free-ultimate-blurred-background-pack/
|
||||
---
|
||||
|
||||
<section id="table-of-contents" class="toc">
|
||||
|
||||
@@ -12,11 +12,11 @@ Vero laborum commodo occupy. Semiotics voluptate mumblecore pug. Cosby sweater u
|
||||
|
||||
## Cupidatat 90's lo-fi authentic try-hard
|
||||
|
||||
In pug Portland incididunt mlkshk put a bird on it vinyl quinoa. Terry Richardson shabby chic +1, scenester Tonx excepteur tempor fugiat voluptate fingerstache aliquip nisi next level. Farm-to-table hashtag Truffaut, Odd Future ex meggings gentrify single-origin coffee try-hard 90's.
|
||||
In pug Portland incididunt mlkshk put a bird on it vinyl quinoa. Terry Richardson shabby chic +1, scenester Tonx excepteur tempor fugiat voluptate fingerstache aliquip nisi next level. Farm-to-table hashtag Truffaut, Odd Future ex meggings gentrify single-origin coffee try-hard 90's.
|
||||
|
||||
* Sartorial hoodie
|
||||
* Sartorial hoodie
|
||||
* Labore viral forage
|
||||
* Tote bag selvage
|
||||
* Tote bag selvage
|
||||
* DIY exercitation et id ugh tumblr church-key
|
||||
|
||||
Incididunt umami sriracha, ethical fugiat VHS ex assumenda yr irure direct trade. Marfa Truffaut bicycle rights, kitsch placeat Etsy kogi asymmetrical. Beard locavore flexitarian, kitsch photo booth hoodie plaid ethical readymade leggings yr.
|
||||
@@ -25,7 +25,7 @@ Aesthetic odio dolore, meggings disrupt qui readymade stumptown brunch Terry Ric
|
||||
|
||||
## Forage occaecat cardigan qui
|
||||
|
||||
Fashion axe hella gastropub lo-fi kogi 90's aliquip +1 veniam delectus tousled. Cred sriracha locavore gastropub kale chips, iPhone mollit sartorial. Anim dolore 8-bit, pork belly dolor photo booth aute flannel small batch. Dolor disrupt ennui, tattooed whatever salvia Banksy sartorial roof party selfies raw denim sint meh pour-over. Ennui eu cardigan sint, gentrify iPhone cornhole.
|
||||
Fashion axe hella gastropub lo-fi kogi 90's aliquip +1 veniam delectus tousled. Cred sriracha locavore gastropub kale chips, iPhone mollit sartorial. Anim dolore 8-bit, pork belly dolor photo booth aute flannel small batch. Dolor disrupt ennui, tattooed whatever salvia Banksy sartorial roof party selfies raw denim sint meh pour-over. Ennui eu cardigan sint, gentrify iPhone cornhole.
|
||||
|
||||
> Whatever velit occaecat quis deserunt gastropub, leggings elit tousled roof party 3 wolf moon kogi pug blue bottle ea. Fashion axe shabby chic Austin quinoa pickled laborum bitters next level, disrupt deep v accusamus non fingerstache.
|
||||
|
||||
@@ -41,4 +41,4 @@ Fingerstache thundercats Williamsburg, deep v scenester Banksy ennui vinyl selfi
|
||||
|
||||
Occupy et selvage squid, pug brunch blog nesciunt hashtag mumblecore skateboard yr kogi. Ugh small batch swag four loko. Fap post-ironic qui tote bag farm-to-table american apparel scenester keffiyeh vero, swag non pour-over gentrify authentic pitchfork. Schlitz scenester lo-fi voluptate, tote bag irony bicycle rights pariatur vero Vice freegan wayfarers exercitation nisi shoreditch. Chambray tofu vero sed. Street art swag literally leggings, Cosby sweater mixtape PBR lomo Banksy non in pitchfork ennui McSweeney's selfies. Odd Future Banksy non authentic.
|
||||
|
||||
Aliquip enim artisan dolor post-ironic. Pug tote bag Marfa, deserunt pour-over Portland wolf eu odio intelligentsia american apparel ugh ea. Sunt viral et, 3 wolf moon gastropub pug id. Id fashion axe est typewriter, mlkshk Portland art party aute brunch. Sint pork belly Cosby sweater, deep v mumblecore kitsch american apparel. Try-hard direct trade tumblr sint skateboard. Adipisicing bitters excepteur biodiesel, pickled gastropub aute veniam.
|
||||
Aliquip enim artisan dolor post-ironic. Pug tote bag Marfa, deserunt pour-over Portland wolf eu odio intelligentsia american apparel ugh ea. Sunt viral et, 3 wolf moon gastropub pug id. Id fashion axe est typewriter, mlkshk Portland art party aute brunch. Sint pork belly Cosby sweater, deep v mumblecore kitsch american apparel. Try-hard direct trade tumblr sint skateboard. Adipisicing bitters excepteur biodiesel, pickled gastropub aute veniam.
|
||||
|
||||
@@ -59,4 +59,4 @@ And you'll get something that looks like this:
|
||||
<img src="http://placehold.it/600x300.jpg">
|
||||
<img src="http://placehold.it/600x300.jpg">
|
||||
<figcaption>Three images.</figcaption>
|
||||
</figure>
|
||||
</figure>
|
||||
|
||||
@@ -5,9 +5,9 @@ excerpt: "Custom written post descriptions are the way to go... if you're not la
|
||||
tags: [sample post, readability, test]
|
||||
comments: true
|
||||
image:
|
||||
feature: texture-feature-04.jpg
|
||||
credit: Texture Lovers
|
||||
creditlink: http://texturelovers.com
|
||||
feature: sample-image-4.jpg
|
||||
credit: WeGraphics
|
||||
creditlink: http://wegraphics.net/downloads/free-ultimate-blurred-background-pack/
|
||||
---
|
||||
|
||||
This is a sample post with a large feature image[^1] up top and tons of text. Odio ad blue bottle vinyl, 90's narwhal commodo bitters pour-over nostrud. Ugh est hashtag in, fingerstache adipisicing laboris esse Pinterest shabby chic Portland. Shoreditch bicycle rights anim, flexitarian laboris put a bird on it vinyl cupidatat narwhal. Hashtag artisan skateboard, flannel Bushwick nesciunt salvia aute fixie do plaid post-ironic dolor McSweeney's. Cliche pour-over chambray nulla four loko skateboard sapiente hashtag.
|
||||
@@ -16,11 +16,11 @@ Vero laborum commodo occupy. Semiotics voluptate mumblecore pug. Cosby sweater u
|
||||
|
||||
## Cupidatat 90's lo-fi authentic try-hard
|
||||
|
||||
In pug Portland incididunt mlkshk put a bird on it vinyl quinoa. Terry Richardson shabby chic +1, scenester Tonx excepteur tempor fugiat voluptate fingerstache aliquip nisi next level. Farm-to-table hashtag Truffaut, Odd Future ex meggings gentrify single-origin coffee try-hard 90's.
|
||||
In pug Portland incididunt mlkshk put a bird on it vinyl quinoa. Terry Richardson shabby chic +1, scenester Tonx excepteur tempor fugiat voluptate fingerstache aliquip nisi next level. Farm-to-table hashtag Truffaut, Odd Future ex meggings gentrify single-origin coffee try-hard 90's.
|
||||
|
||||
* Sartorial hoodie
|
||||
* Sartorial hoodie
|
||||
* Labore viral forage
|
||||
* Tote bag selvage
|
||||
* Tote bag selvage
|
||||
* DIY exercitation et id ugh tumblr church-key
|
||||
|
||||
Incididunt umami sriracha, ethical fugiat VHS ex assumenda yr irure direct trade. Marfa Truffaut bicycle rights, kitsch placeat Etsy kogi asymmetrical. Beard locavore flexitarian, kitsch photo booth hoodie plaid ethical readymade leggings yr.
|
||||
@@ -29,7 +29,7 @@ Aesthetic odio dolore, meggings disrupt qui readymade stumptown brunch Terry Ric
|
||||
|
||||
## Forage occaecat cardigan qui
|
||||
|
||||
Fashion axe hella gastropub lo-fi kogi 90's aliquip +1 veniam delectus tousled. Cred sriracha locavore gastropub kale chips, iPhone mollit sartorial. Anim dolore 8-bit, pork belly dolor photo booth aute flannel small batch. Dolor disrupt ennui, tattooed whatever salvia Banksy sartorial roof party selfies raw denim sint meh pour-over. Ennui eu cardigan sint, gentrify iPhone cornhole.
|
||||
Fashion axe hella gastropub lo-fi kogi 90's aliquip +1 veniam delectus tousled. Cred sriracha locavore gastropub kale chips, iPhone mollit sartorial. Anim dolore 8-bit, pork belly dolor photo booth aute flannel small batch. Dolor disrupt ennui, tattooed whatever salvia Banksy sartorial roof party selfies raw denim sint meh pour-over. Ennui eu cardigan sint, gentrify iPhone cornhole.
|
||||
|
||||
> Whatever velit occaecat quis deserunt gastropub, leggings elit tousled roof party 3 wolf moon kogi pug blue bottle ea. Fashion axe shabby chic Austin quinoa pickled laborum bitters next level, disrupt deep v accusamus non fingerstache.
|
||||
|
||||
@@ -47,4 +47,4 @@ Occupy et selvage squid, pug brunch blog nesciunt hashtag mumblecore skateboard
|
||||
|
||||
Aliquip enim artisan dolor post-ironic. Pug tote bag Marfa, deserunt pour-over Portland wolf eu odio intelligentsia american apparel ugh ea. Sunt viral et, 3 wolf moon gastropub pug id. Id fashion axe est typewriter, mlkshk Portland art party aute brunch. Sint pork belly Cosby sweater, deep v mumblecore kitsch american apparel. Try-hard direct trade tumblr sint skateboard. Adipisicing bitters excepteur biodiesel, pickled gastropub aute veniam.
|
||||
|
||||
[^1]: Texture image courtesty of [Lovetextures](http://www.lovetextures.com/)
|
||||
[^1]: Texture image courtesty of [Lovetextures](http://www.lovetextures.com/)
|
||||
|
||||
@@ -3,7 +3,7 @@ layout: post
|
||||
title: "Sample Link Post"
|
||||
excerpt: "Example and code for using link posts."
|
||||
tags: [sample post, link post]
|
||||
link: http://mademistakes.com
|
||||
link: http://mademistakes.com
|
||||
share: true
|
||||
---
|
||||
|
||||
@@ -11,4 +11,4 @@ This theme supports **link posts**, made famous by John Gruber. To use, just add
|
||||
|
||||
> And this is how a quote looks.
|
||||
|
||||
Some [link](http://www.mademistakes.com) can also be shown.
|
||||
Some [link](http://www.mademistakes.com) can also be shown.
|
||||
|
||||
@@ -3,14 +3,17 @@ layout: post
|
||||
title: Syntax Highlighting Post
|
||||
excerpt: "Demo post displaying the various ways of highlighting code in Markdown."
|
||||
tags: [sample post, code, highlighting]
|
||||
modified: 2014-09-14
|
||||
comments: true
|
||||
---
|
||||
|
||||
[Syntax highlighting](http://en.wikipedia.org/wiki/Syntax_highlighting) is a feature that displays source code, in different colors and fonts according to the category of terms. This feature facilitates writing in a structured language such as a programming language or a markup language as both structures and syntax errors are visually distinct. Highlighting does not affect the meaning of the text itself; it is intended only for human readers.
|
||||
Syntax highlighting is a feature that displays source code, in different colors and fonts according to the category of terms. This feature facilitates writing in a structured language such as a programming language or a markup language as both structures and syntax errors are visually distinct. Highlighting does not affect the meaning of the text itself; it is intended only for human readers.[^1]
|
||||
|
||||
[^1]: <http://en.wikipedia.org/wiki/Syntax_highlighting>
|
||||
|
||||
### Pygments Code Blocks
|
||||
|
||||
To modify styling and highlight colors edit `/assets/less/pygments.less` and compile `main.less` with your favorite preprocessor. Or edit `main.css` if that's your thing, the classes you want to modify all begin with `.highlight`.
|
||||
To modify styling and highlight colors edit `/_sass/_pygments.scss`.
|
||||
|
||||
{% highlight css %}
|
||||
#container {
|
||||
@@ -20,9 +23,7 @@ To modify styling and highlight colors edit `/assets/less/pygments.less` and com
|
||||
}
|
||||
{% endhighlight %}
|
||||
|
||||
Line numbering enabled:
|
||||
|
||||
{% highlight html linenos %}
|
||||
{% highlight html %}
|
||||
{% raw %}
|
||||
<nav class="pagination" role="navigation">
|
||||
{% if page.previous %}
|
||||
@@ -72,7 +73,7 @@ end
|
||||
|
||||
### Fenced Code Blocks
|
||||
|
||||
To modify styling and highlight colors edit `/assets/less/coderay.less` and compile `main.less` with your favorite preprocessor. Or edit `main.css` if that's your thing, the classes you want to modify all begin with `.coderay`. Line numbers and a few other things can be modified in `_config.yml` under `coderay`.
|
||||
To modify styling and highlight colors edit `/_sass/_coderay.scss`. Line numbers and a few other things can be modified in `_config.yml`. Consult [Jekyll's documentation](http://jekyllrb.com/docs/configuration/) for more information.
|
||||
|
||||
~~~ css
|
||||
#container {
|
||||
@@ -117,4 +118,4 @@ end
|
||||
|
||||
An example of a Gist embed below.
|
||||
|
||||
{% gist mmistakes/6589546 %}
|
||||
{% gist mmistakes/6589546 %}
|
||||
|
||||
@@ -7,11 +7,11 @@ excerpt: "A post to test author overrides using a data file."
|
||||
tags: []
|
||||
---
|
||||
|
||||
For those of you who may have content written by multiple authors on your site you can assign different authors to each post if desired.
|
||||
For those of you who may have content written by multiple authors on your site you can now assign different authors to each post if desired.
|
||||
|
||||
Traditionally you would assign a global author for the entire site and those attributes would be used in all post bylines, social networking links in the footer, Twitter Cards, and Google Authorship. These `owner` variables defined in your `config.yml`
|
||||
Previously the theme used a global author for the entire site and those attributes would be used in all bylines, social networking links, Twitter Card attribution, and Google Authorship. These `owner` variables were defined in `config.yml`
|
||||
|
||||
Start by creating an `authors.yml` file in the `_data` folder and add your authors using the following format.
|
||||
Start by modifying or creating a new `authors.yml` file in the `_data` folder and add your authors using the following format.
|
||||
|
||||
{% highlight yaml %}
|
||||
# Authors
|
||||
@@ -21,8 +21,10 @@ billy_rick:
|
||||
web: http://thewhip.com
|
||||
email: billy@rick.com
|
||||
bio: "What do you want, jewels? I am a very extravagant man."
|
||||
avatar: bio-photo.jpg
|
||||
avatar: bio-photo-2.jpg
|
||||
twitter: extravagantman
|
||||
google:
|
||||
plus: BillyRick
|
||||
|
||||
cornelius_fiddlebone:
|
||||
name: Cornelius Fiddlebone
|
||||
@@ -30,10 +32,12 @@ cornelius_fiddlebone:
|
||||
bio: "I ordered what?"
|
||||
avatar: bio-photo.jpg
|
||||
twitter: rhymeswithsackit
|
||||
google:
|
||||
plus: CorneliusFiddlebone
|
||||
{% endhighlight %}
|
||||
|
||||
To assign Billy Rick as an author for our post. We'd add the following YAML front matter to a post:
|
||||
To assign Billy Rick as an author for our post. You'd add the following YAML front matter to a post:
|
||||
|
||||
{% highlight yaml %}
|
||||
author: billy_rick
|
||||
{% endhighlight %}
|
||||
{% endhighlight %}
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
/* ==========================================================================
|
||||
Coderay syntax highlighting
|
||||
========================================================================== */
|
||||
|
||||
.CodeRay {
|
||||
background-color: #efefef;
|
||||
font-family: $code-font;
|
||||
@@ -130,4 +134,4 @@ ol.CodeRay li { white-space: pre }
|
||||
.CodeRay .insert .insert { color: #080; font-weight:bold }
|
||||
.CodeRay .delete .delete { color: #800; font-weight:bold }
|
||||
.CodeRay .change .change { color: #66f; }
|
||||
.CodeRay .head .head { color: #f4f; }
|
||||
.CodeRay .head .head { color: #f4f; }
|
||||
|
||||
@@ -1,26 +1,39 @@
|
||||
hr {
|
||||
display: block;
|
||||
margin: 1em 0;
|
||||
/*
|
||||
Rules
|
||||
========================================================================== */
|
||||
|
||||
hr {
|
||||
display: block;
|
||||
margin: 1em 0;
|
||||
padding: 0;
|
||||
height: 1px;
|
||||
border: 0;
|
||||
height: 1px;
|
||||
border: 0;
|
||||
border-top: 1px solid #ccc;
|
||||
border-bottom: 1px solid #fff;
|
||||
border-bottom: 1px solid #fff;
|
||||
}
|
||||
/* Figures and images ==================================== */
|
||||
|
||||
/*
|
||||
Figures and images
|
||||
========================================================================== */
|
||||
|
||||
figure {
|
||||
margin-bottom: $indent-var;
|
||||
}
|
||||
|
||||
article img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
border-width: 0;
|
||||
vertical-align: middle;
|
||||
-ms-interpolation-mode: bicubic;
|
||||
border-width: 0;
|
||||
vertical-align: middle;
|
||||
-ms-interpolation-mode: bicubic;
|
||||
}
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* 2 images of equal dimensions in a row */
|
||||
|
||||
.half {
|
||||
@include container;
|
||||
@include clearfix;
|
||||
@@ -33,6 +46,9 @@ svg:not(:root) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 3 images of equal dimensions in a row */
|
||||
|
||||
.third {
|
||||
@include container;
|
||||
@include clearfix;
|
||||
@@ -45,17 +61,26 @@ svg:not(:root) {
|
||||
}
|
||||
}
|
||||
}
|
||||
/* Buttons ============================================== */
|
||||
|
||||
/*
|
||||
Buttons
|
||||
========================================================================== */
|
||||
|
||||
/* Default button */
|
||||
|
||||
.btn {
|
||||
display: inline-block;
|
||||
margin-bottom: 20px;
|
||||
padding: 8px 20px;
|
||||
@include font-rem(14);
|
||||
font-family: $heading-font;
|
||||
font-weight: 700;
|
||||
background-color: $primary;
|
||||
color: $white;
|
||||
border-width: 2px !important;
|
||||
border-style: solid !important;
|
||||
border-color: $primary;
|
||||
text-decoration: none !important;
|
||||
@include rounded(3px);
|
||||
&:visited {
|
||||
color: $white;
|
||||
@@ -65,6 +90,9 @@ svg:not(:root) {
|
||||
color: $primary;
|
||||
}
|
||||
}
|
||||
|
||||
/* Success button */
|
||||
|
||||
.btn-success {
|
||||
background-color: $success;
|
||||
color: $white;
|
||||
@@ -77,6 +105,9 @@ svg:not(:root) {
|
||||
color: $success;
|
||||
}
|
||||
}
|
||||
|
||||
/* Warning button */
|
||||
|
||||
.btn-warning {
|
||||
background-color: $warning;
|
||||
color: $white;
|
||||
@@ -89,6 +120,9 @@ svg:not(:root) {
|
||||
color: $warning;
|
||||
}
|
||||
}
|
||||
|
||||
/* Danger button */
|
||||
|
||||
.btn-danger {
|
||||
background-color: $danger;
|
||||
color: $white;
|
||||
@@ -101,6 +135,9 @@ svg:not(:root) {
|
||||
color: $danger;
|
||||
}
|
||||
}
|
||||
|
||||
/* Information button */
|
||||
|
||||
.btn-info {
|
||||
background-color: $info;
|
||||
color: $white;
|
||||
@@ -113,7 +150,11 @@ svg:not(:root) {
|
||||
color: $info;
|
||||
}
|
||||
}
|
||||
/* Well ================================================= */
|
||||
|
||||
/*
|
||||
Wells
|
||||
========================================================================== */
|
||||
|
||||
.well {
|
||||
min-height: 20px;
|
||||
padding: 19px;
|
||||
@@ -122,4 +163,4 @@ svg:not(:root) {
|
||||
border: 1px solid #e3e3e3;
|
||||
@include rounded(4px);
|
||||
@include box-shadow(inset 0 1px 1px rgba(0, 0, 0, 0.05));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,31 +1,35 @@
|
||||
btnform {
|
||||
/* ==========================================================================
|
||||
Forms
|
||||
========================================================================== */
|
||||
|
||||
btnform {
|
||||
margin: 0 0 5px 0;
|
||||
fieldset {
|
||||
margin-bottom: 5px;
|
||||
padding: 0;
|
||||
border-width: 0;
|
||||
fieldset {
|
||||
margin-bottom: 5px;
|
||||
padding: 0;
|
||||
border-width: 0;
|
||||
}
|
||||
legend {
|
||||
legend {
|
||||
display: block;
|
||||
width: 100%;
|
||||
margin-bottom: 5px * 2;
|
||||
*margin-left: -7px;
|
||||
*margin-left: -7px;
|
||||
padding: 0;
|
||||
color: $textcolor;
|
||||
border: 0;
|
||||
border-bottom: 1px solid lighten($black, 80);
|
||||
white-space: normal;
|
||||
white-space: normal;
|
||||
}
|
||||
p {
|
||||
margin-bottom: 5px / 2;
|
||||
margin-bottom: 5px / 2;
|
||||
}
|
||||
ul {
|
||||
list-style-type: none;
|
||||
list-style-type: none;
|
||||
margin: 0 0 5px 0;
|
||||
padding: 0;
|
||||
padding: 0;
|
||||
}
|
||||
br {
|
||||
display: none;
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
label,
|
||||
@@ -33,26 +37,26 @@ input,
|
||||
button,
|
||||
select,
|
||||
textarea {
|
||||
vertical-align: baseline;
|
||||
*vertical-align: middle;
|
||||
vertical-align: baseline;
|
||||
*vertical-align: middle;
|
||||
}
|
||||
input,
|
||||
button,
|
||||
select,
|
||||
textarea {
|
||||
font-family: $base-font;
|
||||
@include box-sizing(border-box);
|
||||
font-family: $base-font;
|
||||
@include box-sizing(border-box);
|
||||
}
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: 10px / 8;
|
||||
font-weight: bold;
|
||||
color: $textcolor;
|
||||
cursor: pointer;
|
||||
cursor: pointer;
|
||||
input,
|
||||
textarea,
|
||||
select {
|
||||
display: block;
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
input,
|
||||
@@ -64,16 +68,16 @@ select {
|
||||
margin-bottom: 5px / 4;
|
||||
background-color: $white;
|
||||
border: 1px solid lighten($black, 80);
|
||||
color: $textcolor;
|
||||
color: $textcolor;
|
||||
&:hover {
|
||||
border-color: lighten($accentcolor, 50);
|
||||
border-color: lighten($accentcolor, 50);
|
||||
}
|
||||
}
|
||||
.input-mini {
|
||||
width: 60px;
|
||||
.input-mini {
|
||||
width: 60px;
|
||||
}
|
||||
.input-small {
|
||||
width: 90px;
|
||||
.input-small {
|
||||
width: 90px;
|
||||
}
|
||||
input[type="image"],
|
||||
input[type="checkbox"],
|
||||
@@ -86,18 +90,18 @@ input[type="radio"] {
|
||||
line-height: normal;
|
||||
cursor: pointer;
|
||||
@include rounded(0);
|
||||
border: 0 \9;
|
||||
border: 0 \9;
|
||||
}
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
input[type="checkbox"],
|
||||
input[type="radio"] {
|
||||
@include box-sizing(border-box);
|
||||
padding: 0;
|
||||
*width: 13px;
|
||||
*height: 13px;
|
||||
padding: 0;
|
||||
*width: 13px;
|
||||
*height: 13px;
|
||||
}
|
||||
input[type="image"] {
|
||||
border: 0;
|
||||
@include box-shadow(none);
|
||||
border: 0;
|
||||
@include box-shadow(none);
|
||||
}
|
||||
input[type="file"] {
|
||||
width: auto;
|
||||
@@ -106,7 +110,7 @@ input[type="file"] {
|
||||
border: initial;
|
||||
background-color: transparent;
|
||||
background-color: initial;
|
||||
@include box-shadow(none);
|
||||
@include box-shadow(none);
|
||||
}
|
||||
input[type="button"],
|
||||
input[type="reset"],
|
||||
@@ -114,11 +118,11 @@ input[type="submit"] {
|
||||
width : auto;
|
||||
height : auto;
|
||||
cursor : pointer;
|
||||
*overflow : visible;
|
||||
*overflow : visible;
|
||||
}
|
||||
select,
|
||||
input[type="file"] {
|
||||
*margin-top : 4px;
|
||||
*margin-top : 4px;
|
||||
}
|
||||
select {
|
||||
width : auto;
|
||||
@@ -126,39 +130,43 @@ select {
|
||||
}
|
||||
select[multiple],
|
||||
select[size] {
|
||||
height : auto;
|
||||
height : auto;
|
||||
}
|
||||
textarea {
|
||||
@include resize(vertical);
|
||||
height : auto;
|
||||
overflow : auto;
|
||||
vertical-align : top;
|
||||
overflow : auto;
|
||||
vertical-align : top;
|
||||
}
|
||||
input[type="hidden"] {
|
||||
display : none;
|
||||
display : none;
|
||||
}
|
||||
.radio,
|
||||
.checkbox {
|
||||
padding-left : 18px;
|
||||
font-weight : normal;
|
||||
padding-left : 18px;
|
||||
font-weight : normal;
|
||||
}
|
||||
.radio input[type="radio"],
|
||||
.checkbox input[type="checkbox"] {
|
||||
float : left;
|
||||
margin-left : -18px;
|
||||
margin-left : -18px;
|
||||
}
|
||||
.radio.inline,
|
||||
.checkbox.inline {
|
||||
display : inline-block;
|
||||
padding-top : 5px;
|
||||
margin-bottom : 0;
|
||||
vertical-align : middle;
|
||||
vertical-align : middle;
|
||||
}
|
||||
.radio.inline + .radio.inline,
|
||||
.checkbox.inline + .checkbox.inline {
|
||||
margin-left : 10px;
|
||||
margin-left : 10px;
|
||||
}
|
||||
/* disabled ==================================== */
|
||||
|
||||
/*
|
||||
Disabled state
|
||||
========================================================================== */
|
||||
|
||||
input[disabled],
|
||||
select[disabled],
|
||||
textarea[disabled],
|
||||
@@ -166,70 +174,86 @@ input[readonly],
|
||||
select[readonly],
|
||||
textarea[readonly] {
|
||||
@include opacity(.5);
|
||||
cursor : not-allowed;
|
||||
cursor : not-allowed;
|
||||
}
|
||||
/* focus and active ============================ */
|
||||
|
||||
/*
|
||||
Focus & active state
|
||||
========================================================================== */
|
||||
|
||||
input:focus,
|
||||
textarea:focus {
|
||||
border-color : $accentcolor;
|
||||
outline : 0;
|
||||
outline : thin dotted \9;
|
||||
outline : thin dotted \9;
|
||||
}
|
||||
input[type="file"]:focus,
|
||||
input[type="radio"]:focus,
|
||||
input[type="checkbox"]:focus,
|
||||
select:focus {
|
||||
@include box-shadow(none);
|
||||
@include box-shadow(none);
|
||||
}
|
||||
/* help text ==================================== */
|
||||
|
||||
/*
|
||||
Help text
|
||||
========================================================================== */
|
||||
|
||||
.help-block,
|
||||
.help-inline {
|
||||
color : lighten($black, 50);
|
||||
color : lighten($black, 50);
|
||||
}
|
||||
.help-block {
|
||||
display : block;
|
||||
margin-bottom : 1em;
|
||||
display : block;
|
||||
margin-bottom : 1em;
|
||||
line-height : 1em;
|
||||
}
|
||||
.help-inline {
|
||||
display : inline-block;
|
||||
vertical-align : middle;
|
||||
padding-left : 5px;
|
||||
padding-left : 5px;
|
||||
}
|
||||
/* .form-inline ================================= */
|
||||
|
||||
/*
|
||||
.form-inline
|
||||
========================================================================== */
|
||||
|
||||
.form-inline input,
|
||||
.form-inline textarea,
|
||||
.form-inline select {
|
||||
display : inline-block;
|
||||
margin-bottom : 0;
|
||||
margin-bottom : 0;
|
||||
}
|
||||
.form-inline label {
|
||||
display : inline-block;
|
||||
display : inline-block;
|
||||
}
|
||||
.form-inline .radio,
|
||||
.form-inline .checkbox,
|
||||
.form-inline .radio {
|
||||
padding-left : 0;
|
||||
margin-bottom : 0;
|
||||
vertical-align : middle;
|
||||
vertical-align : middle;
|
||||
}
|
||||
.form-inline .radio input[type="radio"],
|
||||
.form-inline .checkbox input[type="checkbox"] {
|
||||
float : left;
|
||||
margin-left : 0;
|
||||
margin-right : 3px; }
|
||||
/* .form-search ================================= */
|
||||
|
||||
/*
|
||||
.form-search
|
||||
========================================================================== */
|
||||
|
||||
.form-search input,
|
||||
.form-search textarea,
|
||||
.form-search select {
|
||||
display : inline-block;
|
||||
margin-bottom : 0;
|
||||
margin-bottom : 0;
|
||||
}
|
||||
.form-search .search-query {
|
||||
padding-left : 14px;
|
||||
padding-right : 14px;
|
||||
margin-bottom : 0;
|
||||
@include rounded(14px);
|
||||
margin-bottom : 0;
|
||||
@include rounded(14px);
|
||||
}
|
||||
.form-search label {
|
||||
display : inline-block;
|
||||
@@ -246,4 +270,4 @@ select:focus {
|
||||
float : left;
|
||||
margin-left : 0;
|
||||
margin-right : 3px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
// Defining number of columns in the grid.
|
||||
// Common Values would be 12, 16 or 24
|
||||
/* ==========================================================================
|
||||
Grid mixins
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
Define number of columns in the grid
|
||||
Common values would be 12, 16 or 24
|
||||
========================================================================== */
|
||||
|
||||
$width: 100%;
|
||||
$def_grid: 12;
|
||||
$margin: 0;
|
||||
@@ -8,40 +15,70 @@ $margin: 0;
|
||||
margin:0 auto;
|
||||
width:$width;
|
||||
}
|
||||
|
||||
// Works out the width of elements based
|
||||
// on total number of columns and width
|
||||
// number of columns being displayed.
|
||||
// Removes 20px for margins
|
||||
|
||||
/*
|
||||
Works out the width of elements based on total number of columns and width
|
||||
number of columns being displayed. Removes 20px for margins.
|
||||
========================================================================== */
|
||||
|
||||
@mixin grid($grid:$def_grid,$cols:'',$float:left,$display:inline){
|
||||
display:$display;
|
||||
float:$float;
|
||||
width:(100%/$grid * $cols) - ($margin * 2);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Add x amount of column padding before an element
|
||||
Example: @include prefix(1,12);
|
||||
========================================================================== */
|
||||
|
||||
// Allows for padding before element
|
||||
@mixin prefix($grid:$def_grid,$cols:''){
|
||||
margin-left:(100%/$grid * $cols);
|
||||
}
|
||||
// Allows for padding after element
|
||||
@mixin suffix($grid:$def_grid,$cols:''){
|
||||
margin-right:(100%/$grid * $cols);
|
||||
|
||||
/*
|
||||
Add x amount of column padding after an element
|
||||
Example: @include suffix(2,12);
|
||||
========================================================================== */
|
||||
|
||||
@mixin suffix($grid:$def_grid,$cols:''){
|
||||
margin-right:(100%/$grid * $cols);
|
||||
}
|
||||
// Removes left margin
|
||||
|
||||
/*
|
||||
Remove left margin
|
||||
Example: @include first;
|
||||
========================================================================== */
|
||||
|
||||
@mixin first(){
|
||||
margin-left:0;
|
||||
}
|
||||
// Removes right margin
|
||||
|
||||
/*
|
||||
Remove right margin
|
||||
Example: @include last;
|
||||
========================================================================== */
|
||||
|
||||
@mixin last(){
|
||||
margin-right:0;
|
||||
}
|
||||
|
||||
/*
|
||||
Push an element x amount of column(s) to the right
|
||||
Example: @include push(2,12);
|
||||
========================================================================== */
|
||||
|
||||
@mixin push($grid:$def_grid,$move:'') {
|
||||
position:relative;
|
||||
left:(100%/$grid * $move);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Pull an element x amount of column(s) to the left
|
||||
Example: @include pull(1,12);
|
||||
========================================================================== */
|
||||
|
||||
@mixin pull($grid:$def_grid,$move:''){
|
||||
position:relative;
|
||||
left:(100%/$grid * $move) * -1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,17 +1,20 @@
|
||||
// UTILITY MIXINS
|
||||
// --------------------------------------------------
|
||||
/* ==========================================================================
|
||||
Utility mixins
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
Clearfix
|
||||
For clearing floats like a boss h5bp.com/q
|
||||
========================================================================== */
|
||||
|
||||
// Clearfix
|
||||
// --------------------
|
||||
// For clearing floats like a boss h5bp.com/q
|
||||
@mixin clearfix {
|
||||
*zoom: 1;
|
||||
&:before,
|
||||
&:after {
|
||||
display: table;
|
||||
content: "";
|
||||
// Fixes Opera/contenteditable bug:
|
||||
// http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952
|
||||
/* Fixes Opera/contenteditable bug: */
|
||||
/* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
|
||||
line-height: 0;
|
||||
}
|
||||
&:after {
|
||||
@@ -19,29 +22,38 @@
|
||||
}
|
||||
}
|
||||
|
||||
// Webkit-style focus
|
||||
// --------------------
|
||||
/*
|
||||
Webkit-style focus
|
||||
========================================================================== */
|
||||
|
||||
@mixin tab-focus() {
|
||||
// Default
|
||||
/* Default */
|
||||
outline: thin dotted #333;
|
||||
// Webkit
|
||||
/* Webkit */
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
||||
// Center-align a block level element
|
||||
// ----------------------------------
|
||||
/*
|
||||
Center-align a block level element
|
||||
========================================================================== */
|
||||
|
||||
@mixin center-block() {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
// TYPOGRAPHY
|
||||
// --------------------------------------------------
|
||||
/* ==========================================================================
|
||||
Typography related mixins
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
Maintains vertical rhythm by setting a font-sizes proportional to
|
||||
line-height and bottom margin
|
||||
example: @font-size(16);
|
||||
========================================================================== */
|
||||
|
||||
// Full-fat vertical rhythm
|
||||
// ------------------------
|
||||
@mixin font-size($size) {
|
||||
font-size: 0px + $size;
|
||||
font-size: 0rem + $size / $doc-font-size;
|
||||
@@ -50,153 +62,225 @@
|
||||
margin-bottom: 0rem + ($doc-line-height / $doc-font-size);
|
||||
}
|
||||
|
||||
// Just the REMs
|
||||
// -------------
|
||||
/*
|
||||
Just font-size (REMs + pixel fallback)
|
||||
example: @include font-rem(16);
|
||||
========================================================================== */
|
||||
|
||||
@mixin font-rem($size) {
|
||||
font-size: 0px + $size;
|
||||
font-size: 0rem + $size / $doc-font-size;
|
||||
}
|
||||
|
||||
// Just font-size and line-height
|
||||
// ------------------------------
|
||||
/*
|
||||
Just font-size (REMs + pixel fallback) and line-height
|
||||
@include font(16);
|
||||
========================================================================== */
|
||||
|
||||
@mixin font($size) {
|
||||
font-size: 0px + $size;
|
||||
font-size: 0rem + $size / $doc-font-size;
|
||||
line-height: 0 + round($doc-line-height / $size*10000) / 10000;
|
||||
}
|
||||
|
||||
/*
|
||||
Hide text overflow and end with ...
|
||||
========================================================================== */
|
||||
|
||||
@mixin text-overflow() {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap; }
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/* Indentation variable */
|
||||
|
||||
$indent-var: 0rem + ($doc-line-height / $doc-font-size);
|
||||
|
||||
// GRADIENTS
|
||||
// --------------------------------------------------
|
||||
/* ==========================================================================
|
||||
Gradient mixins
|
||||
========================================================================== */
|
||||
|
||||
@mixin horizontal($startColor : $white, $endColor : $lightergrey) {
|
||||
background-color: $endColor;
|
||||
background-image : -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
||||
background-image : -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image : -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(left, $startColor, $endColor); // IE10
|
||||
background-image : -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
|
||||
background-image : linear-gradient(left, $startColor, $endColor); // W3C
|
||||
background-repeat : repeat-x; }
|
||||
background-color: $endColor;
|
||||
background-image : -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
||||
background-image : -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image : -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(left, $startColor, $endColor); // IE10
|
||||
background-image : -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
|
||||
background-image : linear-gradient(left, $startColor, $endColor); // W3C
|
||||
background-repeat : repeat-x;
|
||||
}
|
||||
|
||||
@mixin vertical($startColor : $white, $endColor: $lightergrey) {
|
||||
background-image : -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
||||
background-image : -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||
background-color : $endColor;
|
||||
background-image : -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(top, $startColor, $endColor); // IE10
|
||||
background-image : -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
|
||||
background-image : linear-gradient(top, $startColor, $endColor); // W3C
|
||||
background-repeat : repeat-x; }
|
||||
background-image : -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
||||
background-image : -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||
background-color : $endColor;
|
||||
background-image : -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(top, $startColor, $endColor); // IE10
|
||||
background-image : -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
|
||||
background-image : linear-gradient(top, $startColor, $endColor); // W3C
|
||||
background-repeat : repeat-x;
|
||||
}
|
||||
|
||||
@mixin directional($startColor : $white, $endColor : $lightergrey, $deg : 45deg) {
|
||||
background-color : $endColor;
|
||||
background-image : -moz-linear-gradient($deg, $startColor, $endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient($deg, $startColor, $endColor); // IE10
|
||||
background-image : -webkit-linear-gradient($deg, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image : -o-linear-gradient($deg, $startColor, $endColor); // Opera 11.10
|
||||
background-image : linear-gradient($deg, $startColor, $endColor); // W3C
|
||||
background-repeat : repeat-x; }
|
||||
background-color : $endColor;
|
||||
background-image : -moz-linear-gradient($deg, $startColor, $endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient($deg, $startColor, $endColor); // IE10
|
||||
background-image : -webkit-linear-gradient($deg, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image : -o-linear-gradient($deg, $startColor, $endColor); // Opera 11.10
|
||||
background-image : linear-gradient($deg, $startColor, $endColor); // W3C
|
||||
background-repeat : repeat-x;
|
||||
}
|
||||
|
||||
// .bordered(COLOR, COLOR, COLOR, COLOR);
|
||||
@mixin bordered($top-color: #eee, $right-color: #eee, $bottom-color: #eee, $left-color: #eee) {
|
||||
border-top : solid 1px $top-color;
|
||||
border-left : solid 1px $left-color;
|
||||
border-right : solid 1px $right-color;
|
||||
border-bottom : solid 1px $bottom-color; }
|
||||
border-top : solid 1px $top-color;
|
||||
border-left : solid 1px $left-color;
|
||||
border-right : solid 1px $right-color;
|
||||
border-bottom : solid 1px $bottom-color;
|
||||
}
|
||||
|
||||
// ROUND CORNERS
|
||||
// --------------------------------------------------
|
||||
/* ==========================================================================
|
||||
Rounded corners
|
||||
========================================================================== */
|
||||
|
||||
|
||||
|
||||
/*
|
||||
Round all corners
|
||||
example: @include rounded(4px);
|
||||
========================================================================== */
|
||||
|
||||
// .rounded(VALUE);
|
||||
@mixin rounded($radius:4px) {
|
||||
border-radius : $radius; }
|
||||
border-radius : $radius;
|
||||
}
|
||||
|
||||
/*
|
||||
Round individual corners (top right, bottom right, bottom left, top left)
|
||||
example: @include border-radius(4px, 0, 0, 4px);
|
||||
========================================================================== */
|
||||
|
||||
// .border-radius(VALUE,VALUE,VALUE,VALUE);
|
||||
@mixin border-radius($topright: 0, $bottomright: 0, $bottomleft: 0, $topleft: 0) {
|
||||
border-top-right-radius : $topright;
|
||||
border-bottom-right-radius : $bottomright;
|
||||
border-bottom-left-radius : $bottomleft;
|
||||
border-top-left-radius : $topleft;
|
||||
-webkit-background-clip : padding-box;
|
||||
-moz-background-clip : padding;
|
||||
background-clip : padding-box; }
|
||||
border-top-right-radius: $topright;
|
||||
border-bottom-right-radius: $bottomright;
|
||||
border-bottom-left-radius: $bottomleft;
|
||||
border-top-left-radius: $topleft;
|
||||
-webkit-background-clip: padding-box;
|
||||
-moz-background-clip: padding;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
|
||||
/*
|
||||
Box shadow
|
||||
example: @include box-shadow(HORIZONTAL VERTICAL BLUR COLOR));
|
||||
========================================================================== */
|
||||
|
||||
// .box-shadow(HORIZONTAL VERTICAL BLUR COLOR))
|
||||
@mixin box-shadow($shadow: 0 1px 3px rgba(0,0,0,.25)) {
|
||||
-webkit-box-shadow : $shadow;
|
||||
-moz-box-shadow : $shadow;
|
||||
box-shadow : $shadow; }
|
||||
-webkit-box-shadow: $shadow;
|
||||
-moz-box-shadow: $shadow;
|
||||
box-shadow: $shadow;
|
||||
}
|
||||
|
||||
/*
|
||||
Drop shadow
|
||||
example: @include drop-shadow(HORIZONTAL, VERTICAL, BLUR, ALPHA);
|
||||
========================================================================== */
|
||||
|
||||
// .drop-shadow(HORIZONTAL, VERTICAL, BLUR, ALPHA);
|
||||
@mixin drop-shadow($x-axis: 0, $y-axis: 1px, $blur: 2px, $alpha: 0.1) {
|
||||
-webkit-box-shadow : $x-axis $y-axis $blur rgba(0, 0, 0, $alpha);
|
||||
-moz-box-shadow : $x-axis $y-axis $blur rgba(0, 0, 0, $alpha);
|
||||
box-shadow : $x-axis $y-axis $blur rgba(0, 0, 0, $alpha); }
|
||||
-webkit-box-shadow: $x-axis $y-axis $blur rgba(0, 0, 0, $alpha);
|
||||
-moz-box-shadow: $x-axis $y-axis $blur rgba(0, 0, 0, $alpha);
|
||||
box-shadow: $x-axis $y-axis $blur rgba(0, 0, 0, $alpha);
|
||||
}
|
||||
|
||||
/*
|
||||
Text shadow
|
||||
example: @include text-shadow(0 2px 3px rgba(0,0,0,.25));
|
||||
========================================================================== */
|
||||
|
||||
// .text-shadow();
|
||||
@mixin text-shadow($shadow: 0 2px 3px rgba(0,0,0,.25)) {
|
||||
text-shadow : $shadow; }
|
||||
text-shadow: $shadow; }
|
||||
|
||||
// .opacity(VALUE);
|
||||
@mixin opacity($opacity : .5) {
|
||||
opacity : $opacity; }
|
||||
/*
|
||||
Opacity
|
||||
example: @include opacity(0.5); // 50% opacity
|
||||
========================================================================== */
|
||||
|
||||
// TRANSFORMATIONS
|
||||
// --------------------------------------------------
|
||||
@mixin opacity($opacity: 0.5) {
|
||||
opacity: $opacity;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Transformations
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
@include rotate(VALUEdeg);
|
||||
========================================================================== */
|
||||
|
||||
// .rotate(VALUEdeg);
|
||||
@mixin rotate($deg) {
|
||||
-webkit-transform : rotate($deg);
|
||||
-moz-transform : rotate($deg);
|
||||
-ms-transform : rotate($deg);
|
||||
-o-transform : rotate($deg);
|
||||
transform : rotate($deg); }
|
||||
-webkit-transform: rotate($deg);
|
||||
-moz-transform: rotate($deg);
|
||||
-ms-transform: rotate($deg);
|
||||
-o-transform: rotate($deg);
|
||||
transform: rotate($deg);
|
||||
}
|
||||
|
||||
/*
|
||||
@include scale(VALUE);
|
||||
========================================================================== */
|
||||
|
||||
// .scale(VALUE);
|
||||
@mixin scale($ratio) {
|
||||
-webkit-transform : scale($ratio);
|
||||
-moz-transform : scale($ratio);
|
||||
-ms-transform : scale($ratio);
|
||||
-o-transform : scale($ratio);
|
||||
transform : scale($ratio); }
|
||||
-webkit-transform: scale($ratio);
|
||||
-moz-transform: scale($ratio);
|
||||
-ms-transform: scale($ratio);
|
||||
-o-transform: scale($ratio);
|
||||
transform: scale($ratio);
|
||||
}
|
||||
|
||||
/*
|
||||
@include skew(VALUE, VALUE);
|
||||
========================================================================== */
|
||||
|
||||
// .skew(VALUE, VALUE);
|
||||
@mixin skew($x: 0, $y: 0) {
|
||||
-webkit-transform : skew($x, $y);
|
||||
-moz-transform : skew($x, $y);
|
||||
-ms-transform : skew($x, $y);
|
||||
-o-transform : skew($x, $y);
|
||||
transform : skew($x, $y); }
|
||||
-webkit-transform: skew($x, $y);
|
||||
-moz-transform: skew($x, $y);
|
||||
-ms-transform: skew($x, $y);
|
||||
-o-transform: skew($x, $y);
|
||||
transform: skew($x, $y);
|
||||
}
|
||||
|
||||
/*
|
||||
@include transition(PROPERTY DURATION DELAY(OPTIONAL) TIMING-FINCTION);
|
||||
========================================================================== */
|
||||
|
||||
// .transition(PROPERTY DURATION DELAY(OPTIONAL) TIMING-FINCTION);
|
||||
@mixin transition($transition) {
|
||||
-webkit-transition : $transition;
|
||||
-moz-transition : $transition;
|
||||
-ms-transition : $transition;
|
||||
-o-transition : $transition;
|
||||
transition : $transition; }
|
||||
-webkit-transition: $transition;
|
||||
-moz-transition: $transition;
|
||||
-ms-transition: $transition;
|
||||
-o-transition: $transition;
|
||||
transition: $transition;
|
||||
}
|
||||
|
||||
/*
|
||||
@include translate(VALUE, VALUE);
|
||||
========================================================================== */
|
||||
|
||||
// .translate(VALUE, VALUE)
|
||||
@mixin translate($x: 0, $y: 0) {
|
||||
-webkit-transform : translate($x, $y);
|
||||
-moz-transform : translate($x, $y);
|
||||
-ms-transform : translate($x, $y);
|
||||
-o-transform : translate($x, $y);
|
||||
transform : translate($x, $y); }
|
||||
-webkit-transform: translate($x, $y);
|
||||
-moz-transform: translate($x, $y);
|
||||
-ms-transform: translate($x, $y);
|
||||
-o-transform: translate($x, $y);
|
||||
transform: translate($x, $y);
|
||||
}
|
||||
|
||||
@mixin translate3d($x: 0, $y: 0, $z: 0) {
|
||||
-webkit-transform : translate($x, $y, $z);
|
||||
-moz-transform : translate($x, $y, $z);
|
||||
-ms-transform : translate($x, $y, $z);
|
||||
-o-transform : translate($x, $y, $z);
|
||||
transform : translate($x, $y, $z); }
|
||||
-webkit-transform: translate($x, $y, $z);
|
||||
-moz-transform: translate($x, $y, $z);
|
||||
-ms-transform: translate($x, $y, $z);
|
||||
-o-transform: translate($x, $y, $z);
|
||||
transform: translate($x, $y, $z);
|
||||
}
|
||||
|
||||
@mixin animation($name, $duration: 300ms, $delay: 0, $ease: ease) {
|
||||
-webkit-animation: $name $duration $delay $ease;
|
||||
@@ -204,68 +288,89 @@ transform : translate($x, $y, $z); }
|
||||
-ms-animation: $name $duration $delay $ease;
|
||||
}
|
||||
|
||||
// BACKGROUND
|
||||
// --------------------------------------------------
|
||||
/* ==========================================================================
|
||||
Background
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
@include background-alpha(VALUE VALUE);
|
||||
========================================================================== */
|
||||
|
||||
// .background-alpha(VALUE VALUE);
|
||||
@mixin background-alpha($color: $white, $alpha: 1) {
|
||||
background-color : hsla(hue($color), saturation($color), lightness($color), $alpha); }
|
||||
background-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
|
||||
}
|
||||
|
||||
/*
|
||||
@include background-size(VALUE VALUE);
|
||||
========================================================================== */
|
||||
|
||||
// .background-size(VALUE VALUE);
|
||||
@mixin background-size($size){
|
||||
-webkit-background-size : $size;
|
||||
-moz-background-size : $size;
|
||||
-o-background-size : $size;
|
||||
background-size : $size; }
|
||||
-webkit-background-size: $size;
|
||||
-moz-background-size: $size;
|
||||
-o-background-size: $size;
|
||||
background-size: $size;
|
||||
}
|
||||
|
||||
// .background-clip(VALUE); (border-box, padding-box, content-box)
|
||||
@mixin background-clip($clip) {
|
||||
-webkit-background-clip : $clip;
|
||||
-moz-background-clip : $clip;
|
||||
background-clip : $clip; }
|
||||
/*
|
||||
Box-sizing
|
||||
example: @include box-sizing(VALUE); //(border-box, padding-box, content-box)
|
||||
========================================================================== */
|
||||
|
||||
// .box-sizing(VALUE); (border-box, padding-box, content-box)
|
||||
@mixin box-sizing($boxsize: border-box) {
|
||||
-webkit-box-sizing : $boxsize;
|
||||
-moz-box-sizing : $boxsize;
|
||||
-ms-box-sizing : $boxsize;
|
||||
box-sizing : $boxsize; }
|
||||
-webkit-box-sizing: $boxsize;
|
||||
-moz-box-sizing: $boxsize;
|
||||
-ms-box-sizing: $boxsize;
|
||||
box-sizing: $boxsize;
|
||||
}
|
||||
|
||||
/* ==========================================================================
|
||||
Image replacement
|
||||
========================================================================== */
|
||||
|
||||
// For image replacement
|
||||
@mixin hide-text() {
|
||||
text-indent : 100%;
|
||||
white-space : nowrap;
|
||||
overflow : hidden; }
|
||||
text-indent: 100%;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/*
|
||||
Hide from visual and speaking browsers
|
||||
========================================================================== */
|
||||
|
||||
// Hide from visual and speaking browsers
|
||||
@mixin hidden {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
// Hide but maintain layout
|
||||
@mixin invisible() {
|
||||
visibility : hidden; }
|
||||
/*
|
||||
Hide but maintain layout
|
||||
========================================================================== */
|
||||
|
||||
@mixin invisible() {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
/*
|
||||
Resize
|
||||
example: @include resize(VALUE); //(none, both, horizontal, vertical, inherit)
|
||||
|
||||
========================================================================== */
|
||||
|
||||
// .resize(VALUE) (none, both, horizontal, vertical, inherit)
|
||||
@mixin resize($direction: both) {
|
||||
resize : $direction;
|
||||
overflow : auto; }
|
||||
resize: $direction;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
// .userselect(VALUE) (all, element, none, text)
|
||||
@mixin user-select($select) {
|
||||
-webkit-user-select : $select;
|
||||
-moz-user-select : $select;
|
||||
-o-user-select : $select;
|
||||
user-select : $select; }
|
||||
/*
|
||||
Hidden but available to speaking browsers
|
||||
========================================================================== */
|
||||
|
||||
// Hidden but available to speaking browsers
|
||||
@mixin visuallyhidden() {
|
||||
overflow : hidden;
|
||||
position : absolute;
|
||||
clip : rect(0 0 0 0);
|
||||
height : 1px;
|
||||
width : 1px;
|
||||
margin : -1px;
|
||||
padding : 0;
|
||||
border : 0; }
|
||||
@mixin visuallyhidden() {
|
||||
overflow: hidden;
|
||||
position: absolute;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
margin: -1px;
|
||||
padding: 0;
|
||||
border: 0; }
|
||||
|
||||
@@ -1,16 +1,27 @@
|
||||
/* ==========================================================================
|
||||
Page layout
|
||||
========================================================================== */
|
||||
|
||||
body {
|
||||
background-color: $bodycolor;
|
||||
font-family: $base-font;
|
||||
color: $text-color;
|
||||
}
|
||||
|
||||
/*
|
||||
Header
|
||||
========================================================================== */
|
||||
|
||||
.navigation-wrapper {
|
||||
@include container;
|
||||
padding: 2em 0 0;
|
||||
padding: 2em 0 1em;
|
||||
font-family: $heading-font;
|
||||
font-weight: 700;
|
||||
text-transform: uppercase;
|
||||
@include clearfix;
|
||||
}
|
||||
|
||||
/* Site name */
|
||||
.site-name {
|
||||
@include grid(12,10);
|
||||
@include prefix(12,1);
|
||||
@@ -30,6 +41,8 @@ body {
|
||||
@include prefix(12,2);
|
||||
}
|
||||
}
|
||||
|
||||
/* Top navigation links */
|
||||
.top-navigation {
|
||||
@include grid(12,10);
|
||||
@include prefix(12,1);
|
||||
@@ -66,7 +79,7 @@ body {
|
||||
white-space: nowrap;
|
||||
border-bottom: 0 solid transparent;
|
||||
}
|
||||
a {
|
||||
a {
|
||||
display: block;
|
||||
padding: 10px 0;
|
||||
decoration: none;
|
||||
@@ -79,7 +92,8 @@ body {
|
||||
}
|
||||
}
|
||||
}
|
||||
// Navicon lines
|
||||
|
||||
/* Animated lines for mobile nav button */
|
||||
$button-size: 1.5rem;
|
||||
@mixin navicon-line() {
|
||||
display: inline-block;
|
||||
@@ -151,11 +165,11 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
// Style the toggle menu link and hide it
|
||||
.nav .navtoogle {
|
||||
.nav .navtoggle {
|
||||
@include font-rem(18);
|
||||
font-weight: normal;
|
||||
background-color: $black;
|
||||
color: $white;
|
||||
color: $white;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
@media #{$small} {
|
||||
@@ -166,7 +180,7 @@ $button-size: 1.5rem;
|
||||
border: none;
|
||||
background: none;
|
||||
}
|
||||
.navtoogle i {
|
||||
.navtoggle i {
|
||||
z-index:-1;
|
||||
}
|
||||
.icon-menu {
|
||||
@@ -192,7 +206,7 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
// Displaying the menu when the user has clicked on the button
|
||||
.js .nav .active + ul {
|
||||
.js .nav .active + ul {
|
||||
max-height: 30em;
|
||||
overflow: hidden;
|
||||
-webkit-transition: max-height .4s;
|
||||
@@ -201,13 +215,19 @@ $button-size: 1.5rem;
|
||||
-ms-transition: max-height .4s;
|
||||
transition: max-height .4s;
|
||||
}
|
||||
|
||||
/* Main content */
|
||||
#main {
|
||||
counter-reset: captions;
|
||||
@include container;
|
||||
@include clearfix;
|
||||
clear: both;
|
||||
margin-top: 1em;
|
||||
article {
|
||||
margin-top: 2em;
|
||||
h1 {
|
||||
margin-top: 0;
|
||||
}
|
||||
.post,
|
||||
.page {
|
||||
@include container;
|
||||
@include grid(12,10);
|
||||
@include prefix(12,1);
|
||||
@@ -223,6 +243,8 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Index listing specific styling */
|
||||
#index {
|
||||
@include container;
|
||||
@include grid(12,10);
|
||||
@@ -260,22 +282,28 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Large feature header image */
|
||||
.image-wrap {
|
||||
position: relative;
|
||||
margin-bottom: 2em;
|
||||
@include clearfix;
|
||||
&:after {
|
||||
content: " ";
|
||||
display: block;
|
||||
position: absolute;
|
||||
bottom: -1px;
|
||||
bottom: 0;
|
||||
left: 8%;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 20px solid transparent;
|
||||
border: 10px solid transparent;
|
||||
border-bottom-color: $bodycolor;
|
||||
@media #{$small} {
|
||||
left: 25%;
|
||||
}
|
||||
@media #{$large} {
|
||||
border-width: 20px;
|
||||
}
|
||||
@media #{$x-large} {
|
||||
left: 33.333333333%;
|
||||
}
|
||||
@@ -302,6 +330,8 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Post byline */
|
||||
.byline {
|
||||
clear: both;
|
||||
font-size: 80%;
|
||||
@@ -319,6 +349,8 @@ $button-size: 1.5rem;
|
||||
border-bottom: 0 solid transparent;
|
||||
}
|
||||
}
|
||||
|
||||
/* Default social media links in author sidebar */
|
||||
.author-social {
|
||||
display: block;
|
||||
margin-bottom: 5px;
|
||||
@@ -337,6 +369,8 @@ $button-size: 1.5rem;
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Author sidebar */
|
||||
.article-author-side {
|
||||
display: none;
|
||||
.bio-photo {
|
||||
@@ -378,6 +412,8 @@ $button-size: 1.5rem;
|
||||
@include prefix(12,2);
|
||||
}
|
||||
}
|
||||
|
||||
/* Author module - mobile only */
|
||||
.article-author-bottom {
|
||||
margin-bottom: 1em;
|
||||
@media #{$small} {
|
||||
@@ -402,24 +438,20 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Post content wrapper */
|
||||
.article-wrap {
|
||||
// Dotted line underlines for links
|
||||
p > a,
|
||||
li > a {
|
||||
border-bottom: 1px dotted lighten($link-color, 50);
|
||||
&:hover {
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
}
|
||||
p > a.reversefootnote,
|
||||
li > a.reversefootnote {
|
||||
border-bottom-width: 0;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
/* Table of contents */
|
||||
.toc {
|
||||
display: none;
|
||||
font-size: 95%;
|
||||
@media #{$small} {
|
||||
@media #{$large} {
|
||||
display: block;
|
||||
@include grid(12,2);
|
||||
@include prefix(12,0.5);
|
||||
@@ -460,7 +492,7 @@ $button-size: 1.5rem;
|
||||
padding: 10px;
|
||||
display: block;
|
||||
color: $white;
|
||||
border-bottom-width: 0;
|
||||
text-decoration: none;
|
||||
background: lighten($black, 30);
|
||||
@include opacity(0.7);
|
||||
@include transition(opacity 0.2s ease-in-out);
|
||||
@@ -470,9 +502,23 @@ $button-size: 1.5rem;
|
||||
}
|
||||
ul {
|
||||
margin: 1px 0 0;
|
||||
li a {
|
||||
padding-left: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* TOC trigger for collapsing */
|
||||
#drawer {
|
||||
max-height: 100%;
|
||||
overflow: hidden;
|
||||
&.js-hidden {
|
||||
max-height: 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* Image grid - not used */
|
||||
.image-grid {
|
||||
@include clearfix;
|
||||
list-style: none;
|
||||
@@ -494,13 +540,15 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Recent grid - not used */
|
||||
.recent-grid {
|
||||
@include clearfix;
|
||||
list-style: none;
|
||||
margin: 1em 0;
|
||||
li {
|
||||
display: inline;
|
||||
a {
|
||||
a {
|
||||
border-bottom: 0 solid transparent;
|
||||
&:hover {
|
||||
border-bottom: 0 solid transparent;
|
||||
@@ -512,37 +560,68 @@ $button-size: 1.5rem;
|
||||
margin-bottom: 1%;
|
||||
}
|
||||
}
|
||||
.holder {
|
||||
font-family: $heading-font;
|
||||
a {
|
||||
cursor: pointer;
|
||||
margin: 0 5px;
|
||||
}
|
||||
a.jp-previous {
|
||||
margin-left: 0;
|
||||
margin-right: 15px;
|
||||
}
|
||||
a.jp-next {
|
||||
margin-left: 15px;
|
||||
margin-right: 0;
|
||||
}
|
||||
a.jp-current {
|
||||
font-weight: bold;
|
||||
}
|
||||
a.jp-disabled,
|
||||
a.jp-disabled:hover {
|
||||
}
|
||||
a.jp-current,
|
||||
a.jp-current:hover,
|
||||
a.jp-disabled,
|
||||
a.jp-disabled:hover {
|
||||
cursor: default;
|
||||
background: none;
|
||||
|
||||
/* Social sharing links */
|
||||
/* Social media brand buttons */
|
||||
.social-share {
|
||||
margin-bottom: 0px + $doc-line-height;
|
||||
margin-bottom: 0rem + ($doc-line-height / $doc-font-size);
|
||||
ul, li {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
li {
|
||||
display: inline-block;
|
||||
}
|
||||
$social:
|
||||
(facebook, $facebook-color),
|
||||
(flickr, $flickr-color),
|
||||
(foursquare, $foursquare-color),
|
||||
(google-plus, $google-plus-color),
|
||||
(instagram, $instagram-color),
|
||||
(linkedin, $linkedin-color),
|
||||
(pinterest, $pinterest-color),
|
||||
(rss, $rss-color),
|
||||
(tumblr, $tumblr-color),
|
||||
(twitter, $twitter-color),
|
||||
(vimeo, $vimeo-color),
|
||||
(youtube, $youtube-color);
|
||||
@each $socialnetwork, $color in $social {
|
||||
.#{$socialnetwork} {
|
||||
background: $color;
|
||||
}
|
||||
}
|
||||
a {
|
||||
display: block;
|
||||
padding: 8px 20px;
|
||||
text-decoration: none !important;
|
||||
text-transform: uppercase;
|
||||
@include font-rem(14);
|
||||
font-family: $heading-font;
|
||||
font-weight: 700;
|
||||
color: $white;
|
||||
opacity: 0.8;
|
||||
&:hover {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
span {
|
||||
margin: 0 5px;
|
||||
display: none;
|
||||
@media #{$medium} {
|
||||
display: inline;
|
||||
padding-left: 5px;
|
||||
}
|
||||
}
|
||||
h4 {
|
||||
@include font-rem(14);
|
||||
margin-bottom: 10px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Footer wrapper */
|
||||
.footer-wrap {
|
||||
@include container;
|
||||
@include clearfix;
|
||||
@@ -555,7 +634,7 @@ $button-size: 1.5rem;
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
span {
|
||||
span {
|
||||
@include font-rem(14);
|
||||
}
|
||||
footer {
|
||||
@@ -574,6 +653,8 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Related articles list */
|
||||
.related-articles {
|
||||
@include grid(12,10);
|
||||
@include prefix(12,1);
|
||||
@@ -590,7 +671,6 @@ $button-size: 1.5rem;
|
||||
@include suffix(12,3.5);
|
||||
}
|
||||
h4 {
|
||||
|
||||
text-transform: uppercase;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
@@ -598,46 +678,11 @@ $button-size: 1.5rem;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
.footer-icons {
|
||||
li {
|
||||
display: inline-block;
|
||||
padding-right: 5px;
|
||||
a {
|
||||
color: lighten($basecolor, 40%);
|
||||
@include transition(.4s linear);
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
border-bottom: none;
|
||||
.icon-twitter,
|
||||
.icon-twitter-sign {
|
||||
color: #2aa9df;
|
||||
}
|
||||
.icon-facebook,
|
||||
.icon-facebook-sign {
|
||||
color: #3a5a98;
|
||||
}
|
||||
.icon-instagram,
|
||||
.icon-instagram-sign {
|
||||
color: #306088;
|
||||
}
|
||||
.icon-google-plus,
|
||||
.icon-google-plus-sign {
|
||||
color: #b63324;
|
||||
}
|
||||
.icon-lastfm,
|
||||
.icon-lastfm-sign {
|
||||
color: #d80049;
|
||||
}
|
||||
.icon-github {
|
||||
color: #4183c4;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Browser Upgrade
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Browser upgrade alert
|
||||
========================================================================== */
|
||||
|
||||
.browser-upgrade {
|
||||
background: #000;
|
||||
text-align: center;
|
||||
@@ -654,9 +699,10 @@ $button-size: 1.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
Google search form
|
||||
========================================================================== */
|
||||
|
||||
// Google Search
|
||||
// --------------------------------------------------
|
||||
#goog-fixurl {
|
||||
ul {
|
||||
list-style: none;
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
// ROOT =====================================================
|
||||
* {
|
||||
background : transparent !important;
|
||||
color : black !important;
|
||||
box-shadow : none !important;
|
||||
text-shadow : none !important;
|
||||
filter : none !important;
|
||||
-ms-filter : none !important;
|
||||
position: static !important; }
|
||||
|
||||
@page {
|
||||
margin : 0.5cm; }
|
||||
|
||||
// TYPOGRAPHY ===============================================
|
||||
h2, h3 {
|
||||
orphans : 3;
|
||||
widows : 3;
|
||||
page-break-after : avoid; }
|
||||
|
||||
p {
|
||||
orphans : 3;
|
||||
widows : 3; }
|
||||
|
||||
pre, blockquote {
|
||||
border : 1px solid #333;
|
||||
page-break-inside : avoid;
|
||||
padding: 1em; }
|
||||
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")"; }
|
||||
|
||||
a, a:visited {
|
||||
text-decoration : underline; }
|
||||
|
||||
a[href]:after {
|
||||
content : " (" attr(href) ")"; }
|
||||
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content : ""; }
|
||||
|
||||
// TEXTURE ===============================================
|
||||
img {
|
||||
max-width : 100% !important;
|
||||
page-break-inside : avoid; }
|
||||
|
||||
thead {
|
||||
display : table-header-group; }
|
||||
|
||||
tr {
|
||||
page-break-inside : avoid; }
|
||||
|
||||
// ELEMENTS ==============================================
|
||||
// LAYOUT ================================================
|
||||
// VENDOR-SPECIFIC =======================================
|
||||
// MODERNIZR =============================================
|
||||
@@ -1,3 +1,7 @@
|
||||
/* ==========================================================================
|
||||
Pygments.rb syntax highlighting
|
||||
========================================================================== */
|
||||
|
||||
.highlight {
|
||||
background-color: #efefef;
|
||||
font-family: $code-font;
|
||||
@@ -72,4 +76,4 @@
|
||||
.vg { color: #008080 } /* Name.Variable.Global */
|
||||
.vi { color: #008080 } /* Name.Variable.Instance */
|
||||
.il { color: #009999 } /* Literal.Number.Integer.Long */
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,37 @@
|
||||
/* Selection ============================================= */
|
||||
::-moz-selection {
|
||||
background-color: lighten($basecolor, 65%);
|
||||
color: $basecolor;
|
||||
text-shadow: none;
|
||||
}
|
||||
::selection {
|
||||
background-color: lighten($basecolor, 65%);
|
||||
color: $basecolor;
|
||||
text-shadow: none;
|
||||
/* ==========================================================================
|
||||
Site wide styles
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
Selection
|
||||
========================================================================== */
|
||||
|
||||
::-moz-selection {
|
||||
background-color: lighten($basecolor, 65%);
|
||||
color: $basecolor;
|
||||
text-shadow: none;
|
||||
}
|
||||
::selection {
|
||||
background-color: lighten($basecolor, 65%);
|
||||
color: $basecolor;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
/* Global Classes ======================================== */
|
||||
/*
|
||||
Global classes
|
||||
========================================================================== */
|
||||
|
||||
/* Capitalize */
|
||||
.all-caps {
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/* Float left */
|
||||
.pull-left {
|
||||
float: left;
|
||||
}
|
||||
|
||||
/* Float right */
|
||||
.pull-right {
|
||||
float: right;
|
||||
}
|
||||
@@ -24,6 +39,8 @@
|
||||
float: right;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
/* Clearfix */
|
||||
.clearfix {
|
||||
*zoom: 1;
|
||||
&:before,
|
||||
@@ -35,6 +52,8 @@
|
||||
clear: both;
|
||||
}
|
||||
}
|
||||
|
||||
/* Remove bullets and indentation from list */
|
||||
.unstyled-list {
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
@@ -44,7 +63,10 @@
|
||||
}
|
||||
}
|
||||
|
||||
/* Global Transition ==================================== */
|
||||
/*
|
||||
Global transition
|
||||
========================================================================== */
|
||||
|
||||
b, i, strong, em, blockquote, p, q, span, figure, img, h1, h2, header, input, a {
|
||||
@include transition(all .2s ease);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
// Headings
|
||||
// --------------------------------------------------
|
||||
/* ==========================================================================
|
||||
Typography
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
Headings
|
||||
========================================================================== */
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: $heading-font;
|
||||
}
|
||||
@@ -22,29 +28,33 @@ h6 {
|
||||
@include font-size(14);
|
||||
}
|
||||
|
||||
// Links
|
||||
// --------------------------------------------------
|
||||
a {
|
||||
/*
|
||||
Links
|
||||
========================================================================== */
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: $link-color;
|
||||
&:visited {
|
||||
color: $linkcolorvisited;
|
||||
color: $link-color;
|
||||
&:visited {
|
||||
color: $linkcolorvisited;
|
||||
}
|
||||
&:hover {
|
||||
color: $linkcolorhover;
|
||||
&:hover {
|
||||
color: $linkcolorhover;
|
||||
}
|
||||
&:focus {
|
||||
outline: thin dotted;
|
||||
&:focus {
|
||||
outline: thin dotted;
|
||||
color: $linkcolorfocus;
|
||||
}
|
||||
&:hover,
|
||||
&:active {
|
||||
outline: 0;
|
||||
&:hover,
|
||||
&:active {
|
||||
outline: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Figures
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Figure captions
|
||||
========================================================================== */
|
||||
|
||||
figcaption {
|
||||
padding-top: 10px;
|
||||
@include font(14);
|
||||
@@ -52,8 +62,10 @@ figcaption {
|
||||
color: lighten($text-color, 10);
|
||||
}
|
||||
|
||||
// Feature Image Caption
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Feature image captions
|
||||
========================================================================== */
|
||||
|
||||
.image-credit {
|
||||
@include grid(12,10);
|
||||
@include prefix(12,1);
|
||||
@@ -77,8 +89,10 @@ figcaption {
|
||||
}
|
||||
}
|
||||
|
||||
// Note text
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Notices
|
||||
========================================================================== */
|
||||
|
||||
.notice {
|
||||
margin-top: 1.5em;
|
||||
padding: .5em 1em;
|
||||
@@ -89,8 +103,10 @@ figcaption {
|
||||
@include rounded(3px);
|
||||
}
|
||||
|
||||
// Blockquotes
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Blockquotes
|
||||
========================================================================== */
|
||||
|
||||
blockquote {
|
||||
margin-left: -28px;
|
||||
padding-left: 20px;
|
||||
@@ -99,8 +115,10 @@ blockquote {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
// Footnotes
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Footnotes
|
||||
========================================================================== */
|
||||
|
||||
.footnotes {
|
||||
ol, li, p {
|
||||
margin-bottom: 0;
|
||||
@@ -108,8 +126,10 @@ blockquote {
|
||||
}
|
||||
}
|
||||
|
||||
// Paragraphs
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Paragraphs
|
||||
========================================================================== */
|
||||
|
||||
p {
|
||||
margin: 0 0 $indent-var;
|
||||
// sibling indentation
|
||||
@@ -121,13 +141,15 @@ p {
|
||||
}
|
||||
}
|
||||
|
||||
// Code
|
||||
// --------------------------------------------------
|
||||
/*
|
||||
Code snippets
|
||||
========================================================================== */
|
||||
|
||||
tt, code, kbd, samp, pre {
|
||||
font-family: $code-font;
|
||||
}
|
||||
p,
|
||||
li {
|
||||
li {
|
||||
code {
|
||||
@include font-rem(12);
|
||||
line-height: 1.5;
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
// TYPOGRAPHY ================================================
|
||||
/* ==========================================================================
|
||||
Sass variables
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
Typography
|
||||
========================================================================== */
|
||||
|
||||
$doc-font-size: 16;
|
||||
$doc-line-height: 26;
|
||||
$paragraph-indent: true !default;
|
||||
@@ -7,36 +14,56 @@ $heading-font: 'PT Sans Narrow', sans-serif;
|
||||
$code-font: Monaco, "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace;
|
||||
$alt-font: $base-font;
|
||||
|
||||
// COLOR ======================================================
|
||||
/*
|
||||
Colors
|
||||
========================================================================== */
|
||||
|
||||
$bodycolor : #fff;
|
||||
$body-color : $bodycolor;
|
||||
$textcolor : #333332;
|
||||
$text-color : $textcolor;
|
||||
$border-color : $text-color;
|
||||
$basecolor : #343434;
|
||||
$compcolor : spin($basecolor, 180);
|
||||
$basecolor : #343434;
|
||||
$compcolor : spin($basecolor, 180);
|
||||
$bordercolor : $basecolor;
|
||||
$white : #fff;
|
||||
$black : #111;
|
||||
$accentcolor : $black;
|
||||
|
||||
// Buttons
|
||||
/* buttons */
|
||||
$primary : $black;
|
||||
$success : #5cb85c;
|
||||
$warning : #dd8338;
|
||||
$danger : #C64537;
|
||||
$info : #308cbc;
|
||||
|
||||
// Links
|
||||
/* brands */
|
||||
$facebook-color : #3b5998;
|
||||
$flickr-color : #ff0084;
|
||||
$foursquare-color : #0cbadf;
|
||||
$google-plus-color : #dd4b39;
|
||||
$instagram-color : #4e433c;
|
||||
$linkedin-color : #4875b4;
|
||||
$pinterest-color : #cb2027;
|
||||
$rss-color : #fa9b39;
|
||||
$tumblr-color : #2c4762;
|
||||
$twitter-color : #55acee;
|
||||
$vimeo-color : #1ab7ea;
|
||||
$youtube-color : #ff3333;
|
||||
|
||||
/* links */
|
||||
$linkcolor : #343434;
|
||||
$link-color : $linkcolor;
|
||||
$linkcolorhover : darken($linkcolor, 10);
|
||||
$linkcolorvisited : lighten($linkcolorhover, 20);
|
||||
$linkcolorfocus : darken($linkcolorvisited, 10);
|
||||
|
||||
// Media Queries
|
||||
/*
|
||||
Breakpoints
|
||||
========================================================================== */
|
||||
|
||||
$micro : "only screen and (min-width: 30em)";
|
||||
$small : "only screen and (min-width: 37.5em)";
|
||||
$medium : "only screen and (min-width: 48em)";
|
||||
$large : "only screen and (min-width: 62em)";
|
||||
$x-large : "only screen and (min-width: 86.375em)";
|
||||
$x-large : "only screen and (min-width: 86.375em)";
|
||||
|
||||
@@ -43,4 +43,4 @@ $mfp-caption-subtitle-color: #BDBDBD; // Caption sub
|
||||
.mfp-counter { font-family: $alt-font; } // Caption font family
|
||||
|
||||
// A11y
|
||||
$mfp-use-visuallyhidden: false;
|
||||
$mfp-use-visuallyhidden: false;
|
||||
|
||||
@@ -66,7 +66,7 @@ $mfp-caption-title-color: #F3F3F3 !default;
|
||||
$mfp-caption-subtitle-color: #BDBDBD !default;
|
||||
|
||||
// A11y
|
||||
$mfp-use-visuallyhidden: false !default; // Hide content from browsers, but make it available for screen readers
|
||||
$mfp-use-visuallyhidden: false !default; // Hide content from browsers, but make it available for screen readers
|
||||
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@ $mfp-use-visuallyhidden: false !default; // Hide content from brows
|
||||
|
||||
// Remove vertical centering when popup has class `mfp-align-top`
|
||||
.mfp-align-top {
|
||||
.mfp-container {
|
||||
.mfp-container {
|
||||
&:before {
|
||||
display: none;
|
||||
}
|
||||
@@ -401,7 +401,7 @@ button {
|
||||
&:before,
|
||||
.mfp-b {
|
||||
margin-left: 25px;
|
||||
border-right: 27px solid $mfp-controls-border-color;
|
||||
border-right: 27px solid $mfp-controls-border-color;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,5 +6,5 @@ modified:
|
||||
excerpt:
|
||||
tags: []
|
||||
image:
|
||||
feature:
|
||||
feature:
|
||||
---
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
layout: page
|
||||
title: About the Theme
|
||||
tags: [about, Jekyll, theme, responsive]
|
||||
modified: 9-9-2013
|
||||
modified: 2014-08-08T20:53:07.573882-04:00
|
||||
comments: true
|
||||
image:
|
||||
feature: texture-feature-02.jpg
|
||||
credit: Texture Lovers
|
||||
creditlink: http://texturelovers.com
|
||||
feature: sample-image-2.jpg
|
||||
credit: WeGraphics
|
||||
creditlink: http://wegraphics.net/downloads/free-ultimate-blurred-background-pack/
|
||||
---
|
||||
|
||||
Minimal Mistakes is responsive Jekyll theme with large featured images and solid typography. As the name implies the styling is fairly minimal to make it easier for you to build on top of.
|
||||
@@ -15,14 +15,11 @@ Minimal Mistakes is responsive Jekyll theme with large featured images and solid
|
||||
## Minimal Mistakes is all about:
|
||||
|
||||
* Responsive templates. Looking good on mobile, tablet, and desktop.
|
||||
* Gracefully degrading in older browsers. Compatible with Internet Explorer 8+ and all modern browsers.
|
||||
* Minimal embellishments --- content first.
|
||||
* Large feature images for posts and pages.
|
||||
* Author sidebar to pimp your bio, photo[^2], and social media links.
|
||||
* Simple and clear permalink structure *(ie: domain.com/category/post-title)*
|
||||
* Gracefully degrading in older browsers. Compatible with Internet Explorer 8+ and all modern browsers.
|
||||
* Minimal embellishments -- content first.
|
||||
* Optional large feature images for posts and pages.
|
||||
* Simple and clear permalink structure.
|
||||
* [Custom 404 page](http://mmistakes.github.io/minimal-mistakes/404.html) to get you started.
|
||||
* Support for Disqus Comments
|
||||
|
||||
<a markdown="0" href="{{ site.url }}/theme-setup" class="btn">Install Minimal Mistakes Theme</a>
|
||||
|
||||
[^1]: Since open sourcing this theme I have released several more Jekyll themes. My website [Made Mistakes](http://mademistakes.com) is currently using a modified version of my [Skinny Bones Starter](http://mmistakes.github.io/skinny-bones-jekyll/).
|
||||
|
||||
[^2]: Fancy avatars provided by [Brandon Mathis](http://brandonmathis.com/projects/fancy-avatars/demo/) under a [Creative Commons Attribution 3.0 License](http://creativecommons.org/licenses/by/3.0/).
|
||||
@@ -25,4 +25,4 @@ sitemap: false
|
||||
@import "page";
|
||||
@import "vendor/font-awesome/font-awesome";
|
||||
@import "vendor/magnific-popup/magnific-popup";
|
||||
@import "vendor/google/fonts";
|
||||
//@import "vendor/google/fonts";
|
||||
@@ -501,4 +501,4 @@
|
||||
<glyph horiz-adv-x="1792" />
|
||||
<glyph horiz-adv-x="1792" />
|
||||
</font>
|
||||
</defs></svg>
|
||||
</defs></svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 248 KiB After Width: | Height: | Size: 248 KiB |
@@ -10,14 +10,14 @@ var changeClass = function (r,className1,className2) {
|
||||
r.className = r.className.replace(new RegExp("(?:^|\\s+)" + className2 + "(?:\\s+|$)"),' '+className1+' ');
|
||||
}
|
||||
return r.className;
|
||||
};
|
||||
};
|
||||
// Creating our button in JS for smaller screens
|
||||
var menuElements = document.getElementById('site-nav');
|
||||
menuElements.insertAdjacentHTML('afterBegin','<button type="button" role="button" id="menutoggle" class="navtoogle navicon-lines-button x" aria-hidden="true"><span class="navicon-lines"></span>menu</button>');
|
||||
menuElements.insertAdjacentHTML('afterBegin','<button type="button" role="button" id="menutoggle" class="navtoggle navicon-lines-button x" aria-hidden="true"><span class="navicon-lines"></span>menu</button>');
|
||||
|
||||
// Toggle the class on click to show / hide the menu
|
||||
document.getElementById('menutoggle').onclick = function() {
|
||||
changeClass(this, 'navtoogle active', 'navtoogle');
|
||||
changeClass(this, 'navtoggle active', 'navtoggle');
|
||||
};
|
||||
// http://tympanus.net/codrops/2013/05/08/responsive-retina-ready-menu/comment-page-2/#comment-438918
|
||||
document.onclick = function(e) {
|
||||
@@ -25,7 +25,7 @@ document.onclick = function(e) {
|
||||
buttonStyle = mobileButton.currentStyle ? mobileButton.currentStyle.display : getComputedStyle(mobileButton, null).display;
|
||||
|
||||
if(buttonStyle === 'block' && e.target !== mobileButton && new RegExp(' ' + 'active' + ' ').test(' ' + mobileButton.className + ' ')) {
|
||||
changeClass(mobileButton, 'navtoogle active', 'navtoogle');
|
||||
changeClass(mobileButton, 'navtoggle active', 'navtoggle');
|
||||
}
|
||||
};
|
||||
|
||||
@@ -39,7 +39,7 @@ $(function() {
|
||||
// Table of Contents toggle
|
||||
$(function() {
|
||||
$(".toc h3").click(function () {
|
||||
$("#drawer").toggleClass("hidden");
|
||||
$("#drawer").toggleClass("js-hidden");
|
||||
});
|
||||
});
|
||||
|
||||
@@ -60,8 +60,8 @@ $(document).ready(function() {
|
||||
tError: '<a href="%url%">Image #%curr%</a> could not be loaded.',
|
||||
},
|
||||
removalDelay: 300, // Delay in milliseconds before popup is removed
|
||||
// Class that is added to body when popup is open.
|
||||
// Class that is added to body when popup is open.
|
||||
// make it unique to apply your CSS animations just to this exact popup
|
||||
mainClass: 'mfp-fade'
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
|
||||
/*>>core*/
|
||||
/**
|
||||
*
|
||||
*
|
||||
* Magnific Popup Core JS file
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ var CLOSE_EVENT = 'Close',
|
||||
|
||||
|
||||
/**
|
||||
* Private vars
|
||||
* Private vars
|
||||
*/
|
||||
var mfp, // As we have only one instance of MagnificPopup object, we define it locally to not to use 'this'
|
||||
MagnificPopup = function(){},
|
||||
@@ -97,15 +97,15 @@ var _mfpOn = function(name, f) {
|
||||
v = ['ms','O','Moz','Webkit']; // 'v' for vendor
|
||||
|
||||
if( s['transition'] !== undefined ) {
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
while( v.length ) {
|
||||
if( v.pop() + 'Transition' in s ) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
@@ -119,12 +119,12 @@ MagnificPopup.prototype = {
|
||||
constructor: MagnificPopup,
|
||||
|
||||
/**
|
||||
* Initializes Magnific Popup plugin.
|
||||
* Initializes Magnific Popup plugin.
|
||||
* This function is triggered only once when $.fn.magnificPopup or $.magnificPopup is executed
|
||||
*/
|
||||
init: function() {
|
||||
var appVersion = navigator.appVersion;
|
||||
mfp.isIE7 = appVersion.indexOf("MSIE 7.") !== -1;
|
||||
mfp.isIE7 = appVersion.indexOf("MSIE 7.") !== -1;
|
||||
mfp.isIE8 = appVersion.indexOf("MSIE 8.") !== -1;
|
||||
mfp.isLowIE = mfp.isIE7 || mfp.isIE8;
|
||||
mfp.isAndroid = (/android/gi).test(appVersion);
|
||||
@@ -151,7 +151,7 @@ MagnificPopup.prototype = {
|
||||
|
||||
var i;
|
||||
|
||||
if(data.isObj === false) {
|
||||
if(data.isObj === false) {
|
||||
// convert jQuery collection to array to avoid conflicts later
|
||||
mfp.items = data.items.toArray();
|
||||
|
||||
@@ -178,8 +178,8 @@ MagnificPopup.prototype = {
|
||||
mfp.updateItemHTML();
|
||||
return;
|
||||
}
|
||||
|
||||
mfp.types = [];
|
||||
|
||||
mfp.types = [];
|
||||
_wrapClasses = '';
|
||||
if(data.mainEl && data.mainEl.length) {
|
||||
mfp.ev = data.mainEl.eq(0);
|
||||
@@ -198,7 +198,7 @@ MagnificPopup.prototype = {
|
||||
|
||||
|
||||
|
||||
mfp.st = $.extend(true, {}, $.magnificPopup.defaults, data );
|
||||
mfp.st = $.extend(true, {}, $.magnificPopup.defaults, data );
|
||||
mfp.fixedContentPos = mfp.st.fixedContentPos === 'auto' ? !mfp.probablyMobile : mfp.st.fixedContentPos;
|
||||
|
||||
if(mfp.st.modal) {
|
||||
@@ -207,7 +207,7 @@ MagnificPopup.prototype = {
|
||||
mfp.st.showCloseBtn = false;
|
||||
mfp.st.enableEscapeKey = false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Building markup
|
||||
// main containers are created only once
|
||||
@@ -259,7 +259,7 @@ MagnificPopup.prototype = {
|
||||
_wrapClasses += ' mfp-align-top';
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if(mfp.fixedContentPos) {
|
||||
mfp.wrap.css({
|
||||
@@ -268,7 +268,7 @@ MagnificPopup.prototype = {
|
||||
overflowY: mfp.st.overflowY
|
||||
});
|
||||
} else {
|
||||
mfp.wrap.css({
|
||||
mfp.wrap.css({
|
||||
top: _window.scrollTop(),
|
||||
position: 'absolute'
|
||||
});
|
||||
@@ -280,7 +280,7 @@ MagnificPopup.prototype = {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if(mfp.st.enableEscapeKey) {
|
||||
// Close on ESC key
|
||||
@@ -299,7 +299,7 @@ MagnificPopup.prototype = {
|
||||
if(!mfp.st.closeOnContentClick) {
|
||||
_wrapClasses += ' mfp-auto-cursor';
|
||||
}
|
||||
|
||||
|
||||
if(_wrapClasses)
|
||||
mfp.wrap.addClass(_wrapClasses);
|
||||
|
||||
@@ -307,7 +307,7 @@ MagnificPopup.prototype = {
|
||||
// this triggers recalculation of layout, so we get it once to not to trigger twice
|
||||
var windowHeight = mfp.wH = _window.height();
|
||||
|
||||
|
||||
|
||||
var windowStyles = {};
|
||||
|
||||
if( mfp.fixedContentPos ) {
|
||||
@@ -328,8 +328,8 @@ MagnificPopup.prototype = {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
var classesToadd = mfp.st.mainClass;
|
||||
if(mfp.isIE7) {
|
||||
classesToadd += ' mfp-ie7';
|
||||
@@ -345,16 +345,16 @@ MagnificPopup.prototype = {
|
||||
|
||||
// remove scrollbar, add margin e.t.c
|
||||
$('html').css(windowStyles);
|
||||
|
||||
|
||||
// add everything to DOM
|
||||
mfp.bgOverlay.add(mfp.wrap).prependTo( mfp.st.prependTo || _body );
|
||||
|
||||
// Save last focused element
|
||||
mfp._lastFocusedEl = document.activeElement;
|
||||
|
||||
|
||||
// Wait for next cycle to allow CSS transition
|
||||
setTimeout(function() {
|
||||
|
||||
|
||||
if(mfp.content) {
|
||||
mfp._addClassToMFP(READY_CLASS);
|
||||
mfp._setFocus();
|
||||
@@ -362,7 +362,7 @@ MagnificPopup.prototype = {
|
||||
// if content is not defined (not loaded e.t.c) we add class only for BG
|
||||
mfp.bgOverlay.addClass(READY_CLASS);
|
||||
}
|
||||
|
||||
|
||||
// Trap the focus in popup
|
||||
_document.on('focusin' + EVENT_NS, mfp._onFocusIn);
|
||||
|
||||
@@ -421,7 +421,7 @@ MagnificPopup.prototype = {
|
||||
}
|
||||
$('html').css(windowStyles);
|
||||
}
|
||||
|
||||
|
||||
_document.off('keyup' + EVENT_NS + ' focusin' + EVENT_NS);
|
||||
mfp.ev.off(EVENT_NS);
|
||||
|
||||
@@ -441,14 +441,14 @@ MagnificPopup.prototype = {
|
||||
if(mfp._lastFocusedEl) {
|
||||
$(mfp._lastFocusedEl).focus(); // put tab focus back
|
||||
}
|
||||
mfp.currItem = null;
|
||||
mfp.currItem = null;
|
||||
mfp.content = null;
|
||||
mfp.currTemplate = null;
|
||||
mfp.prevHeight = 0;
|
||||
|
||||
_mfpTrigger(AFTER_CLOSE_EVENT);
|
||||
},
|
||||
|
||||
|
||||
updateSize: function(winHeight) {
|
||||
|
||||
if(mfp.isIOS) {
|
||||
@@ -485,17 +485,17 @@ MagnificPopup.prototype = {
|
||||
item = mfp.parseEl( mfp.index );
|
||||
}
|
||||
|
||||
var type = item.type;
|
||||
var type = item.type;
|
||||
|
||||
_mfpTrigger('BeforeChange', [mfp.currItem ? mfp.currItem.type : '', type]);
|
||||
// BeforeChange event works like so:
|
||||
// _mfpOn('BeforeChange', function(e, prevType, newType) { });
|
||||
|
||||
|
||||
mfp.currItem = item;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if(!mfp.currTemplate[type]) {
|
||||
var markup = mfp.st[type] ? mfp.st[type].markup : false;
|
||||
@@ -514,7 +514,7 @@ MagnificPopup.prototype = {
|
||||
if(_prevContentType && _prevContentType !== item.type) {
|
||||
mfp.container.removeClass('mfp-'+_prevContentType+'-holder');
|
||||
}
|
||||
|
||||
|
||||
var newContent = mfp['get' + type.charAt(0).toUpperCase() + type.slice(1)](item, mfp.currTemplate[type]);
|
||||
mfp.appendContent(newContent, type);
|
||||
|
||||
@@ -522,7 +522,7 @@ MagnificPopup.prototype = {
|
||||
|
||||
_mfpTrigger(CHANGE_EVENT, item);
|
||||
_prevContentType = item.type;
|
||||
|
||||
|
||||
// Append container back after its content changed
|
||||
mfp.container.prepend(mfp.contentContainer);
|
||||
|
||||
@@ -535,7 +535,7 @@ MagnificPopup.prototype = {
|
||||
*/
|
||||
appendContent: function(newContent, type) {
|
||||
mfp.content = newContent;
|
||||
|
||||
|
||||
if(newContent) {
|
||||
if(mfp.st.showCloseBtn && mfp.st.closeBtnInside &&
|
||||
mfp.currTemplate[type] === true) {
|
||||
@@ -558,7 +558,7 @@ MagnificPopup.prototype = {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Creates Magnific Popup data object based on given data
|
||||
* @param {int} index Index of item to parse
|
||||
@@ -612,11 +612,11 @@ MagnificPopup.prototype = {
|
||||
|
||||
if(!options) {
|
||||
options = {};
|
||||
}
|
||||
}
|
||||
|
||||
var eName = 'click.magnificPopup';
|
||||
options.mainEl = el;
|
||||
|
||||
|
||||
if(options.items) {
|
||||
options.isObj = true;
|
||||
el.off(eName).on(eName, eHandler);
|
||||
@@ -651,7 +651,7 @@ MagnificPopup.prototype = {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(e.type) {
|
||||
e.preventDefault();
|
||||
|
||||
@@ -660,7 +660,7 @@ MagnificPopup.prototype = {
|
||||
e.stopPropagation();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
options.el = $(e.mfpEl);
|
||||
if(options.delegate) {
|
||||
@@ -829,14 +829,14 @@ $.magnificPopup = {
|
||||
modules: [],
|
||||
|
||||
open: function(options, index) {
|
||||
_checkInstance();
|
||||
_checkInstance();
|
||||
|
||||
if(!options) {
|
||||
options = {};
|
||||
} else {
|
||||
options = $.extend(true, {}, options);
|
||||
}
|
||||
|
||||
|
||||
|
||||
options.isObj = true;
|
||||
options.index = index || 0;
|
||||
@@ -851,16 +851,16 @@ $.magnificPopup = {
|
||||
if(module.options) {
|
||||
$.magnificPopup.defaults[name] = module.options;
|
||||
}
|
||||
$.extend(this.proto, module.proto);
|
||||
$.extend(this.proto, module.proto);
|
||||
this.modules.push(name);
|
||||
},
|
||||
|
||||
defaults: {
|
||||
defaults: {
|
||||
|
||||
// Info about options is in docs:
|
||||
// http://dimsemenov.com/plugins/magnific-popup/documentation.html#options
|
||||
|
||||
disableOn: 0,
|
||||
|
||||
disableOn: 0,
|
||||
|
||||
key: null,
|
||||
|
||||
@@ -871,12 +871,12 @@ $.magnificPopup = {
|
||||
preloader: true,
|
||||
|
||||
focus: '', // CSS selector of input to focus after popup is opened
|
||||
|
||||
|
||||
closeOnContentClick: false,
|
||||
|
||||
closeOnBgClick: true,
|
||||
|
||||
closeBtnInside: true,
|
||||
closeBtnInside: true,
|
||||
|
||||
showCloseBtn: true,
|
||||
|
||||
@@ -885,13 +885,13 @@ $.magnificPopup = {
|
||||
modal: false,
|
||||
|
||||
alignTop: false,
|
||||
|
||||
|
||||
removalDelay: 0,
|
||||
|
||||
prependTo: null,
|
||||
|
||||
fixedContentPos: 'auto',
|
||||
|
||||
|
||||
fixedContentPos: 'auto',
|
||||
|
||||
fixedBgPos: 'auto',
|
||||
|
||||
overflowY: 'auto',
|
||||
@@ -938,9 +938,9 @@ $.fn.magnificPopup = function(options) {
|
||||
} else {
|
||||
// clone options obj
|
||||
options = $.extend(true, {}, options);
|
||||
|
||||
|
||||
/*
|
||||
* As Zepto doesn't support .data() method for objects
|
||||
* As Zepto doesn't support .data() method for objects
|
||||
* and it works only in normal browsers
|
||||
* we assign "options" object directly to the DOM element. FTW!
|
||||
*/
|
||||
@@ -982,7 +982,7 @@ console.log('Test #2:', performance.now() - start);
|
||||
|
||||
var INLINE_NS = 'inline',
|
||||
_hiddenClass,
|
||||
_inlinePlaceholder,
|
||||
_inlinePlaceholder,
|
||||
_lastInlineElement,
|
||||
_putInlineElementsBack = function() {
|
||||
if(_lastInlineElement) {
|
||||
@@ -1130,14 +1130,14 @@ $.magnificPopup.registerModule(AJAX_NS, {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*>>ajax*/
|
||||
|
||||
/*>>image*/
|
||||
var _imgInterval,
|
||||
_getTitle = function(item) {
|
||||
if(item.data && item.data.title !== undefined)
|
||||
if(item.data && item.data.title !== undefined)
|
||||
return item.data.title;
|
||||
|
||||
var src = mfp.st.image.titleSrc;
|
||||
@@ -1168,7 +1168,7 @@ $.magnificPopup.registerModule('image', {
|
||||
'</figure>'+
|
||||
'</div>',
|
||||
cursor: 'mfp-zoom-out-cur',
|
||||
titleSrc: 'title',
|
||||
titleSrc: 'title',
|
||||
verticalFit: true,
|
||||
tError: '<a href="%url%">The image</a> could not be loaded.'
|
||||
},
|
||||
@@ -1213,13 +1213,13 @@ $.magnificPopup.registerModule('image', {
|
||||
},
|
||||
_onImageHasSize: function(item) {
|
||||
if(item.img) {
|
||||
|
||||
|
||||
item.hasSize = true;
|
||||
|
||||
if(_imgInterval) {
|
||||
clearInterval(_imgInterval);
|
||||
}
|
||||
|
||||
|
||||
item.isCheckingImgSize = false;
|
||||
|
||||
_mfpTrigger('ImageHasSize', item);
|
||||
@@ -1227,7 +1227,7 @@ $.magnificPopup.registerModule('image', {
|
||||
if(item.imgHidden) {
|
||||
if(mfp.content)
|
||||
mfp.content.removeClass('mfp-loading');
|
||||
|
||||
|
||||
item.imgHidden = false;
|
||||
}
|
||||
|
||||
@@ -1280,7 +1280,7 @@ $.magnificPopup.registerModule('image', {
|
||||
if(item) {
|
||||
if (item.img[0].complete) {
|
||||
item.img.off('.mfploader');
|
||||
|
||||
|
||||
if(item === mfp.currItem){
|
||||
mfp._onImageHasSize(item);
|
||||
|
||||
@@ -1291,7 +1291,7 @@ $.magnificPopup.registerModule('image', {
|
||||
item.loaded = true;
|
||||
|
||||
_mfpTrigger('ImageLoadComplete');
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
// if image complete check fails 200 times (20 sec), we assume that there was an error.
|
||||
@@ -1338,7 +1338,7 @@ $.magnificPopup.registerModule('image', {
|
||||
img = item.img[0];
|
||||
if(img.naturalWidth > 0) {
|
||||
item.hasSize = true;
|
||||
} else if(!img.width) {
|
||||
} else if(!img.width) {
|
||||
item.hasSize = false;
|
||||
}
|
||||
}
|
||||
@@ -1370,7 +1370,7 @@ $.magnificPopup.registerModule('image', {
|
||||
item.imgHidden = true;
|
||||
template.addClass('mfp-loading');
|
||||
mfp.findImageSize(item);
|
||||
}
|
||||
}
|
||||
|
||||
return template;
|
||||
}
|
||||
@@ -1387,7 +1387,7 @@ var hasMozTransform,
|
||||
if(hasMozTransform === undefined) {
|
||||
hasMozTransform = document.createElement('p').style.MozTransform !== undefined;
|
||||
}
|
||||
return hasMozTransform;
|
||||
return hasMozTransform;
|
||||
};
|
||||
|
||||
$.magnificPopup.registerModule('zoom', {
|
||||
@@ -1407,7 +1407,7 @@ $.magnificPopup.registerModule('zoom', {
|
||||
var zoomSt = mfp.st.zoom,
|
||||
ns = '.zoom',
|
||||
image;
|
||||
|
||||
|
||||
if(!zoomSt.enabled || !mfp.supportsTransition) {
|
||||
return;
|
||||
}
|
||||
@@ -1443,7 +1443,7 @@ $.magnificPopup.registerModule('zoom', {
|
||||
mfp.content.css('visibility', 'hidden');
|
||||
|
||||
// Basically, all code below does is clones existing image, puts in on top of the current one and animated it
|
||||
|
||||
|
||||
image = mfp._getItemToZoom();
|
||||
|
||||
if(!image) {
|
||||
@@ -1451,8 +1451,8 @@ $.magnificPopup.registerModule('zoom', {
|
||||
return;
|
||||
}
|
||||
|
||||
animatedImg = getElToAnimate(image);
|
||||
|
||||
animatedImg = getElToAnimate(image);
|
||||
|
||||
animatedImg.css( mfp._getOffset() );
|
||||
|
||||
mfp.wrap.append(animatedImg);
|
||||
@@ -1467,7 +1467,7 @@ $.magnificPopup.registerModule('zoom', {
|
||||
animatedImg.remove();
|
||||
image = animatedImg = null;
|
||||
_mfpTrigger('ZoomAnimationEnded');
|
||||
}, 16); // avoid blink when switching images
|
||||
}, 16); // avoid blink when switching images
|
||||
|
||||
}, duration); // this timeout equals animation duration
|
||||
|
||||
@@ -1491,12 +1491,12 @@ $.magnificPopup.registerModule('zoom', {
|
||||
}
|
||||
animatedImg = getElToAnimate(image);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
animatedImg.css( mfp._getOffset(true) );
|
||||
mfp.wrap.append(animatedImg);
|
||||
mfp.content.css('visibility', 'hidden');
|
||||
|
||||
|
||||
setTimeout(function() {
|
||||
animatedImg.css( mfp._getOffset() );
|
||||
}, 16);
|
||||
@@ -1511,7 +1511,7 @@ $.magnificPopup.registerModule('zoom', {
|
||||
animatedImg.remove();
|
||||
}
|
||||
image = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
@@ -1543,7 +1543,7 @@ $.magnificPopup.registerModule('zoom', {
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
||||
Animating left + top + width/height looks glitchy in Firefox, but perfect in Chrome. And vice-versa.
|
||||
|
||||
*/
|
||||
@@ -1574,11 +1574,11 @@ $.magnificPopup.registerModule('zoom', {
|
||||
|
||||
var IFRAME_NS = 'iframe',
|
||||
_emptyPage = '//about:blank',
|
||||
|
||||
|
||||
_fixIframeBugs = function(isShowing) {
|
||||
if(mfp.currTemplate[IFRAME_NS]) {
|
||||
var el = mfp.currTemplate[IFRAME_NS].find('iframe');
|
||||
if(el.length) {
|
||||
if(el.length) {
|
||||
// reset src after the popup is closed to avoid "video keeps playing after popup is closed" bug
|
||||
if(!isShowing) {
|
||||
el[0].src = _emptyPage;
|
||||
@@ -1605,8 +1605,8 @@ $.magnificPopup.registerModule(IFRAME_NS, {
|
||||
// we don't care and support only one default type of URL by default
|
||||
patterns: {
|
||||
youtube: {
|
||||
index: 'youtube.com',
|
||||
id: 'v=',
|
||||
index: 'youtube.com',
|
||||
id: 'v=',
|
||||
src: '//www.youtube.com/embed/%id%?autoplay=1'
|
||||
},
|
||||
vimeo: {
|
||||
@@ -1631,7 +1631,7 @@ $.magnificPopup.registerModule(IFRAME_NS, {
|
||||
_fixIframeBugs(); // iframe if removed
|
||||
} else if(newType === IFRAME_NS) {
|
||||
_fixIframeBugs(true); // iframe is showing
|
||||
}
|
||||
}
|
||||
}// else {
|
||||
// iframe source is switched, don't do anything
|
||||
//}
|
||||
@@ -1645,7 +1645,7 @@ $.magnificPopup.registerModule(IFRAME_NS, {
|
||||
getIframe: function(item, template) {
|
||||
var embedSrc = item.src;
|
||||
var iframeSt = mfp.st.iframe;
|
||||
|
||||
|
||||
$.each(iframeSt.patterns, function() {
|
||||
if(embedSrc.indexOf( this.index ) > -1) {
|
||||
if(this.id) {
|
||||
@@ -1659,7 +1659,7 @@ $.magnificPopup.registerModule(IFRAME_NS, {
|
||||
return false; // break;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
var dataObj = {};
|
||||
if(iframeSt.srcAction) {
|
||||
dataObj[iframeSt.srcAction] = embedSrc;
|
||||
@@ -1716,7 +1716,7 @@ $.magnificPopup.registerModule('gallery', {
|
||||
supportsFastClick = Boolean($.fn.mfpFastClick);
|
||||
|
||||
mfp.direction = true; // true - next, false - prev
|
||||
|
||||
|
||||
if(!gSt || !gSt.enabled ) return false;
|
||||
|
||||
_wrapClasses += ' mfp-gallery';
|
||||
@@ -1755,16 +1755,16 @@ $.magnificPopup.registerModule('gallery', {
|
||||
_mfpOn('BuildControls' + ns, function() {
|
||||
if(mfp.items.length > 1 && gSt.arrows && !mfp.arrowLeft) {
|
||||
var markup = gSt.arrowMarkup,
|
||||
arrowLeft = mfp.arrowLeft = $( markup.replace(/%title%/gi, gSt.tPrev).replace(/%dir%/gi, 'left') ).addClass(PREVENT_CLOSE_CLASS),
|
||||
arrowLeft = mfp.arrowLeft = $( markup.replace(/%title%/gi, gSt.tPrev).replace(/%dir%/gi, 'left') ).addClass(PREVENT_CLOSE_CLASS),
|
||||
arrowRight = mfp.arrowRight = $( markup.replace(/%title%/gi, gSt.tNext).replace(/%dir%/gi, 'right') ).addClass(PREVENT_CLOSE_CLASS);
|
||||
|
||||
var eName = supportsFastClick ? 'mfpFastClick' : 'click';
|
||||
arrowLeft[eName](function() {
|
||||
mfp.prev();
|
||||
});
|
||||
});
|
||||
arrowRight[eName](function() {
|
||||
mfp.next();
|
||||
});
|
||||
});
|
||||
|
||||
// Polyfill for :before and :after (adds elements with classes mfp-a and mfp-b)
|
||||
if(mfp.isIE7) {
|
||||
@@ -1784,21 +1784,21 @@ $.magnificPopup.registerModule('gallery', {
|
||||
mfp._preloadTimeout = setTimeout(function() {
|
||||
mfp.preloadNearbyImages();
|
||||
mfp._preloadTimeout = null;
|
||||
}, 16);
|
||||
}, 16);
|
||||
});
|
||||
|
||||
|
||||
_mfpOn(CLOSE_EVENT+ns, function() {
|
||||
_document.off(ns);
|
||||
mfp.wrap.off('click'+ns);
|
||||
|
||||
|
||||
if(mfp.arrowLeft && supportsFastClick) {
|
||||
mfp.arrowLeft.add(mfp.arrowRight).destroyMfpFastClick();
|
||||
}
|
||||
mfp.arrowRight = mfp.arrowLeft = null;
|
||||
});
|
||||
|
||||
},
|
||||
},
|
||||
next: function() {
|
||||
mfp.direction = true;
|
||||
mfp.index = _getLoopedId(mfp.index + 1);
|
||||
@@ -1963,11 +1963,11 @@ $.magnificPopup.registerModule(RETINA_NS, {
|
||||
*
|
||||
* To unbind:
|
||||
* $('.your-el').destroyMfpFastClick();
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
* Note that it's a very basic and simple implementation, it blocks ghost click on the same element where it was bound.
|
||||
* If you need something more advanced, use plugin by FT Labs https://github.com/ftlabs/fastclick
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
(function() {
|
||||
@@ -2046,4 +2046,4 @@ $.magnificPopup.registerModule(RETINA_NS, {
|
||||
})();
|
||||
|
||||
/*>>fastclick*/
|
||||
_checkInstance(); })(window.jQuery || window.Zepto);
|
||||
_checkInstance(); })(window.jQuery || window.Zepto);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: none
|
||||
sitemap: false
|
||||
---
|
||||
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
|
||||
<title type="text">{{ site.title }}</title>
|
||||
@@ -13,10 +13,14 @@ sitemap: false
|
||||
<author>
|
||||
<name>{{ site.owner.name }}</name>
|
||||
<uri>{{ site.url }}/</uri>
|
||||
<email>{{ site.owner.email }}</email>
|
||||
{% if site.owner.email %}<email>{{ site.owner.email }}</email>{% endif %}
|
||||
</author>
|
||||
{% for post in site.posts limit:20 %}
|
||||
|
||||
{% if post.author %}
|
||||
{% assign author = site.data.authors[post.author] %}
|
||||
{% else %}
|
||||
{% assign author = site.owner %}
|
||||
{% endif %}
|
||||
<entry>
|
||||
<title type="html"><![CDATA[{{ post.title | cdata_escape }}]]></title>
|
||||
<link rel="alternate" type="text/html" href="{{ site.url }}{{ post.url }}" />
|
||||
@@ -26,12 +30,14 @@ sitemap: false
|
||||
{% else %}<published>{{ post.date | date_to_xmlschema }}</published>
|
||||
<updated>{{ post.date | date_to_xmlschema }}</updated>{% endif %}
|
||||
<author>
|
||||
<name>{{ site.owner.name }}</name>
|
||||
<name>{{ author.name }}</name>
|
||||
<uri>{{ site.url }}</uri>
|
||||
<email>{{ site.owner.email }}</email>
|
||||
{% if author.email %}<email>{{ author.email }}</email>{% endif %}
|
||||
</author>
|
||||
<content type="html">{{ post.content | xml_escape }}
|
||||
<p><a href="{{ site.url }}{{ post.url }}">{{ post.title }}</a> was originally published by {{ site.owner.name }} at <a href="{{ site.url }}">{{ site.title }}</a> on {{ post.date | date: "%B %d, %Y" }}.</p></content>
|
||||
<content type="html">
|
||||
{{ post.content | xml_escape }}
|
||||
{% include _feed-footer.html %}
|
||||
</content>
|
||||
</entry>
|
||||
{% endfor %}
|
||||
</feed>
|
||||
|
||||
|
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 5.2 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 74 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 71 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 79 KiB |
@@ -1,9 +1,9 @@
|
||||
---
|
||||
layout: home
|
||||
excerpt: "A responsive Jekyll theme with editorial tendencies by designer Michael Rose."
|
||||
excerpt: "A minimal Jekyll theme for your blog by designer Michael Rose."
|
||||
tags: [Jekyll, theme, responsive, blog, template]
|
||||
image:
|
||||
feature: texture-feature-01.jpg
|
||||
credit: Texture Lovers
|
||||
creditlink: http://texturelovers.com
|
||||
feature: sample-image-1.jpg
|
||||
credit: WeGraphics
|
||||
creditlink: http://wegraphics.net/downloads/free-ultimate-blurred-background-pack/
|
||||
---
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "minimal-mistakes-theme",
|
||||
"author": "Michael Rose <michael@mademistakes.com>",
|
||||
"homepage": "http://mmistakes.github.io/minima-mistakes/",
|
||||
"homepage": "http://mmistakes.github.io/minimal-mistakes/",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/mmistakes/minimal-mistakes.git"
|
||||
|
||||
@@ -4,20 +4,12 @@ title: Theme Setup
|
||||
modified: 2014-07-31T13:23:02.362000-04:00
|
||||
excerpt: "Instructions on how to install and customize the Jekyll theme Minimal Mistakes."
|
||||
image:
|
||||
feature: texture-feature-02.jpg
|
||||
credit: Texture Lovers
|
||||
creditlink: http://texturelovers.com
|
||||
feature: sample-image-3.jpg
|
||||
credit: WeGraphics
|
||||
creditlink: http://wegraphics.net/downloads/free-ultimate-blurred-background-pack/
|
||||
---
|
||||
|
||||
<section id="table-of-contents" class="toc">
|
||||
<header>
|
||||
<h3>Overview</h3>
|
||||
</header>
|
||||
<div id="drawer" markdown="1">
|
||||
* Auto generated table of contents
|
||||
{:toc}
|
||||
</div>
|
||||
</section><!-- /#table-of-contents -->
|
||||
{% include _toc.html %}
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -27,23 +19,39 @@ If you are creating a new Jekyll site using Minimal Mistakes follow these steps:
|
||||
|
||||
1. Fork the [Minimal Mistakes repo](http://github.com/mmistakes/minimal-mistakes/fork).
|
||||
2. Clone the repo you just forked and rename it.
|
||||
3. [Install Bundler](http://bundler.io) `gem install bundler` and Run `bundle install` to install all dependencies (Jekyll, [Jekyll-Sitemap](https://github.com/jekyll/jekyll-sitemap), [Octopress](https://github.com/octopress/octopress), [Bourbon](http://bourbon.io), etc)
|
||||
3. [Install Bundler](http://bundler.io) `gem install bundler` and Run `bundle install` to install all dependencies (Jekyll, [Jekyll-Sitemap](https://github.com/jekyll/jekyll-sitemap), [Octopress](https://github.com/octopress/octopress), etc)
|
||||
4. Update `config.yml`, add navigation, and replace demo posts and pages with your own. Full details below.
|
||||
|
||||
If you want to use Minimal Mistakes with an existing Jekyll site follow these steps:
|
||||
|
||||
1. [Download Minimal Mistakes](https://github.com/mmistakes/minimal-mistakes/archive/master.zip) and unzip.
|
||||
2. Rename `minimal-mistakes-master` to something meaningful ie: `new-site`
|
||||
3. Run `bundle install` to install all dependencies (Jekyll, [Jekyll-Sitemap](https://github.com/jekyll/jekyll-sitemap), [Octopress](https://github.com/octopress/octopress), [Bourbon](http://bourbon.io), etc)
|
||||
4. Remove demo posts and pages add replace with your own posts, pages, and any other content you want to move over.
|
||||
5. Update posts and pages YAML to match variables used by Minimal Mistakes. Full details below.
|
||||
6. Update `config.yml` and add navigation links. Full details below.
|
||||
3. Run `bundle install` to install all dependencies (Jekyll, [Jekyll-Sitemap](https://github.com/jekyll/jekyll-sitemap), [Octopress](https://github.com/octopress/octopress), etc)
|
||||
4. Remove demo posts/pages and replace with your own posts, pages, and any other content you want to move over.
|
||||
5. Update posts' and pages' YAML to match variables used by Minimal Mistakes. Full details below.
|
||||
6. Update `_config.yml` and add navigation links. Full details below.
|
||||
|
||||
**Pro-tip:** Delete the `gh-pages` branch after cloning and start fresh by branching off `master`. There is a bunch of garbage in `gh-pages` used for the theme's demo site that I'm guessing you won't want.
|
||||
{: .notice}
|
||||
|
||||
---
|
||||
|
||||
## Running Jekyll
|
||||
|
||||
If `jekyll build` and `jekyll serve` throw errors you may have to run Jekyll with `bundled exec` instead.
|
||||
|
||||
> In some cases, running executables without bundle exec may work, if the executable happens to be installed in your system and does not pull in any gems that conflict with your bundle.
|
||||
>
|
||||
>However, this is unreliable and is the source of considerable pain. Even if it looks like it works, it may not work in the future or on another machine.
|
||||
|
||||
{% highlight text %}
|
||||
bundle exec jekyll build
|
||||
|
||||
bundle exec jekyll serve
|
||||
{% endhighlight %}
|
||||
|
||||
---
|
||||
|
||||
## Scaffolding
|
||||
|
||||
How Minimal Mistakes is organized and what the various files are. All posts, layouts, includes, stylesheets, assets, and whatever else is grouped nicely under the root folder. The compiled Jekyll site outputs to `_site/`.
|
||||
@@ -66,6 +74,8 @@ minimal-mistakes/
|
||||
| └── post.html # single post layout
|
||||
├── _posts/ # MarkDown formatted posts
|
||||
├── _sass/ # Sass stylesheets
|
||||
├── _templates/ # used by Octopress to define YAML variables for new posts/pages
|
||||
├── about/ # sample about page
|
||||
├── assets/
|
||||
| ├── css/ # compiled stylesheets
|
||||
| ├── fonts/ # webfonts
|
||||
@@ -77,11 +87,10 @@ minimal-mistakes/
|
||||
| └── less/
|
||||
├── images/ # images for posts and pages
|
||||
├── 404.md # 404 page
|
||||
├── about.md # sample about page
|
||||
├── feed.xml # Atom feed template
|
||||
├── index.md # sample homepage. lists 5 latest posts
|
||||
├── posts.md # sample post index page. lists all posts in reverse chronology
|
||||
└── theme-setup.md # theme setup page. safe to remove
|
||||
├── index.md # sample homepage. lists 5 latest posts
|
||||
├── posts/ # sample post index page. lists all posts in reverse chronology
|
||||
└── theme-setup/ # theme setup page. safe to remove
|
||||
{% endhighlight %}
|
||||
|
||||
---
|
||||
@@ -102,15 +111,15 @@ Example `title: My Awesome Site`
|
||||
|
||||
#### url
|
||||
|
||||
Used to generate absolute urls in `sitemap.xml`, `atom.xml`, and for generating canonical URLs in `<head>`. When developing locally either comment this out or use something like `http://localhost:4000` so all assets load properly. *Don't include a trailing `/`*.
|
||||
Used to generate absolute urls in `sitemap.xml`, `feed.xml`, and for generating canonical URLs in `<head>`. When developing locally either comment this out or use something like `http://localhost:4000` so all assets load properly. *Don't include a trailing `/`*.
|
||||
|
||||
Examples:
|
||||
|
||||
{% highlight yaml %}
|
||||
url: http://mmistakes.github.io/minimal-mistakes
|
||||
url: http://localhost:4000
|
||||
url: http://mademistakes.com
|
||||
url:
|
||||
url: //cooldude.github.io
|
||||
url:
|
||||
{% endhighlight %}
|
||||
|
||||
#### Google Analytics and Webmaster Tools
|
||||
@@ -126,14 +135,14 @@ To set what links appear in the top navigation edit `_data/navigation.yml`. Use
|
||||
url: /portfolio/
|
||||
|
||||
- title: Made Mistakes
|
||||
url: http://mademistakes.com
|
||||
url: http://mademistakes.com
|
||||
{% endhighlight %}
|
||||
|
||||
---
|
||||
|
||||
## Adding New Content
|
||||
## Adding New Content with Octopress
|
||||
|
||||
Install the [Octopress](https://github.com/octopress/octopress) gem if it isn't already.
|
||||
While completely optional, I've included Octopress and some starter templates to automate the creation of new posts and pages. To take advantage of it start by installing the [Octopress](https://github.com/octopress/octopress) gem if it isn't already.
|
||||
|
||||
{% highlight bash %}
|
||||
$ gem install octopress --pre
|
||||
@@ -211,28 +220,75 @@ image:
|
||||
|
||||
### Thumbnails for OG and Twitter Cards
|
||||
|
||||
Post and page thumbnails work the same way. These are used by [Open Graph](https://developers.facebook.com/docs/opengraph/) and [Twitter Cards](https://dev.twitter.com/docs/cards) meta tags found in *_head.html*. If you don't assign a thumbnail the default graphic *(default-thumb.png)* is used. I'd suggest changing this to something more meaningful --- your logo or avatar are good options.
|
||||
Feature and thumbnail images are used by [Open Graph](https://developers.facebook.com/docs/opengraph/) and [Twitter Cards](https://dev.twitter.com/docs/cards) as well. If you don't assign a thumbnail the default graphic *(default-thumb.png)* is used. I'd suggest changing this to something more meaningful --- your logo or avatar are good options.
|
||||
|
||||
### Table of Contents
|
||||
**Pro-Tip**: You need to [apply for Twitter Cards](https://dev.twitter.com/docs/cards) before they will begin showing up when links to your site are shared.
|
||||
{:.notice}
|
||||
|
||||
Any post or page that you want a *table of contents* to render insert the following HTML in your post before the actual content. [Kramdown will take care of the rest](http://kramdown.rubyforge.org/converter/html.html#toc) and convert all headlines into a contents list.
|
||||
### Author Override
|
||||
|
||||
**PS:** The TOC is hidden on small devices because I haven't gotten around to optimizing it. For now it only appears on larger screens (tablet and desktop).
|
||||
{: .notice}
|
||||
By making use of data files you can assign different authors for each post.
|
||||
|
||||
{% highlight html %}
|
||||
<section id="table-of-contents" class="toc">
|
||||
<header>
|
||||
<h3>Overview</h3>
|
||||
</header>
|
||||
<div id="drawer" markdown="1">
|
||||
* Auto generated table of contents
|
||||
{:toc}
|
||||
</div>
|
||||
</section><!-- /#table-of-contents -->
|
||||
Start by modifying `authors.yml` file in the `_data` folder and add your authors using the following format.
|
||||
|
||||
{% highlight yaml %}
|
||||
# Authors
|
||||
|
||||
billy_rick:
|
||||
name: Billy Rick
|
||||
web: http://thewhip.com
|
||||
email: billy@rick.com
|
||||
bio: "What do you want, jewels? I am a very extravagant man."
|
||||
avatar: bio-photo-2.jpg
|
||||
twitter: extravagantman
|
||||
google:
|
||||
plus: +BillyRick
|
||||
|
||||
cornelius_fiddlebone:
|
||||
name: Cornelius Fiddlebone
|
||||
email: cornelius@thewhip.com
|
||||
bio: "I ordered what?"
|
||||
avatar: bio-photo.jpg
|
||||
twitter: rhymeswithsackit
|
||||
google:
|
||||
plus: +CorneliusFiddlebone
|
||||
{% endhighlight %}
|
||||
|
||||
#### Videos
|
||||
To assign Billy Rick as an author for our post. We'd add the following YAML front matter to a post:
|
||||
|
||||
{% highlight yaml %}
|
||||
author: billy_rick
|
||||
{% endhighlight %}
|
||||
|
||||
### Kramdown Table of Contents
|
||||
|
||||
To include an auto-generated **table of contents** for posts and pages, add the following `_include` before the actual content. [Kramdown will take care of the rest](http://kramdown.rubyforge.org/converter/html.html#toc) and convert all headlines into list of links.
|
||||
|
||||
{% highlight html %}
|
||||
{% raw %}{% include _toc.html %}{% endraw %}
|
||||
{% endhighlight %}
|
||||
|
||||
### Paragraph Indentation
|
||||
|
||||
By default the margin below paragraphs has been removed and indent added to each. This is an intentional design decision to mimic the look of type set in a printed book or manuscript.
|
||||
|
||||
<figure>
|
||||
<img src="{{ site.url }}/images/paragraph-indent.png" alt="screen shot of paragraphs with default indent style set">
|
||||
<figcaption>Example of the default paragraph style (indented first line and bottom margin removed).</figcaption>
|
||||
</figure>
|
||||
|
||||
To disable the indents and add spacing between paragraphs change the following line in `_sass/variables.scss` from `true !default` to `false` like so.
|
||||
|
||||
{% highlight css %}
|
||||
$paragraph-indent: false;
|
||||
{% endhighlight %}
|
||||
|
||||
<figure>
|
||||
<img src="{{ site.url }}/images/paragraph-no-indent.png" alt="screen shot of paragraphs with indent style disabled">
|
||||
<figcaption>Example of paragraphs with $paragraph-indent disabled.</figcaption>
|
||||
</figure>
|
||||
|
||||
### Videos
|
||||
|
||||
Video embeds are responsive and scale with the width of the main content block with the help of [FitVids](http://fitvidsjs.com/).
|
||||
|
||||
@@ -242,11 +298,15 @@ Not sure if this only effects Kramdown or if it's an issue with Markdown in gene
|
||||
<iframe width="560" height="315" src="http://www.youtube.com/embed/PWf4WUoMXwg" frameborder="0"> </iframe>
|
||||
{% endhighlight %}
|
||||
|
||||
### Social Sharing Links
|
||||
|
||||
Social sharing links for Twitter, Facebook, and Google+ are included on posts/pages by default. To hide them on specific posts or pages add `share: false` to the YAML Front Matter. If you'd like to use different social networks modify `_includes/_social-share.html` to your liking. Icons are set using [Font Awesome](http://fontawesome.io).
|
||||
|
||||
---
|
||||
|
||||
## Further Customization
|
||||
|
||||
Jekyll 2.0 added support for Sass files making it much easier to modify a theme's fonts and colors. By editing values found in `_sass/variables.scss` you can fine tune the site's colors and typography.
|
||||
Jekyll 2.x added support for Sass files making it much easier to modify a theme's fonts and colors. By editing values found in `_sass/variables.scss` you can fine tune the site's colors and typography.
|
||||
|
||||
For example if you wanted a red background instead of white you'd change `$bodycolor: #fff;` to `$bodycolor: $cc0033;`.
|
||||
|
||||
@@ -256,7 +316,7 @@ To modify the site's JavaScript files I setup a Grunt build script to lint/conca
|
||||
npm install
|
||||
{% endhighlight %}
|
||||
|
||||
From the theme's root, use `grunt` concatenate JavaScript files, and optimize .jpg, .png, and .svg files in the `images/` folder. You can also use `grunt watch` in combination with `jekyll build --watch` to watch for updates JS files that Grunt will then automatically re-build as you write your code which will in turn auto-generate your Jekyll site when developing locally.
|
||||
From the theme's root, use `grunt` concatenate JavaScript files, and optimize .jpg, .png, and .svg files in the `images/` folder. You can also use `grunt dev` in combination with `jekyll build --watch` to watch for updates JS files that Grunt will then automatically re-build as you write your code which will in turn auto-generate your Jekyll site when developing locally.
|
||||
|
||||
---
|
||||
|
||||
@@ -268,4 +328,4 @@ Found a bug or aren't quite sure how something works? By all means Ping me on Tw
|
||||
|
||||
## License
|
||||
|
||||
This theme is free and open source software, distributed under the GNU General Public License version 2 or later. So feel free to use this Jekyll theme on your site without linking back to me or including a disclaimer.
|
||||
This theme is free and open source software, distributed under the MIT License. So feel free to use this Jekyll theme on your site without linking back to me or including a disclaimer.
|
||||
|
||||