diff --git a/static/css/app.css b/static/css/app.css index 89bd81a..647ad8d 100644 --- a/static/css/app.css +++ b/static/css/app.css @@ -120,7 +120,7 @@ table { border-collapse: collapse; border-spacing: 0; } html, body { font-size: 100%; } -body { background: #fbfbfb; color: #222222; padding: 0; margin: 0; font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-weight: normal; font-style: normal; line-height: 1; position: relative; cursor: default; } +body { background: #fbfbfb; color: #222222; padding: 0; margin: 0; font-family: "Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-weight: normal; font-style: normal; line-height: 1; position: relative; cursor: default; } a:hover { cursor: pointer; } @@ -273,7 +273,7 @@ select { width: 100%; } .column.large-uncentered.opposite, .columns.large-uncentered.opposite { float: right !important; } } p.lead { font-size: 1.21875em; line-height: 1.6; } -.subheader { line-height: 1.4; color: #6f6f6f; font-weight: 300; margin-top: 0.2em; margin-bottom: 0.5em; } +.subheader { line-height: 1.4; color: #6f6f6f; font-weight: 300; margin-top: 0.2em; margin-bottom: 0.3em; } /* Typography resets */ div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td { margin: 0; padding: 0; direction: ltr; } @@ -284,11 +284,11 @@ a:hover, a:focus { color: #83130b; } a img { border: none; } /* Default paragraph styles */ -p { font-family: inherit; font-weight: normal; font-size: 1em; line-height: 1.6; margin-bottom: 1.25em; text-rendering: optimizeLegibility; } +p { font-family: inherit; font-weight: normal; font-size: 1em; line-height: 1.6; margin-bottom: 1.125em; text-rendering: optimizeLegibility; } p aside { font-size: 0.875em; line-height: 1.35; font-style: italic; } /* Default header styles */ -h1, h2, h3, h4, h5, h6 { font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-weight: bold; font-style: normal; color: #222222; text-rendering: optimizeLegibility; margin-top: 0.2em; margin-bottom: 0.5em; line-height: 1.2125em; } +h1, h2, h3, h4, h5, h6 { font-family: "Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; font-weight: bold; font-style: normal; color: #222222; text-rendering: optimizeLegibility; margin-top: 0.2em; margin-bottom: 0.4em; line-height: 1.2125em; } h1 small, h2 small, h3 small, h4 small, h5 small, h6 small { font-size: 60%; color: #6f6f6f; line-height: 0; } h1 { font-size: 2.125em; } @@ -315,7 +315,7 @@ small { font-size: 60%; line-height: inherit; } code { font-family: Consolas, "Liberation Mono", Courier, monospace; font-weight: bold; color: #7f0a0c; } /* Lists */ -ul, ol, dl { font-size: 1em; line-height: 1.6; margin-bottom: 1.25em; list-style-position: outside; font-family: inherit; } +ul, ol, dl { font-size: 1em; line-height: 1.6; margin-bottom: 1.125em; list-style-position: outside; font-family: inherit; } ul, ol { margin-left: 1.875em; } @@ -325,7 +325,7 @@ ul.square li ul, ul.circle li ul, ul.disc li ul { list-style: inherit; } ul.square { list-style-type: square; } ul.circle { list-style-type: circle; } ul.disc { list-style-type: disc; } -ul.no-bullet { list-style: none; } +ul.no-bullet, #main section ul.article-list { list-style: none; } /* Ordered Lists */ ol li ul, ol li ol { margin-left: 1.25em; margin-bottom: 0; } @@ -340,7 +340,7 @@ abbr, acronym { text-transform: uppercase; font-size: 90%; color: #222222; borde abbr { text-transform: none; } /* Blockquotes */ -blockquote { margin: 0 0 1.25em; padding: 0.5625em 1.25em 0 1.1875em; border-left: 1px solid #dddddd; } +blockquote { margin: 0 0 1.125em; padding: 0.5625em 1.25em 0 1.1875em; border-left: 1px solid #dddddd; } blockquote cite { display: block; font-size: 0.8125em; color: #555555; } blockquote cite:before { content: "\2014 \0020"; } blockquote cite a, blockquote cite a:visited { color: #555555; } @@ -425,6 +425,22 @@ button.large, .button.large { padding-top: 1.03125em; padding-bottom: 1.03125em; button.radius, .button.radius { -webkit-border-radius: 3px; border-radius: 3px; } button.round, .button.round { -webkit-border-radius: 1000px; border-radius: 1000px; } } @media only screen and (min-width: 768px) { button, .button { display: inline-block; } } +/* Dropdown Button */ +.dropdown.button { position: relative; padding-right: 3.1875em; } +.dropdown.button:before { position: absolute; content: ""; width: 0; height: 0; display: block; border-style: solid; border-color: white transparent transparent transparent; top: 50%; } +.dropdown.button:before { border-width: 0.5625em; right: 1.5em; margin-top: -0.25em; } +.dropdown.button:before { border-color: white transparent transparent transparent; } +.dropdown.button.tiny { padding-right: 2.1875em; } +.dropdown.button.tiny:before { border-width: 0.4375em; right: 0.875em; margin-top: -0.15625em; } +.dropdown.button.tiny:before { border-color: white transparent transparent transparent; } +.dropdown.button.small { padding-right: 2.8125em; } +.dropdown.button.small:before { border-width: 0.5625em; right: 1.125em; margin-top: -0.21875em; } +.dropdown.button.small:before { border-color: white transparent transparent transparent; } +.dropdown.button.large { padding-right: 4em; } +.dropdown.button.large:before { border-width: 0.625em; right: 1.75em; margin-top: -0.3125em; } +.dropdown.button.large:before { border-color: white transparent transparent transparent; } +.dropdown.button.secondary:before { border-color: #333333 transparent transparent transparent; } + /* Wrapped around .top-bar to contain to grid width */ .contain-to-grid { width: 100%; background: #9b160d; } .contain-to-grid .top-bar { margin-bottom: 1.875em; } @@ -553,6 +569,13 @@ table tr th, table tr td { padding: 0.5625em 0.625em; font-size: 0.875em; color: table tr.even, table tr.alt, table tr:nth-of-type(even) { background: #f9f9f9; } table thead tr th, table tfoot tr th, table tbody tr td, table tr td, table tfoot tr td { display: table-cell; line-height: 1.125em; } +/* Image Thumbnails */ +.th { line-height: 0; display: inline-block; border: solid 4px white; -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2); -webkit-transition: all 200ms ease-out; -moz-transition: all 200ms ease-out; transition: all 200ms ease-out; } +.th:hover, .th:focus { -webkit-box-shadow: 0 0 6px 1px rgba(155, 22, 13, 0.5); box-shadow: 0 0 6px 1px rgba(155, 22, 13, 0.5); } +.th.radius { -webkit-border-radius: 3px; border-radius: 3px; } + +a.th { display: inline-block; } + /* Icon Font */ @font-face { font-family: "pelican-red"; src: url('../fonts/pelican-red.eot'); src: url('../fonts/pelican-red.eot?#iefix') format('eot'), url('../fonts/pelican-red.woff') format('woff'), url('../fonts/pelican-red.ttf') format('truetype'), url('../fonts/pelican-red.svg') format('svg'); font-weight: normal; font-style: normal; } @@ -682,6 +705,20 @@ a [class*="icon-"]:before { display: inline; } .icon-link:before { content: "\e81b"; } +.codehilite { font-size: 0.875em; padding: 0.4375em; background-color: #f4f4f4; border: 1px solid #e0e0e0; font-family: 'Source Code Pro', 'Consolas', Monaco, monospace; overflow: auto; margin-bottom: 1em; } +.codehilite pre { tab-size: 4; white-space: pre; font-family: inherit; } + +div.codehilitewrapper { overflow-x: auto; overflow-y: hidden; border: 1px solid #e0e0e0; margin-bottom: 1.25em; } +div.codehilitewrapper table.codehilitetable { margin: 0; border: none; } + +table.codehilitetable { width: 100%; } +table.codehilitetable td { font-size: 1em; } +table.codehilitetable .linenos { width: 1.875em; padding: 0; } +table.codehilitetable .linenos .linenodiv { padding: 0.4375em; overflow: auto; font-family: 'Source Code Pro', 'Consolas', Monaco, monospace; } +table.codehilitetable .linenos .linenodiv pre { font-family: inherit; } +table.codehilitetable .code { padding: 0; } +table.codehilitetable .code .codehilite { border-bottom: none; border-top: none; border-right: none; margin: 0; } + /* Pygments Code Highlight */ .codehilite .hll { background-color: #ffffcc; } .codehilite .c { color: #999988; font-style: italic; } @@ -758,21 +795,39 @@ body { background-color: #fff; } #nav { background-color: #9b160d; margin-bottom: 0.625em; } #nav .top-bar { margin-bottom: 0; } -#main section, #mainAside aside { background-color: #fff; -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); } +#main section, #mainAside aside { background-color: #fff; -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); margin-bottom: 0.625em; } #main section { padding: 0.625em 0.4375em 0.4375em 0.75em; } #main section header { overflow: hidden; margin-bottom: 0.4375em; border-bottom: 1px solid #f2f2f2; } -#main section header h1 { margin-top: 0; margin-bottom: 0; } +#main section header h1, #main section header h2, #main section header h3 { margin-top: 0; margin-bottom: 0; } +#main section ul.article-list { margin-bottom: 0; margin-left: 0; } +#main section ul.article-list li .article { border: 1px solid #f2f2f2; padding: 0.4375em; margin: 0.4375em; overflow: hidden; clear: both; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; background-image: -webkit-linear-gradient(top, #ffffff, #f8f8f8); background-image: -moz-linear-gradient(top, #ffffff, #f8f8f8); background-image: -o-linear-gradient(top, #ffffff, #f8f8f8); background-image: linear-gradient(to bottom, #ffffff, #f8f8f8); } +#main section ul.article-list li .article:after { clear: both; } +#main section ul.article-list li .article .summary { font-size: 0.9em; padding-bottom: 0.4375em; } +#main section ul.article-list li .article footer { border-top: 1px solid #f2f2f2; font-size: 0.8em; color: #c7c7c7; } +#main section ul.article-list li .article footer ul { margin-left: 0; } +#main section ul.article-list li .article footer abbr { color: #c7c7c7; } +#main section ul.article-list li .article footer a { color: #b3190f; } +#main section ul.article-list li .article header .tag-list { font-size: 0.7em; margin-bottom: 0; display: inline-block; vertical-align: middle; } +#main section ul.article-list li .article header .tag-list li a { padding: 0.25em 0.4375em; } +#main section ul.article-list li .article header span { font-size: 0.8em; } +#main section dl.article-list dt { border-top: 1px solid #f2f2f2; } +#main section dl.article-list dt:first-child { border: none; } +#main section dl.article-list dd { margin-bottom: 0.5em; } #mainAside { font-size: 0.8em; } #mainAside aside { padding: 0.625em 0.4375em; } #blogRoll { margin-left: 0; } -#mainFooter { margin-top: 0.625em; color: #888; font-size: 0.8em; } +#mainFooter { text-align: right; margin-right: 0.625em; margin-top: 0.625em; margin-bottom: 0.4375em; color: #888; font-size: 0.8em; } .social-area li a:not(.button) { padding: 0 10px; } +.gsc-control-cse { padding: 0 !important; } +.gsc-control-cse .gsc-input { padding: 0 !important; } +.gsc-control-cse .gsc-search-button { display: none; } + .tag-list { margin: 0 auto 1.0625em auto; margin-left: -1.375em; margin-right: 0; padding: 0; list-style: none; overflow: hidden; } .tag-list > li { list-style: none; float: left; margin-left: 1.375em; display: block; } .tag-list > li > * { display: block; } diff --git a/static/js/app.js b/static/js/app.js index 2578391..fc11a96 100644 --- a/static/js/app.js +++ b/static/js/app.js @@ -10,6 +10,11 @@ for( var i = 0, l = scripts.length; i < l; i++ ){ yepnope.errorTimeout = 3000; // set 3 second error timeout instead of 10 +function ready(){ + // Hack to fix .codehilitetable overflow + $('.codehilitetable').wrap('
'); +}; + // zeptojs or jquery Modernizr.load([{ test: '__proto__' in {}, @@ -32,10 +37,14 @@ Modernizr.load([{ if(!window.Foundation) Modernizr.load([{ load: baseURL+'foundation.min.js', - complete: function() { $(document).foundation() }, + complete: function() { + $(document).foundation() + ready() + }, }]); else { $(document).foundation() + ready() } } }, diff --git a/static/sass/_foundationSettings.scss b/static/sass/_foundationSettings.scss index 10efe48..fb49029 100644 --- a/static/sass/_foundationSettings.scss +++ b/static/sass/_foundationSettings.scss @@ -30,7 +30,7 @@ $default-float: left; $body-bg: #fbfbfb; // $body-font-color: #222; -// $body-font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; +$body-font-family: "Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; // $body-font-weight: normal; // $body-font-style: normal; @@ -136,13 +136,13 @@ $total-columns: 16; // Heading font styles -// $header-font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; +$header-font-family: "Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; // $header-font-weight: bold; // $header-font-style: normal; // $header-font-color: #222; // $header-line-height: 1.4; // $header-top-margin: .2em; -// $header-bottom-margin: .5em; +$header-bottom-margin: .4em; // $header-text-rendering: optimizeLegibility; // Heading font sizes @@ -160,7 +160,7 @@ $total-columns: 16; // $subheader-font-color: lighten($header-font-color, 30%); // $subheader-font-weight: 300; // $subheader-top-margin: .2em; -// $subheader-bottom-margin: .5em; +$subheader-bottom-margin: .3em; // styling @@ -173,7 +173,7 @@ $total-columns: 16; // $paragraph-font-weight: normal; // $paragraph-font-size: 1em; // $paragraph-line-height: 1.6; -// $paragraph-margin-bottom: emCalc(20px); +$paragraph-margin-bottom: emCalc(18px); // $paragraph-aside-font-size: emCalc(14px); // $paragraph-aside-line-height: 1.35; // $paragraph-aside-font-style: italic; diff --git a/static/sass/app.scss b/static/sass/app.scss index 1773239..3d14b28 100644 --- a/static/sass/app.scss +++ b/static/sass/app.scss @@ -14,7 +14,7 @@ // @import "foundation/components/forms"; // *requires components/buttons // @import "foundation/components/custom-forms"; // *requires components/buttons, components/forms // @import "foundation/components/button-groups"; // *requires components/buttons -// @import "foundation/components/dropdown-buttons"; // *requires components/buttons + @import "foundation/components/dropdown-buttons"; // *requires components/buttons // @import "foundation/components/split-buttons"; // *requires components/buttons // @import "foundation/components/flex-video"; // @import "foundation/components/section"; @@ -37,18 +37,20 @@ // @import "foundation/components/switch"; // @import "foundation/components/magellan"; @import "foundation/components/tables"; -// @import "foundation/components/thumbs"; +@import "foundation/components/thumbs"; // @import "foundation/components/tooltips"; // @import "foundation/components/dropdown"; // VoltaicIdeas Imports $set: 'pelican-red'; @import "voltaicideas/pelican-red/icons"; // icon fonts -@import "voltaicideas/pelican-red/pygments-github"; // pygments css +@import "voltaicideas/pelican-red/_pygments.scss"; // pygments css +@import "voltaicideas/pelican-red/pygments-github"; // pygments style css @import "compass/css3/box-shadow"; @import "compass/css3/border-radius"; @import "compass/css3/text-shadow"; +@import "compass/css3/images"; html{ height: 100%; } body{ height: 100%; } @@ -80,6 +82,7 @@ body{ background-color: #fff; } #main section, #mainAside aside { background-color: #fff; @include box-shadow(0 2px 5px rgba(0,0,0,0.2)); + margin-bottom: emCalc(10px); } #main section { @@ -87,9 +90,50 @@ body{ background-color: #fff; } header { overflow: hidden; margin-bottom: emCalc(7px); - h1 { margin-top: 0; margin-bottom: 0; } + h1, h2, h3 { margin-top: 0; margin-bottom: 0; } border-bottom: 1px solid darken(#fff, 5%); } + ul.article-list { + @extend .no-bullet; + margin-bottom: 0; + margin-left: 0; + li .article { + border: 1px solid darken(#fff, 5%); + padding: emCalc(7px); + margin: emCalc(7px); + overflow: hidden; + clear: both; + &:after { clear: both } + @include border-radius($global-radius); + @include background-image(linear-gradient(top,#fff,#f8f8f8)); + .summary { font-size: 0.9em; padding-bottom: emCalc(7px); } + footer{ + border-top: 1px solid darken(#fff, 5%); + ul { margin-left: 0; } + font-size: 0.8em; + color: darken($secondary-color, 10%); + abbr{ + color: darken($secondary-color, 10%); + } + a{ color: lighten($primary-color, 5%); } + } + header { + .tag-list{ + font-size: 0.7em; + margin-bottom: 0; + display: inline-block; + vertical-align: middle; + li a{ padding: emCalc(4px) emCalc(7px); } + } + span{ font-size: 0.8em; } + } + } + } + dl.article-list { + dt{ border-top: 1px solid darken(#fff, 5%); } + dt:first-child{ border: none; } + dd{ margin-bottom: emCalc(8px); } + } } #mainAside { @@ -103,7 +147,10 @@ body{ background-color: #fff; } } #mainFooter { + text-align: right; + margin-right: emCalc(10px); margin-top: emCalc(10px); + margin-bottom: emCalc(7px); color: #888; font-size: 0.8em; } @@ -114,6 +161,14 @@ body{ background-color: #fff; } padding: 0 10px; } } +// Google Search +.gsc-control-cse{ padding: 0 !important; + .gsc-input{ padding: 0 !important; } + .gsc-search-button { + display: none; + } + +} .tag-list { @include inline-list; diff --git a/static/sass/voltaicideas/pelican-red/_pygments.scss b/static/sass/voltaicideas/pelican-red/_pygments.scss new file mode 100644 index 0000000..3e2412d --- /dev/null +++ b/static/sass/voltaicideas/pelican-red/_pygments.scss @@ -0,0 +1,52 @@ +.codehilite{ + font-size: emCalc(14px); + padding: emCalc(7px); + background-color: lighten($secondary-color, 8%); + border: 1px solid $secondary-color; + font-family: 'Source Code Pro', 'Consolas', Monaco, monospace; + overflow: auto; + margin-bottom: emCalc(16px); + pre{ + tab-size: 4; + white-space: pre; + font-family: inherit; + } +} + +div.codehilitewrapper{ + overflow-x: auto; + overflow-y: hidden; + border: 1px solid $secondary-color; + margin-bottom: 1.25em; + table.codehilitetable{ + margin: 0; + border: none; + } + +} + +table.codehilitetable{ + td{ font-size: 1em; } + width: 100%; + .linenos{ + width: emCalc(30px); + padding: 0; + .linenodiv{ + padding: emCalc(7px); + overflow: auto; + font-family: 'Source Code Pro', 'Consolas', Monaco, monospace; + pre{ + font-family: inherit; + } + } + } + .code{ + padding: 0; + .codehilite{ + border-bottom: none; + border-top: none; + border-right: none; + margin: 0; + } + } +}