182 changed files with 11897 additions and 0 deletions
@ -0,0 +1,5 @@ |
|||||||
|
# v0.1.0 |
||||||
|
## 01/05/2017 |
||||||
|
|
||||||
|
1. [](#new) |
||||||
|
* ChangeLog started... |
||||||
@ -0,0 +1,21 @@ |
|||||||
|
The MIT License (MIT) |
||||||
|
|
||||||
|
Copyright (c) 2017 Clemens Richter |
||||||
|
|
||||||
|
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: |
||||||
|
|
||||||
|
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. |
||||||
@ -0,0 +1,7 @@ |
|||||||
|
# Church Theme |
||||||
|
|
||||||
|
The **Church** Theme is for [Grav CMS](http://github.com/getgrav/grav). This README.md file should be modified to describe the features, installation, configuration, and general usage of this theme. |
||||||
|
|
||||||
|
## Description |
||||||
|
|
||||||
|
theme for our church website |
||||||
@ -0,0 +1,30 @@ |
|||||||
|
name: Church |
||||||
|
version: 0.1.1 |
||||||
|
description: theme for our church website |
||||||
|
icon: rebel |
||||||
|
author: |
||||||
|
name: Clemens Richter |
||||||
|
email: csrichter@hotmail.de |
||||||
|
homepage: https://github.com/clemens-richter/grav-theme-church |
||||||
|
demo: http://baptisten-hohenacker.de |
||||||
|
keywords: grav, theme, etc |
||||||
|
bugs: https://github.com/clemens-richter/grav-theme-church/issues |
||||||
|
readme: https://github.com/clemens-richter/grav-theme-church/blob/develop/README.md |
||||||
|
license: MIT |
||||||
|
|
||||||
|
dependencies: |
||||||
|
- bootstrapper |
||||||
|
|
||||||
|
form: |
||||||
|
validation: loose |
||||||
|
fields: |
||||||
|
dropdown.enabled: |
||||||
|
type: toggle |
||||||
|
label: Dropdown in Menu |
||||||
|
highlight: 1 |
||||||
|
default: 1 |
||||||
|
options: |
||||||
|
1: PLUGIN_ADMIN.ENABLED |
||||||
|
0: PLUGIN_ADMIN.DISABLED |
||||||
|
validate: |
||||||
|
type: bool |
||||||
@ -0,0 +1,70 @@ |
|||||||
|
media: |
||||||
|
video: |
||||||
|
mp4: video/mp4 |
||||||
|
mov: video/quicktime |
||||||
|
m4v: video/x-m4v |
||||||
|
swf: video/x-flv |
||||||
|
|
||||||
|
image: |
||||||
|
jpg: image/jpeg |
||||||
|
jpeg: image/jpeg |
||||||
|
png: image/png |
||||||
|
gif: image/gif |
||||||
|
|
||||||
|
file: |
||||||
|
txt: text/plain |
||||||
|
doc: application/msword |
||||||
|
html: text/html |
||||||
|
pdf: application/pdf |
||||||
|
zip: application/zip |
||||||
|
gz: application/gzip |
||||||
|
|
||||||
|
form: |
||||||
|
key: filename |
||||||
|
fields: |
||||||
|
upload: |
||||||
|
type: upload |
||||||
|
label: Upload |
||||||
|
allow: |
||||||
|
@media.*.keys |
||||||
|
accept: |
||||||
|
@media.*.values |
||||||
|
|
||||||
|
filename: |
||||||
|
type: text |
||||||
|
label: Filename |
||||||
|
|
||||||
|
type: |
||||||
|
type: hidden |
||||||
|
default: video |
||||||
|
|
||||||
|
name: |
||||||
|
type: unset |
||||||
|
|
||||||
|
description: |
||||||
|
type: textarea |
||||||
|
label: Description |
||||||
|
|
||||||
|
url: |
||||||
|
type: unset |
||||||
|
|
||||||
|
path: |
||||||
|
type: unset |
||||||
|
|
||||||
|
thumb: |
||||||
|
type: unset |
||||||
|
|
||||||
|
width: |
||||||
|
type: text |
||||||
|
label: Width |
||||||
|
|
||||||
|
height: |
||||||
|
type: text |
||||||
|
label: Height |
||||||
|
|
||||||
|
mime: |
||||||
|
type: hidden |
||||||
|
default: 'application/octet-stream' |
||||||
|
|
||||||
|
modified: |
||||||
|
type: unset |
||||||
@ -0,0 +1,76 @@ |
|||||||
|
title: Blog |
||||||
|
@extends: |
||||||
|
type: default |
||||||
|
context: blueprints://pages |
||||||
|
|
||||||
|
child_type: item |
||||||
|
|
||||||
|
|
||||||
|
title: Default |
||||||
|
|
||||||
|
rules: |
||||||
|
slug: |
||||||
|
pattern: "[a-z][a-z0-9_\-]+" |
||||||
|
min: 2 |
||||||
|
max: 80 |
||||||
|
|
||||||
|
form: |
||||||
|
fields: |
||||||
|
tabs: |
||||||
|
type: tabs |
||||||
|
active: 1 |
||||||
|
|
||||||
|
fields: |
||||||
|
advanced: |
||||||
|
fields: |
||||||
|
overrides: |
||||||
|
fields: |
||||||
|
header.child_type: |
||||||
|
default: item |
||||||
|
blog: |
||||||
|
type: tab |
||||||
|
title: Blog List |
||||||
|
|
||||||
|
fields: |
||||||
|
header.content.items: |
||||||
|
type: select |
||||||
|
label: Items |
||||||
|
default: @self.children |
||||||
|
options: |
||||||
|
@self.children: Children |
||||||
|
|
||||||
|
header.content.limit: |
||||||
|
type: text |
||||||
|
label: Max Item Count |
||||||
|
default: 5 |
||||||
|
validate: |
||||||
|
required: true |
||||||
|
type: int |
||||||
|
min: 1 |
||||||
|
|
||||||
|
header.content.order.by: |
||||||
|
type: select |
||||||
|
label: Order By |
||||||
|
default: date |
||||||
|
options: |
||||||
|
folder: Folder |
||||||
|
title: Title |
||||||
|
date: Date |
||||||
|
default: Default |
||||||
|
|
||||||
|
header.content.order.dir: |
||||||
|
type: select |
||||||
|
label: Order |
||||||
|
default: desc |
||||||
|
options: |
||||||
|
asc: Ascending |
||||||
|
desc: Descending |
||||||
|
|
||||||
|
header.content.pagination: |
||||||
|
type: toggle |
||||||
|
label: Pagination |
||||||
|
highlight: 1 |
||||||
|
default: 1 |
||||||
|
options: |
||||||
|
1: Enabled |
||||||
|
0: Disabled |
||||||
@ -0,0 +1,2 @@ |
|||||||
|
title: Nopad |
||||||
|
@extends: default |
||||||
@ -0,0 +1,103 @@ |
|||||||
|
title: Item |
||||||
|
@extends: |
||||||
|
type: default |
||||||
|
context: blueprints://pages |
||||||
|
|
||||||
|
form: |
||||||
|
fields: |
||||||
|
tabs: |
||||||
|
|
||||||
|
fields: |
||||||
|
blog: |
||||||
|
type: tab |
||||||
|
title: Blog Item |
||||||
|
|
||||||
|
fields: |
||||||
|
|
||||||
|
header_image: |
||||||
|
type: section |
||||||
|
title: Header Image |
||||||
|
underline: true |
||||||
|
|
||||||
|
header.header_image: |
||||||
|
type: toggle |
||||||
|
toggleable: true |
||||||
|
label: Display Header Image |
||||||
|
help: Enabled displaying of a header image |
||||||
|
highlight: 1 |
||||||
|
options: |
||||||
|
1: Enabled |
||||||
|
0: Disabled |
||||||
|
|
||||||
|
header.header_image_file: |
||||||
|
type: text |
||||||
|
toggleable: true |
||||||
|
label: Image File |
||||||
|
help: image filename that exists in the page folder. If not provided, will use the first image found. |
||||||
|
placeholder: For example: myimage.jpg |
||||||
|
|
||||||
|
header.header_image_width: |
||||||
|
type: text |
||||||
|
toggleable: true |
||||||
|
label: Image Width |
||||||
|
size: small |
||||||
|
help: Header width in px |
||||||
|
placeholder: Default is 900 |
||||||
|
validate: |
||||||
|
type: int |
||||||
|
min: 0 |
||||||
|
max: 5000 |
||||||
|
|
||||||
|
header.header_image_height: |
||||||
|
type: text |
||||||
|
toggleable: true |
||||||
|
label: Image Height |
||||||
|
size: small |
||||||
|
help: Header height in px |
||||||
|
placeholder: Default is 300 |
||||||
|
validate: |
||||||
|
type: int |
||||||
|
min: 0 |
||||||
|
max: 5000 |
||||||
|
|
||||||
|
|
||||||
|
summary: |
||||||
|
type: section |
||||||
|
title: Summary |
||||||
|
underline: true |
||||||
|
|
||||||
|
|
||||||
|
header.summary.enabled: |
||||||
|
type: toggle |
||||||
|
toggleable: true |
||||||
|
label: Summary |
||||||
|
highlight: 1 |
||||||
|
options: |
||||||
|
1: Enabled |
||||||
|
0: Disabled |
||||||
|
|
||||||
|
header.summary.format: |
||||||
|
type: select |
||||||
|
toggleable: true |
||||||
|
label: Format |
||||||
|
classes: fancy |
||||||
|
options: |
||||||
|
'short': 'Use the first occurence of delimter or size' |
||||||
|
'long': 'Summary delimiter will be ignored' |
||||||
|
|
||||||
|
header.summary.size: |
||||||
|
type: text |
||||||
|
toggleable: true |
||||||
|
label: Size |
||||||
|
classes: large |
||||||
|
placeholder: 300 |
||||||
|
validate: |
||||||
|
type: int |
||||||
|
min: 1 |
||||||
|
|
||||||
|
header.summary.delimiter: |
||||||
|
type: text |
||||||
|
toggleable: true |
||||||
|
label: Summary delimiter |
||||||
|
classes: large |
||||||
|
placeholder: === |
||||||
@ -0,0 +1,40 @@ |
|||||||
|
title: Features |
||||||
|
@extends: default |
||||||
|
|
||||||
|
form: |
||||||
|
fields: |
||||||
|
tabs: |
||||||
|
fields: |
||||||
|
advanced: |
||||||
|
fields: |
||||||
|
columns: |
||||||
|
fields: |
||||||
|
column1: |
||||||
|
fields: |
||||||
|
name: |
||||||
|
default: modular/features |
||||||
|
@data-options: '\Grav\Common\Page\Pages::modularTypes' |
||||||
|
overrides: |
||||||
|
fields: |
||||||
|
header.template: |
||||||
|
default: modular/features |
||||||
|
@data-options: '\Grav\Common\Page\Pages::modularTypes' |
||||||
|
features: |
||||||
|
type: tab |
||||||
|
title: Features |
||||||
|
fields: |
||||||
|
header.features: |
||||||
|
name: features |
||||||
|
type: list |
||||||
|
label: Features |
||||||
|
|
||||||
|
fields: |
||||||
|
.icon: |
||||||
|
type: text |
||||||
|
label: Icon |
||||||
|
.header: |
||||||
|
type: text |
||||||
|
label: Header |
||||||
|
.text: |
||||||
|
type: text |
||||||
|
label: Text |
||||||
@ -0,0 +1,45 @@ |
|||||||
|
title: Showcase |
||||||
|
@extends: default |
||||||
|
|
||||||
|
form: |
||||||
|
fields: |
||||||
|
tabs: |
||||||
|
fields: |
||||||
|
advanced: |
||||||
|
fields: |
||||||
|
columns: |
||||||
|
fields: |
||||||
|
column1: |
||||||
|
fields: |
||||||
|
name: |
||||||
|
default: modular/showcase |
||||||
|
@data-options: '\Grav\Common\Page\Pages::modularTypes' |
||||||
|
overrides: |
||||||
|
fields: |
||||||
|
header.template: |
||||||
|
default: modular/showcase |
||||||
|
@data-options: '\Grav\Common\Page\Pages::modularTypes' |
||||||
|
buttons: |
||||||
|
type: tab |
||||||
|
title: Buttons |
||||||
|
fields: |
||||||
|
header.buttons: |
||||||
|
name: buttons |
||||||
|
type: list |
||||||
|
label: Buttons |
||||||
|
fields: |
||||||
|
.text: |
||||||
|
type: text |
||||||
|
label: Text |
||||||
|
.url: |
||||||
|
type: text |
||||||
|
label: URL |
||||||
|
.primary: |
||||||
|
type: toggle |
||||||
|
label: Primary |
||||||
|
highlight: 1 |
||||||
|
options: |
||||||
|
1: Yes |
||||||
|
0: No |
||||||
|
validate: |
||||||
|
type: bool |
||||||
@ -0,0 +1,34 @@ |
|||||||
|
title: Text |
||||||
|
@extends: default |
||||||
|
|
||||||
|
form: |
||||||
|
fields: |
||||||
|
tabs: |
||||||
|
fields: |
||||||
|
advanced: |
||||||
|
fields: |
||||||
|
columns: |
||||||
|
fields: |
||||||
|
column1: |
||||||
|
fields: |
||||||
|
name: |
||||||
|
default: modular/text |
||||||
|
@data-options: '\Grav\Common\Page\Pages::modularTypes' |
||||||
|
overrides: |
||||||
|
fields: |
||||||
|
header.template: |
||||||
|
default: modular/text |
||||||
|
@data-options: '\Grav\Common\Page\Pages::modularTypes' |
||||||
|
content: |
||||||
|
fields: |
||||||
|
uploads: |
||||||
|
label: Page Media (first one will be displayed next to your content) |
||||||
|
header.image_align: |
||||||
|
type: select |
||||||
|
label: Image position |
||||||
|
classes: fancy |
||||||
|
default: left |
||||||
|
options: |
||||||
|
'left': 'Left' |
||||||
|
'right': 'Right' |
||||||
|
type: |
||||||
@ -0,0 +1,10 @@ |
|||||||
|
<?php |
||||||
|
namespace Grav\Theme; |
||||||
|
|
||||||
|
use Grav\Common\Theme; |
||||||
|
|
||||||
|
class Church extends Theme |
||||||
|
{ |
||||||
|
// Access plugin events in this class |
||||||
|
public $load_bootstrapper_plugin = true; |
||||||
|
} |
||||||
@ -0,0 +1,3 @@ |
|||||||
|
enabled: true |
||||||
|
dropdown: |
||||||
|
enabled: true |
||||||
@ -0,0 +1,64 @@ |
|||||||
|
/*override bootstraps default column ordering -> sidebar on left moves down on small screen*/ |
||||||
|
@media (min-width: 768px){ |
||||||
|
.blog-main { |
||||||
|
float: right; |
||||||
|
} |
||||||
|
} |
||||||
|
/*custom content style*/ |
||||||
|
//for spam protection in mailto links // doesn't work for some reason |
||||||
|
span.displaynone { display:none; } |
||||||
|
|
||||||
|
//for list in links page |
||||||
|
ul{list-style: none;} |
||||||
|
|
||||||
|
.shiftRight |
||||||
|
{ |
||||||
|
margin-left: 40px; |
||||||
|
} |
||||||
|
/*footer stuff*/ |
||||||
|
#footer |
||||||
|
{ |
||||||
|
background-color: #F5F5F5; |
||||||
|
border-top: 1px solid #E3E3E3; |
||||||
|
padding-top: 20px; |
||||||
|
min-height: 150px; |
||||||
|
} |
||||||
|
#footer h1, #footer h2, #footer h3, #footer p, #footer a, #footer em, #footer i |
||||||
|
{ |
||||||
|
color: #8b8b8b; |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer a |
||||||
|
{ |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer a:hover |
||||||
|
{ |
||||||
|
color: #444; |
||||||
|
text-decoration: none; |
||||||
|
} |
||||||
|
|
||||||
|
#footer ul |
||||||
|
{ |
||||||
|
list-style-type: none; |
||||||
|
display: inline; |
||||||
|
margin: 0px; |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer ul li |
||||||
|
{ |
||||||
|
display: inline-block; |
||||||
|
margin: 0px 0px 15px 0px; |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer ul li a |
||||||
|
{ |
||||||
|
margin-right: 25px; |
||||||
|
padding: 0px; |
||||||
|
display: inline-block; |
||||||
|
} |
||||||
|
|
||||||
@ -0,0 +1,48 @@ |
|||||||
|
/*footer stuff*/ |
||||||
|
. |
||||||
|
#footer |
||||||
|
{ |
||||||
|
background-color: #F5F5F5; |
||||||
|
border-top: 1px solid #E3E3E3; |
||||||
|
padding-top: 20px; |
||||||
|
min-height: 150px; |
||||||
|
} |
||||||
|
#footer h1, #footer h2, #footer h3, #footer p, #footer a, #footer em, #footer i |
||||||
|
{ |
||||||
|
color: #8b8b8b; |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer a |
||||||
|
{ |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer a:hover |
||||||
|
{ |
||||||
|
color: #444; |
||||||
|
text-decoration: none; |
||||||
|
} |
||||||
|
|
||||||
|
#footer ul |
||||||
|
{ |
||||||
|
list-style-type: none; |
||||||
|
display: inline; |
||||||
|
margin: 0px; |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer ul li |
||||||
|
{ |
||||||
|
display: inline-block; |
||||||
|
margin: 0px 0px 15px 0px; |
||||||
|
line-height: normal; |
||||||
|
} |
||||||
|
|
||||||
|
#footer ul li a |
||||||
|
{ |
||||||
|
margin-right: 25px; |
||||||
|
padding: 0px; |
||||||
|
display: inline-block; |
||||||
|
} |
||||||
|
|
||||||
@ -0,0 +1,398 @@ |
|||||||
|
/*! |
||||||
|
* Bootstrap v3.3.7 (http://getbootstrap.com) |
||||||
|
* Copyright 2011-2016 Twitter, Inc. |
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) |
||||||
|
*//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css |
||||||
|
critical rules extracted with https://jonassebastianohlsson.com/criticalpathcssgenerator/ |
||||||
|
*/ |
||||||
|
html { |
||||||
|
font-family: sans-serif; |
||||||
|
-webkit-text-size-adjust: 100%; |
||||||
|
-ms-text-size-adjust: 100% |
||||||
|
} |
||||||
|
|
||||||
|
body { |
||||||
|
margin: 0; |
||||||
|
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; |
||||||
|
font-size: 16px; |
||||||
|
line-height: 1.42857143; |
||||||
|
color: #333; |
||||||
|
background-color: #fff |
||||||
|
} |
||||||
|
|
||||||
|
nav { |
||||||
|
display: block |
||||||
|
} |
||||||
|
|
||||||
|
a { |
||||||
|
background-color: transparent; |
||||||
|
color: #337ab7; |
||||||
|
text-decoration: none |
||||||
|
} |
||||||
|
|
||||||
|
b { |
||||||
|
font-weight: bold |
||||||
|
} |
||||||
|
|
||||||
|
img { |
||||||
|
border: 0 |
||||||
|
vertical-align: middle |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
* { |
||||||
|
-webkit-box-sizing: border-box; |
||||||
|
-moz-box-sizing: border-box; |
||||||
|
box-sizing: border-box |
||||||
|
} |
||||||
|
|
||||||
|
*:before,*:after { |
||||||
|
-webkit-box-sizing: border-box; |
||||||
|
-moz-box-sizing: border-box; |
||||||
|
box-sizing: border-box |
||||||
|
} |
||||||
|
|
||||||
|
h2 { |
||||||
|
font-family: inherit; |
||||||
|
font-weight: 500; |
||||||
|
line-height: 1.1; |
||||||
|
color: inherit; |
||||||
|
margin-top: 20px; |
||||||
|
margin-bottom: 10px; |
||||||
|
font-size: 30px; |
||||||
|
} |
||||||
|
|
||||||
|
p { |
||||||
|
margin: 0 0 10px |
||||||
|
} |
||||||
|
|
||||||
|
ul { |
||||||
|
margin-top: 0; |
||||||
|
margin-bottom: 10px |
||||||
|
} |
||||||
|
|
||||||
|
ul ul { |
||||||
|
margin-bottom: 0 |
||||||
|
} |
||||||
|
|
||||||
|
.container { |
||||||
|
padding-right: 15px; |
||||||
|
padding-left: 15px; |
||||||
|
margin-right: auto; |
||||||
|
margin-left: auto |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.container { |
||||||
|
width:750px |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 992px) { |
||||||
|
.container { |
||||||
|
width:970px |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 1200px) { |
||||||
|
.container { |
||||||
|
width:1170px |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.row { |
||||||
|
margin-right: -15px; |
||||||
|
margin-left: -15px |
||||||
|
} |
||||||
|
|
||||||
|
.col-sm-4,.col-sm-8 { |
||||||
|
position: relative; |
||||||
|
min-height: 1px; |
||||||
|
padding-right: 15px; |
||||||
|
padding-left: 15px |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.col-sm-4,.col-sm-8 { |
||||||
|
float:left |
||||||
|
} |
||||||
|
|
||||||
|
.col-sm-8 { |
||||||
|
width: 66.66666667% |
||||||
|
} |
||||||
|
|
||||||
|
.col-sm-4 { |
||||||
|
width: 33.33333333% |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.collapse { |
||||||
|
display: none |
||||||
|
} |
||||||
|
|
||||||
|
.caret { |
||||||
|
display: inline-block; |
||||||
|
width: 0; |
||||||
|
height: 0; |
||||||
|
margin-left: 2px; |
||||||
|
vertical-align: middle; |
||||||
|
border-top: 4px dashed; |
||||||
|
border-top: 4px solid \9; |
||||||
|
border-right: 4px solid transparent; |
||||||
|
border-left: 4px solid transparent |
||||||
|
} |
||||||
|
|
||||||
|
.dropdown-menu .divider { |
||||||
|
height: 1px; |
||||||
|
margin: 9px 0; |
||||||
|
overflow: hidden; |
||||||
|
background-color: #e5e5e5 |
||||||
|
} |
||||||
|
|
||||||
|
.dropdown-menu>li>a { |
||||||
|
display: block; |
||||||
|
padding: 3px 20px; |
||||||
|
clear: both; |
||||||
|
font-weight: normal; |
||||||
|
line-height: 1.42857143; |
||||||
|
color: #333; |
||||||
|
white-space: nowrap |
||||||
|
} |
||||||
|
|
||||||
|
.nav { |
||||||
|
padding-left: 0; |
||||||
|
margin-bottom: 0; |
||||||
|
list-style: none |
||||||
|
} |
||||||
|
|
||||||
|
.nav>li { |
||||||
|
position: relative; |
||||||
|
display: block |
||||||
|
} |
||||||
|
|
||||||
|
.nav>li>a { |
||||||
|
position: relative; |
||||||
|
display: block; |
||||||
|
padding: 10px 15px |
||||||
|
} |
||||||
|
|
||||||
|
.navbar { |
||||||
|
position: relative; |
||||||
|
min-height: 50px; |
||||||
|
margin-bottom: 20px; |
||||||
|
border: 1px solid transparent |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
.navbar-collapse { |
||||||
|
padding-right: 15px; |
||||||
|
padding-left: 15px; |
||||||
|
overflow-x: visible; |
||||||
|
-webkit-overflow-scrolling: touch; |
||||||
|
border-top: 1px solid transparent; |
||||||
|
-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1); |
||||||
|
box-shadow: inset 0 1px 0 rgba(255,255,255,.1) |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.navbar-collapse { |
||||||
|
width:auto; |
||||||
|
border-top: 0; |
||||||
|
-webkit-box-shadow: none; |
||||||
|
box-shadow: none |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-collapse.collapse { |
||||||
|
display: block!important; |
||||||
|
height: auto!important; |
||||||
|
padding-bottom: 0; |
||||||
|
overflow: visible!important |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-static-top .navbar-collapse { |
||||||
|
padding-right: 0; |
||||||
|
padding-left: 0 |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
.container>.navbar-header,.container>.navbar-collapse { |
||||||
|
margin-right: -15px; |
||||||
|
margin-left: -15px |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.container>.navbar-header,.container>.navbar-collapse { |
||||||
|
margin-right:0; |
||||||
|
margin-left: 0 |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-static-top { |
||||||
|
z-index: 1000; |
||||||
|
border-width: 0 0 1px |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.navbar-static-top { |
||||||
|
border-radius:0 |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-brand { |
||||||
|
float: left; |
||||||
|
height: 50px; |
||||||
|
padding: 15px 15px; |
||||||
|
font-size: 18px; |
||||||
|
line-height: 20px |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.navbar>.container .navbar-brand { |
||||||
|
margin-left:-15px |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-toggle { |
||||||
|
position: relative; |
||||||
|
float: right; |
||||||
|
padding: 9px 10px; |
||||||
|
margin-top: 8px; |
||||||
|
margin-right: 15px; |
||||||
|
margin-bottom: 8px; |
||||||
|
background-color: transparent; |
||||||
|
background-image: none; |
||||||
|
border: 1px solid transparent; |
||||||
|
border-radius: 4px |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-toggle .icon-bar { |
||||||
|
display: block; |
||||||
|
width: 22px; |
||||||
|
height: 2px; |
||||||
|
border-radius: 1px |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-toggle .icon-bar+.icon-bar { |
||||||
|
margin-top: 4px |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.navbar-toggle { |
||||||
|
display:none |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-nav { |
||||||
|
margin: 7.5px -15px |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-nav>li>a { |
||||||
|
padding-top: 10px; |
||||||
|
padding-bottom: 10px; |
||||||
|
line-height: 20px |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.navbar-nav { |
||||||
|
float:left; |
||||||
|
margin: 0 |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-nav>li { |
||||||
|
float: left |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-nav>li>a { |
||||||
|
padding-top: 15px; |
||||||
|
padding-bottom: 15px |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-nav>li>.dropdown-menu { |
||||||
|
display:none; |
||||||
|
margin-top: 0; |
||||||
|
border-top-left-radius: 0; |
||||||
|
border-top-right-radius: 0 |
||||||
|
} |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.navbar-right { |
||||||
|
float:right!important; |
||||||
|
margin-right: -15px |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default { |
||||||
|
background-color: #f8f8f8; |
||||||
|
border-color: #e7e7e7 |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default .navbar-brand { |
||||||
|
color: #777 |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default .navbar-nav>li>a { |
||||||
|
color: #777 |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default .navbar-nav>.active>a { |
||||||
|
color: #555; |
||||||
|
background-color: #e7e7e7 |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default .navbar-toggle { |
||||||
|
border-color: #ddd |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default .navbar-toggle .icon-bar { |
||||||
|
background-color: #888 |
||||||
|
} |
||||||
|
|
||||||
|
.navbar-default .navbar-collapse { |
||||||
|
border-color: #e7e7e7 |
||||||
|
} |
||||||
|
|
||||||
|
.well { |
||||||
|
min-height: 20px; |
||||||
|
padding: 19px; |
||||||
|
margin-bottom: 20px; |
||||||
|
background-color: #f5f5f5; |
||||||
|
border: 1px solid #e3e3e3; |
||||||
|
border-radius: 4px; |
||||||
|
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05); |
||||||
|
box-shadow: inset 0 1px 1px rgba(0,0,0,.05) |
||||||
|
} |
||||||
|
|
||||||
|
.container:before,.container:after,.row:before,.row:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after { |
||||||
|
display: table; |
||||||
|
content: " " |
||||||
|
} |
||||||
|
|
||||||
|
.container:after,.row:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after { |
||||||
|
clear: both |
||||||
|
} |
||||||
|
|
||||||
|
@-ms-viewport { |
||||||
|
width: device-width |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*override bootstraps default column ordering -> sidebar on left moves down on small screen*/ |
||||||
|
@media (min-width: 768px){ |
||||||
|
.blog-main { |
||||||
|
float: right; |
||||||
|
} |
||||||
|
} |
||||||
|
/*custom content style*/ |
||||||
|
//for spam protection in mailto links |
||||||
|
span.displaynone { display:none; } |
||||||
|
|
||||||
|
//for list in links page |
||||||
|
ul{list-style: none;} |
||||||
|
|
||||||
|
.shiftRight |
||||||
|
{ |
||||||
|
margin-left: 40px; |
||||||
|
} |
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1,38 @@ |
|||||||
|
/*.thumbnail { |
||||||
|
max-width: 40%; |
||||||
|
}*/ |
||||||
|
|
||||||
|
.italic { font-style: italic; } |
||||||
|
.small { font-size: 0.8em; } |
||||||
|
|
||||||
|
/** LIGHTBOX MARKUP **/ |
||||||
|
|
||||||
|
.lightbox { |
||||||
|
/** Default lightbox to hidden */ |
||||||
|
display: none; |
||||||
|
|
||||||
|
/** Position and style */ |
||||||
|
position: fixed; |
||||||
|
z-index: 999; |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
text-align: center; |
||||||
|
top: 0; |
||||||
|
left: 0; |
||||||
|
background: rgba(0,0,0,0.8); |
||||||
|
} |
||||||
|
|
||||||
|
.lightbox img { |
||||||
|
/** Pad the lightbox image */ |
||||||
|
max-width: 90%; |
||||||
|
max-height: 80%; |
||||||
|
margin-top: 2%; |
||||||
|
} |
||||||
|
|
||||||
|
.lightbox:target { |
||||||
|
/** Remove default browser outline */ |
||||||
|
outline: none; |
||||||
|
|
||||||
|
/** Unhide lightbox **/ |
||||||
|
display: block; |
||||||
|
} |
||||||
@ -0,0 +1,63 @@ |
|||||||
|
/*.navbar-default .navbar-nav>.open>a, .navbar-default .navbar-nav>.open>a:focus, .navbar-default .navbar-nav>.open>a:hover { |
||||||
|
color: #555; |
||||||
|
background-color: #e7e7e7; |
||||||
|
}*/ |
||||||
|
|
||||||
|
|
||||||
|
#navbar-toggle-cbox:checked ~ .collapse { |
||||||
|
display: block; |
||||||
|
} |
||||||
|
|
||||||
|
#navbar-toggle-cbox { |
||||||
|
display:none |
||||||
|
} |
||||||
|
/*.dropdown:hover>.dropdown-menu { |
||||||
|
display: block; |
||||||
|
}*/ |
||||||
|
.dropdown-toggle-cbox:checked ~ .dropdown-menu{ |
||||||
|
display: block; |
||||||
|
} |
||||||
|
|
||||||
|
@media (max-width: 767px){ |
||||||
|
.dropdown-toggle-cbox:checked ~ .dropdown-menu { |
||||||
|
position: static; |
||||||
|
float: none; |
||||||
|
width: auto; |
||||||
|
margin-top: 0; |
||||||
|
background-color: transparent; |
||||||
|
border: 0; |
||||||
|
-webkit-box-shadow: none; |
||||||
|
box-shadow: none; |
||||||
|
}} |
||||||
|
.dropdown-toggle-cbox { |
||||||
|
display:none |
||||||
|
} |
||||||
|
|
||||||
|
.dropdown-toggle { |
||||||
|
padding-top: 10px; |
||||||
|
padding-bottom: 10px; |
||||||
|
line-height: 20px; |
||||||
|
padding: 10px 15px; |
||||||
|
margin-bottom: 0; |
||||||
|
font-weight: normal; |
||||||
|
color: #777; |
||||||
|
display: block; |
||||||
|
} |
||||||
|
.navbar-default .navbar-nav>.active>.dropdown-toggle { |
||||||
|
color: #555; |
||||||
|
background-color: #e7e7e7; |
||||||
|
} |
||||||
|
.dropdown-toggle:focus, .dropdown-toggle:hover{ |
||||||
|
color: #333; |
||||||
|
background-color: transparent; |
||||||
|
} |
||||||
|
.dropdown-toggle-cbox:checked + .dropdown-toggle{ |
||||||
|
color: #555; |
||||||
|
background-color: #e7e7e7; |
||||||
|
} |
||||||
|
@media (min-width: 768px){ |
||||||
|
.dropdown-toggle{ |
||||||
|
padding-top: 15px; |
||||||
|
padding-bottom: 15px; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,175 @@ |
|||||||
|
/* Core Stuff */ |
||||||
|
* { |
||||||
|
-webkit-box-sizing: border-box; |
||||||
|
-moz-box-sizing: border-box; |
||||||
|
box-sizing: border-box; |
||||||
|
} |
||||||
|
|
||||||
|
body { |
||||||
|
font-size: 1rem; |
||||||
|
line-height: 1.7; |
||||||
|
color: #606d6e; |
||||||
|
} |
||||||
|
|
||||||
|
h1, |
||||||
|
h2, |
||||||
|
h3, |
||||||
|
h4, |
||||||
|
h5, |
||||||
|
h6 { |
||||||
|
color: #454B4D; |
||||||
|
} |
||||||
|
|
||||||
|
a { |
||||||
|
color: #1F8CD6; |
||||||
|
text-decoration: none; |
||||||
|
} |
||||||
|
|
||||||
|
a:hover { |
||||||
|
color: #175E91; |
||||||
|
} |
||||||
|
|
||||||
|
pre { |
||||||
|
background: #F0F0F0; |
||||||
|
margin: 1rem 0; |
||||||
|
border-radius: 2px; |
||||||
|
} |
||||||
|
|
||||||
|
blockquote { |
||||||
|
border-left: 10px solid #eee; |
||||||
|
margin: 0; |
||||||
|
padding: 0 2rem; |
||||||
|
} |
||||||
|
|
||||||
|
/* Utility Classes */ |
||||||
|
.wrapper { |
||||||
|
margin: 0 3rem; |
||||||
|
} |
||||||
|
|
||||||
|
.padding { |
||||||
|
padding: 3rem 1rem; |
||||||
|
} |
||||||
|
|
||||||
|
.left { |
||||||
|
float: left; |
||||||
|
} |
||||||
|
|
||||||
|
.right { |
||||||
|
float: right |
||||||
|
} |
||||||
|
|
||||||
|
.text-center { |
||||||
|
text-align: center; |
||||||
|
} |
||||||
|
|
||||||
|
.text-right { |
||||||
|
text-align: right; |
||||||
|
} |
||||||
|
|
||||||
|
.text-left { |
||||||
|
text-align: left; |
||||||
|
} |
||||||
|
|
||||||
|
/* Content Styling */ |
||||||
|
.header .padding { |
||||||
|
padding: 1rem 0; |
||||||
|
} |
||||||
|
|
||||||
|
.header { |
||||||
|
background-color: #1F8DD6; |
||||||
|
color: #eee; |
||||||
|
} |
||||||
|
|
||||||
|
.header a { |
||||||
|
color: #fff; |
||||||
|
} |
||||||
|
|
||||||
|
.header .logo { |
||||||
|
font-size: 1.7rem; |
||||||
|
text-transform: uppercase; |
||||||
|
} |
||||||
|
|
||||||
|
.footer { |
||||||
|
background-color: #eee; |
||||||
|
} |
||||||
|
|
||||||
|
/* Menu Settings */ |
||||||
|
.main-nav ul { |
||||||
|
text-align: center; |
||||||
|
letter-spacing: -1em; |
||||||
|
margin: 0; |
||||||
|
padding: 0; |
||||||
|
} |
||||||
|
|
||||||
|
.main-nav ul li { |
||||||
|
display: inline-block; |
||||||
|
letter-spacing: normal; |
||||||
|
} |
||||||
|
|
||||||
|
.main-nav ul li a { |
||||||
|
position: relative; |
||||||
|
display: block; |
||||||
|
line-height: 45px; |
||||||
|
color: #fff; |
||||||
|
padding: 0 20px; |
||||||
|
white-space: nowrap; |
||||||
|
} |
||||||
|
|
||||||
|
.main-nav > ul > li > a { |
||||||
|
border-radius: 2px; |
||||||
|
} |
||||||
|
|
||||||
|
/*Active dropdown nav item */ |
||||||
|
.main-nav ul li:hover > a { |
||||||
|
background-color: #175E91; |
||||||
|
} |
||||||
|
|
||||||
|
/* Selected Dropdown nav item */ |
||||||
|
.main-nav ul li.selected > a { |
||||||
|
background-color: #fff; |
||||||
|
color: #175E91; |
||||||
|
} |
||||||
|
|
||||||
|
/* Dropdown CSS */ |
||||||
|
.main-nav ul li {position: relative;} |
||||||
|
|
||||||
|
.main-nav ul li ul { |
||||||
|
position: absolute; |
||||||
|
background-color: #1F8DD6; |
||||||
|
min-width: 100%; |
||||||
|
text-align: left; |
||||||
|
z-index: 999; |
||||||
|
|
||||||
|
display: none; |
||||||
|
} |
||||||
|
.main-nav ul li ul li { |
||||||
|
display: block; |
||||||
|
} |
||||||
|
|
||||||
|
/* Dropdown CSS */ |
||||||
|
.main-nav ul li ul ul { |
||||||
|
left: 100%; |
||||||
|
top: 0; |
||||||
|
} |
||||||
|
|
||||||
|
/* Active on Hover */ |
||||||
|
.main-nav li:hover > ul { |
||||||
|
display: block; |
||||||
|
} |
||||||
|
|
||||||
|
/* Child Indicator */ |
||||||
|
.main-nav .has-children > a { |
||||||
|
padding-right: 30px; |
||||||
|
} |
||||||
|
.main-nav .has-children > a:after { |
||||||
|
font-family: FontAwesome; |
||||||
|
content: '\f107'; |
||||||
|
position: absolute; |
||||||
|
display: inline-block; |
||||||
|
right: 8px; |
||||||
|
top: 0; |
||||||
|
} |
||||||
|
|
||||||
|
.main-nav .has-children .has-children > a:after { |
||||||
|
content: '\f105'; |
||||||
|
} |
||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 248 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 62 KiB |
Binary file not shown.
Binary file not shown.
@ -0,0 +1,2 @@ |
|||||||
|
#!/bin/sh |
||||||
|
gosass -input scss/ -output css-compiled/ -sourcemap -watch -style compressed |
||||||
@ -0,0 +1,15 @@ |
|||||||
|
{ |
||||||
|
"project":"grav-theme-bootstrap", |
||||||
|
"platforms":{ |
||||||
|
"grav":{ |
||||||
|
"nodes":{ |
||||||
|
"theme":[ |
||||||
|
{ |
||||||
|
"source":"/", |
||||||
|
"destination":"/user/themes/bootstrap" |
||||||
|
} |
||||||
|
] |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
After Width: | Height: | Size: 8.5 KiB |
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,2 @@ |
|||||||
|
// Native Javascript for Bootstrap 3 v2.0.23 | © dnp_theme | MIT-License
|
||||||
|
!function(t,e){if("function"==typeof define&&define.amd)define([],e);else if("object"==typeof module&&module.exports)module.exports=e();else{var n=e();t.Collapse=n.Collapse}}(this,function(){"use strict";var t="undefined"!=typeof global?global:this||window,e=document,n=e.documentElement,i=t.BSN={},o=i.supports=[],a="Transition",l="Webkit",s="style",r=(n[s],l+a in n[s]||a.toLowerCase()in n[s]),c=l+a in n[s]?l.toLowerCase()+a+"End":a.toLowerCase()+"end",u=l+"Duration"in n[s]?l.toLowerCase()+a+"Duration":a.toLowerCase()+"Duration",f=function(t,e){t.classList.add(e)},d=function(t,e){t.classList.remove(e)},p=function(t,e){return t.classList.contains(e)},g=function(t,n){var i=n||e;return"object"==typeof t?t:i.querySelector(t)},h=function(t,n){var i=n.charAt(0),o=n.substr(1);if("."===i){for(;t&&t!==e;t=t.parentNode)if(null!==g(n,t.parentNode)&&p(t,o))return t}else if("#"===i)for(;t&&t!==e;t=t.parentNode)if(t.id===o)return t;return!1},m=function(t,e,n){t.addEventListener(e,n,!1)},v=function(t,e,n){t.removeEventListener(e,n,!1)},A=function(t,e,n){m(t,e,function i(o){n(o),v(t,e,i)})},b=function(e){var n=t.getComputedStyle(e)[u];return n=parseFloat(n),(n="number"!=typeof n||isNaN(n)?0:1e3*n)+50},C=function(t,e){var n=0,i=b(t);r&&A(t,c,function(t){e(t),n=1}),setTimeout(function(){!n&&e()},i)},w=function(t,e,n){var i=new CustomEvent(t+".bs."+e);i.relatedTarget=n,this.dispatchEvent(i)};i.version="2.0.23";var L=function(t,e){t=g(t),e=e||{};var n,i,o=null,a=null,l=this,r=t.getAttribute("data-parent"),c=function(t,e){w.call(t,"show","collapse"),t.isAnimating=!0,f(t,"collapsing"),d(t,"collapse"),t[s].height=t.scrollHeight+"px",C(t,function(){t.isAnimating=!1,t.setAttribute("aria-expanded","true"),e.setAttribute("aria-expanded","true"),d(t,"collapsing"),f(t,"collapse"),f(t,"in"),t[s].height="",w.call(t,"shown","collapse")})},u=function(t,e){w.call(t,"hide","collapse"),t.isAnimating=!0,t[s].height=t.scrollHeight+"px",d(t,"collapse"),d(t,"in"),f(t,"collapsing"),t.offsetWidth,t[s].height="0px",C(t,function(){t.isAnimating=!1,t.setAttribute("aria-expanded","false"),e.setAttribute("aria-expanded","false"),d(t,"collapsing"),f(t,"collapse"),t[s].height="",w.call(t,"hidden","collapse")})};this.toggle=function(t){t.preventDefault(),p(a,"in")?l.hide():l.show()},this.hide=function(){a.isAnimating||(u(a,t),f(t,"collapsed"))},this.show=function(){o&&(n=g(".collapse.in",o),i=n&&(g('[data-toggle="collapse"][data-target="#'+n.id+'"]',o)||g('[data-toggle="collapse"][href="#'+n.id+'"]',o))),(!a.isAnimating||n&&!n.isAnimating)&&(i&&n!==a&&(u(n,i),f(i,"collapsed")),c(a,t),d(t,"collapsed"))},"Collapse"in t||m(t,"click",l.toggle),a=function(){var e=t.href&&t.getAttribute("href"),n=t.getAttribute("data-target"),i=e||n&&"#"===n.charAt(0)&&n;return i&&g(i)}(),a.isAnimating=!1,o=g(e.parent)||r&&h(t,r),t.Collapse=l};o.push(["Collapse",L,'[data-toggle="collapse"]']);var y=function(t,e){for(var n=0,i=e.length;n<i;n++)new t(e[n])},x=i.initCallback=function(t){t=t||e;for(var n=0,i=o.length;n<i;n++)y(o[n][1],t.querySelectorAll(o[n][2]))};return e.body?x():m(e,"DOMContentLoaded",function(){x()}),{Collapse:L}}); |
||||||
@ -0,0 +1,2 @@ |
|||||||
|
// Native Javascript for Bootstrap 3 v2.0.23 | © dnp_theme | MIT-License
|
||||||
|
!function(e,n){if("function"==typeof define&&define.amd)define([],n);else if("object"==typeof module&&module.exports)module.exports=n();else{var t=n();e.Dropdown=t.Dropdown}}(this,function(){"use strict";var e="undefined"!=typeof global?global:this||window,n=document,t=n.documentElement,o=e.BSN={},i=o.supports=[],r="Transition",a="Webkit",c="style",d=(t[c],a+r in t[c]||(r.toLowerCase(),t[c]),a+r in t[c]?a.toLowerCase():r.toLowerCase(),a+"Duration"in t[c]?a.toLowerCase():r.toLowerCase(),function(e){e.focus?e.focus():e.setActive()}),l=function(e,n){e.classList.add(n)},s=function(e,n){e.classList.remove(n)},u=function(e,n){return e.classList.contains(n)},f=function(e,t){var o=t||n;return"object"==typeof e?e:o.querySelector(e)},p=function(e,n,t){e.addEventListener(n,t,!1)},h=function(e,n,t){e.removeEventListener(n,t,!1)},w=function(e,n,t){var o=new CustomEvent(e+".bs."+n);o.relatedTarget=t,this.dispatchEvent(o)};o.version="2.0.23";var v=function(e,t){e=f(e),this.persist=!0===t||"true"===e.getAttribute("data-persist")||!1;var o=this,i=e.parentNode,r="open",a=null,c=f(".dropdown-menu",i),v=function(){for(var e=c.children,n=[],t=0;t<e.length;t++)e[t].children.length&&"A"===e[t].children[0].tagName&&n.push(e[t]);return n}(),g=function(e){(e.href&&"#"===e.href.slice(-1)||e.parentNode&&e.parentNode.href&&"#"===e.parentNode.href.slice(-1))&&this.preventDefault()},m=function(){var t=e[r]?p:h;t(n,"click",b),t(n,"keydown",D),t(n,"keyup",N)},b=function(n){var t=n.target,i=t&&("Dropdown"in t||"Dropdown"in t.parentNode);(t!==c&&!c.contains(t)||!o.persist&&!i)&&(a=t===e||e.contains(t)?e:null,k(),g.call(n,t))},y=function(n){a=e,L(),g.call(n,n.target)},D=function(e){var n=e.which||e.keyCode;38!==n&&40!==n||e.preventDefault()},N=function(t){var i=t.which||t.keyCode,l=n.activeElement,s=v.indexOf(l.parentNode),u=l===e,f=c.contains(l),p=l.parentNode.parentNode===c;(p||u)&&(s=u?0:38===i?s>1?s-1:0:40===i&&s<v.length-1?s+1:s,v[s]&&d(v[s].children[0])),(v.length&&p||!v.length&&(f||u)||!f)&&e[r]&&27===i&&(o.toggle(),a=null)},L=function(){w.call(i,"show","dropdown",a),l(i,r),c.setAttribute("aria-expanded",!0),w.call(i,"shown","dropdown",a),e[r]=!0,h(e,"click",y),setTimeout(function(){d(c.getElementsByTagName("INPUT")[0]||e),m()},1)},k=function(){w.call(i,"hide","dropdown",a),s(i,r),c.setAttribute("aria-expanded",!1),w.call(i,"hidden","dropdown",a),e[r]=!1,m(),d(e),setTimeout(function(){p(e,"click",y)},1)};e[r]=!1,this.toggle=function(){u(i,r)&&e[r]?k():L()},"Dropdown"in e||(!1 in c&&c.setAttribute("tabindex","0"),p(e,"click",y)),e.Dropdown=o};i.push(["Dropdown",v,'[data-toggle="dropdown"]']);var g=function(e,n){for(var t=0,o=n.length;t<o;t++)new e(n[t])},m=o.initCallback=function(e){e=e||n;for(var t=0,o=i.length;t<o;t++)g(i[t][1],e.querySelectorAll(i[t][2]))};return n.body?m():p(n,"DOMContentLoaded",function(){m()}),{Dropdown:v}}); |
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -0,0 +1,20 @@ |
|||||||
|
function xor_crypt(data) { |
||||||
|
key="aodiajsoidjwqirqpwoewqpoekdpsaojrqoiwejwqoieposajdsndkjwqeoqiwjeidpsaoidjoqwiejpi"; |
||||||
|
res="" |
||||||
|
for (i = 0; i < data.length; i++) { |
||||||
|
outstr= String.fromCharCode(data.charCodeAt(i) ^ key.charCodeAt(i)); |
||||||
|
res+=outstr; |
||||||
|
} |
||||||
|
return res; |
||||||
|
} |
||||||
|
|
||||||
|
function dokumentGeladen (e) { |
||||||
|
//alert("Das Ereignis " + e.type + " ist passiert.")
|
||||||
|
a=document.getElementsByClassName("mailto"); |
||||||
|
for (val of a) { |
||||||
|
instr=atob(val.getAttribute("href_crypt")); |
||||||
|
val.href=xor_crypt(instr);} |
||||||
|
|
||||||
|
} |
||||||
|
document.addEventListener("load", dokumentGeladen, false); |
||||||
|
document.addEventListener("DOMContentLoaded", dokumentGeladen, false); |
||||||
@ -0,0 +1,4 @@ |
|||||||
|
/** |
||||||
|
* @preserve HTML5 Shiv prev3.7.1 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed |
||||||
|
*/ |
||||||
|
!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=x.elements;return"string"==typeof a?a.split(" "):a}function e(a){var b=w[a[u]];return b||(b={},v++,a[u]=v,w[v]=b),b}function f(a,c,d){if(c||(c=b),p)return c.createElement(a);d||(d=e(c));var f;return f=d.cache[a]?d.cache[a].cloneNode():t.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!f.canHaveChildren||s.test(a)||f.tagUrn?f:d.frag.appendChild(f)}function g(a,c){if(a||(a=b),p)return a.createDocumentFragment();c=c||e(a);for(var f=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)f.createElement(h[g]);return f}function h(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return x.shivMethods?f(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(x,b.frag)}function i(a){a||(a=b);var d=e(a);return!x.shivCSS||o||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),p||h(a,d),a}function j(a){for(var b,c=a.getElementsByTagName("*"),e=c.length,f=RegExp("^(?:"+d().join("|")+")$","i"),g=[];e--;)b=c[e],f.test(b.nodeName)&&g.push(b.applyElement(k(b)));return g}function k(a){for(var b,c=a.attributes,d=c.length,e=a.ownerDocument.createElement(z+":"+a.nodeName);d--;)b=c[d],b.specified&&e.setAttribute(b.nodeName,b.nodeValue);return e.style.cssText=a.style.cssText,e}function l(a){for(var b,c=a.split("{"),e=c.length,f=RegExp("(^|[\\s,>+~])("+d().join("|")+")(?=[[\\s,>+~#.:]|$)","gi"),g="$1"+z+"\\:$2";e--;)b=c[e]=c[e].split("}"),b[b.length-1]=b[b.length-1].replace(f,g),c[e]=b.join("}");return c.join("{")}function m(a){for(var b=a.length;b--;)a[b].removeNode()}function n(a){function b(){clearTimeout(g._removeSheetTimer),d&&d.removeNode(!0),d=null}var d,f,g=e(a),h=a.namespaces,i=a.parentWindow;return!A||a.printShived?a:("undefined"==typeof h[z]&&h.add(z),i.attachEvent("onbeforeprint",function(){b();for(var e,g,h,i=a.styleSheets,k=[],m=i.length,n=Array(m);m--;)n[m]=i[m];for(;h=n.pop();)if(!h.disabled&&y.test(h.media)){try{e=h.imports,g=e.length}catch(o){g=0}for(m=0;g>m;m++)n.push(e[m]);try{k.push(h.cssText)}catch(o){}}k=l(k.reverse().join("")),f=j(a),d=c(a,k)}),i.attachEvent("onafterprint",function(){m(f),clearTimeout(g._removeSheetTimer),g._removeSheetTimer=setTimeout(b,500)}),a.printShived=!0,a)}var o,p,q="3.7.0",r=a.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,t=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,u="_html5shiv",v=0,w={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",o="hidden"in a,p=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){o=!0,p=!0}}();var x={elements:r.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:q,shivCSS:r.shivCSS!==!1,supportsUnknownElements:p,shivMethods:r.shivMethods!==!1,type:"default",shivDocument:i,createElement:f,createDocumentFragment:g};a.html5=x,i(b);var y=/^$|\b(?:all|print)\b/,z="html5shiv",A=!p&&function(){var c=b.documentElement;return!("undefined"==typeof b.namespaces||"undefined"==typeof b.parentWindow||"undefined"==typeof c.applyElement||"undefined"==typeof c.removeNode||"undefined"==typeof a.attachEvent)}();x.type+=" print",x.shivPrint=n,n(b)}(this,document); |
||||||
File diff suppressed because one or more lines are too long
@ -0,0 +1,45 @@ |
|||||||
|
function init(){ |
||||||
|
document.body.onclick = function(e){ |
||||||
|
//console.log(e)
|
||||||
|
if (e.target.tagName != "LABEL" && e.target.tagName != "INPUT"){ |
||||||
|
document.closeAllPopups(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
Array.from(document.getElementsByTagName("label")).forEach( function(label){ |
||||||
|
console.log(label) |
||||||
|
console.log(label.for) |
||||||
|
|
||||||
|
label.onkeydown=function(e){ |
||||||
|
var cbox=document.getElementById(this.getAttribute("for")) |
||||||
|
var key = e.keyCode ? e.keyCode : e.which; |
||||||
|
if (key == 32|| key == 13){//space or enter
|
||||||
|
console.log("toggle!!"); |
||||||
|
e.stopPropagation(); |
||||||
|
e.preventDefault(); |
||||||
|
cbox.checked = !cbox.checked; |
||||||
|
}
|
||||||
|
if (key == 27){ //escape
|
||||||
|
cbox.checked = false; |
||||||
|
} |
||||||
|
if (key == 40){// down arrow
|
||||||
|
cbox.checked = true; |
||||||
|
} |
||||||
|
console.log(key) |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
document.closeAllPopups = function(){ |
||||||
|
Array.from(document.getElementsByTagName("label")).forEach( function(label){ |
||||||
|
var cbox=document.getElementById(label.getAttribute("for")); |
||||||
|
cbox.checked = false; |
||||||
|
}); |
||||||
|
} |
||||||
|
//setTimeout(init,0);
|
||||||
|
onload=init |
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,8 @@ |
|||||||
|
/** |
||||||
|
* Single Page Nav Plugin |
||||||
|
* Copyright (c) 2014 Chris Wojcik <hello@chriswojcik.net> |
||||||
|
* Dual licensed under MIT and GPL. |
||||||
|
* @author Chris Wojcik |
||||||
|
* @version 1.2.0 |
||||||
|
*/ |
||||||
|
if(typeof Object.create!=="function"){Object.create=function(e){function t(){}t.prototype=e;return new t}}(function(e,t,n,r){"use strict";var i={init:function(n,r){this.options=e.extend({},e.fn.singlePageNav.defaults,n);this.container=r;this.$container=e(r);this.$links=this.$container.find("a");if(this.options.filter!==""){this.$links=this.$links.filter(this.options.filter)}this.$window=e(t);this.$htmlbody=e("html, body");this.$links.on("click.singlePageNav",e.proxy(this.handleClick,this));this.didScroll=false;this.checkPosition();this.setTimer()},handleClick:function(t){var n=this,r=t.currentTarget,i=e(r.hash);t.preventDefault();if(i.length){n.clearTimer();if(typeof n.options.beforeStart==="function"){n.options.beforeStart()}n.setActiveLink(r.hash);n.scrollTo(i,function(){if(n.options.updateHash&&history.pushState){history.pushState(null,null,r.hash)}n.setTimer();if(typeof n.options.onComplete==="function"){n.options.onComplete()}})}},scrollTo:function(e,t){var n=this;var r=n.getCoords(e).top;var i=false;n.$htmlbody.stop().animate({scrollTop:r},{duration:n.options.speed,easing:n.options.easing,complete:function(){if(typeof t==="function"&&!i){t()}i=true}})},setTimer:function(){var e=this;e.$window.on("scroll.singlePageNav",function(){e.didScroll=true});e.timer=setInterval(function(){if(e.didScroll){e.didScroll=false;e.checkPosition()}},250)},clearTimer:function(){clearInterval(this.timer);this.$window.off("scroll.singlePageNav");this.didScroll=false},checkPosition:function(){var e=this.$window.scrollTop();var t=this.getCurrentSection(e);this.setActiveLink(t)},getCoords:function(e){return{top:Math.round(e.offset().top)-this.options.offset}},setActiveLink:function(e){var t=this.$container.find("a[href$='"+e+"']");if(!t.hasClass(this.options.currentClass)){this.$links.removeClass(this.options.currentClass);t.addClass(this.options.currentClass)}},getCurrentSection:function(t){var n,r,i,s;for(n=0;n<this.$links.length;n++){r=this.$links[n].hash;if(e(r).length){i=this.getCoords(e(r));if(t>=i.top-this.options.threshold){s=r}}}return s||this.$links[0].hash}};e.fn.singlePageNav=function(e){return this.each(function(){var t=Object.create(i);t.init(e,this)})};e.fn.singlePageNav.defaults={offset:0,threshold:120,speed:400,currentClass:"current",easing:"swing",updateHash:false,filter:"",onComplete:false,beforeStart:false}})(jQuery,window,document); |
||||||
|
After Width: | Height: | Size: 15 KiB |
@ -0,0 +1,2 @@ |
|||||||
|
#!/bin/sh |
||||||
|
scss --sourcemap --watch scss:css-compiled |
||||||
@ -0,0 +1,22 @@ |
|||||||
|
// REQUIRED DEPENDENCIES - DO NOT CHANGE |
||||||
|
|
||||||
|
// Load Third Party Libraries |
||||||
|
@import "vendor/bourbon/bourbon"; |
||||||
|
|
||||||
|
@import "theme/mixins/breakpoints"; |
||||||
|
//------------------------------------------- |
||||||
|
|
||||||
|
// THEME COMPONENTS |
||||||
|
@import "theme/variables"; |
||||||
|
|
||||||
|
@import "theme/typography"; |
||||||
|
|
||||||
|
@import "theme/default"; |
||||||
|
|
||||||
|
@import "theme/blog"; |
||||||
|
|
||||||
|
@import "theme/fixes"; |
||||||
|
|
||||||
|
@import "theme/modular/all"; |
||||||
|
|
||||||
|
@import "theme/login"; |
||||||
@ -0,0 +1,44 @@ |
|||||||
|
ol.breadcrumb { |
||||||
|
padding-left: 0; |
||||||
|
background: transparent; |
||||||
|
} |
||||||
|
|
||||||
|
.list-item { |
||||||
|
margin: 30px 0 50px; |
||||||
|
} |
||||||
|
|
||||||
|
.blog-header-image { |
||||||
|
margin: 15px 0; |
||||||
|
} |
||||||
|
|
||||||
|
.sidebar-content { |
||||||
|
margin-bottom: 50px; |
||||||
|
} |
||||||
|
|
||||||
|
.pagination li { |
||||||
|
display: inline !important; |
||||||
|
border: 0 !important; |
||||||
|
} |
||||||
|
|
||||||
|
// Related-Pages |
||||||
|
.related-pages { |
||||||
|
padding: 0; |
||||||
|
list-style: none; |
||||||
|
li { |
||||||
|
border-bottom: 1px solid $border-color; |
||||||
|
line-height: $core-font-size + 20px; |
||||||
|
&:last-child { |
||||||
|
border-bottom: 0; |
||||||
|
} |
||||||
|
a { |
||||||
|
display: block; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.score { |
||||||
|
display: block; |
||||||
|
float: right; |
||||||
|
color: #999; |
||||||
|
font-size: 85% |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,83 @@ |
|||||||
|
/* images responsive */ |
||||||
|
img { |
||||||
|
max-width: 100%; |
||||||
|
} |
||||||
|
|
||||||
|
/* Constrain the width */ |
||||||
|
.container { |
||||||
|
width: auto; |
||||||
|
max-width: 960px; |
||||||
|
padding: 0 15px; |
||||||
|
} |
||||||
|
|
||||||
|
/* Center the footer text */ |
||||||
|
.container .text-muted { |
||||||
|
margin: 20px 0; |
||||||
|
text-align: center; |
||||||
|
} |
||||||
|
|
||||||
|
/* Make branding more obvious */ |
||||||
|
.navbar .navbar-brand { |
||||||
|
color: #333; |
||||||
|
font-size: 26px; |
||||||
|
} |
||||||
|
|
||||||
|
/* Sticky footer styles |
||||||
|
-------------------------------------------------- */ |
||||||
|
html { |
||||||
|
position: relative; |
||||||
|
min-height: 100%; |
||||||
|
} |
||||||
|
|
||||||
|
body { |
||||||
|
/* Margin bottom by footer height */ |
||||||
|
margin-bottom: 60px; |
||||||
|
} |
||||||
|
|
||||||
|
.header { |
||||||
|
@include linear-gradient(darken($header-bg,5%), lighten($header-bg,5%)); |
||||||
|
margin-top: -20px; |
||||||
|
margin-bottom: 30px; |
||||||
|
padding-top: 65px; |
||||||
|
padding-bottom: 50px; |
||||||
|
|
||||||
|
text-align: center; |
||||||
|
color: $header-text; |
||||||
|
|
||||||
|
h1 { |
||||||
|
font-size: 60px; |
||||||
|
color: $header-title; |
||||||
|
margin-top: 0; |
||||||
|
@include breakpoint(tablet-range) { |
||||||
|
font-size: 40px; |
||||||
|
} |
||||||
|
@include breakpoint(mobile-only) { |
||||||
|
font-size: 30px; |
||||||
|
line-height: 1.2; |
||||||
|
margin-bottom: 2.5rem; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
h2 { |
||||||
|
margin-top: 0; |
||||||
|
font-weight: normal; |
||||||
|
} |
||||||
|
|
||||||
|
.btn { |
||||||
|
font-size: 22px; |
||||||
|
padding: 10px 30px; |
||||||
|
margin-top: 30px; |
||||||
|
border-radius: $border-radius; |
||||||
|
box-shadow: none; |
||||||
|
border: 0; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.footer { |
||||||
|
position: absolute; |
||||||
|
bottom: 0; |
||||||
|
width: 100%; |
||||||
|
/* Set the fixed height of the footer here */ |
||||||
|
height: 60px; |
||||||
|
background-color: $footer-bg; |
||||||
|
} |
||||||
@ -0,0 +1,19 @@ |
|||||||
|
.btn-file { |
||||||
|
position: relative; |
||||||
|
overflow: hidden; |
||||||
|
} |
||||||
|
.btn-file input[type=file] { |
||||||
|
position: absolute; |
||||||
|
top: 0; |
||||||
|
right: 0; |
||||||
|
min-width: 100%; |
||||||
|
min-height: 100%; |
||||||
|
font-size: 100px; |
||||||
|
text-align: right; |
||||||
|
filter: alpha(opacity=0); |
||||||
|
opacity: 0; |
||||||
|
outline: none; |
||||||
|
background: white; |
||||||
|
cursor: inherit; |
||||||
|
display: block; |
||||||
|
} |
||||||
@ -0,0 +1,40 @@ |
|||||||
|
#grav-login { |
||||||
|
max-width: 50rem!important; |
||||||
|
|
||||||
|
.col-sm-2 { |
||||||
|
width: 50%; |
||||||
|
text-align: right; |
||||||
|
padding-top: 5px; |
||||||
|
} |
||||||
|
|
||||||
|
.col-sm-10 { |
||||||
|
width: 50%; |
||||||
|
} |
||||||
|
|
||||||
|
form { |
||||||
|
padding-top: 30px |
||||||
|
} |
||||||
|
|
||||||
|
.rememberme { |
||||||
|
float: right!important; |
||||||
|
} |
||||||
|
|
||||||
|
.form-actions { |
||||||
|
button { |
||||||
|
margin-top: 50px; |
||||||
|
} |
||||||
|
|
||||||
|
.button.secondary { |
||||||
|
line-height: 26px; |
||||||
|
|
||||||
|
i { |
||||||
|
line-height: 26px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.button { |
||||||
|
vertical-align: bottom!important; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
@ -0,0 +1,9 @@ |
|||||||
|
@import "showcase"; |
||||||
|
@import "features"; |
||||||
|
@import "text"; |
||||||
|
|
||||||
|
.modular { |
||||||
|
.modular-row:last-child { |
||||||
|
margin-bottom: 2rem; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,70 @@ |
|||||||
|
/* Typography */ |
||||||
|
|
||||||
|
/* Tables */ |
||||||
|
table { |
||||||
|
width: 100%; |
||||||
|
border: 1px solid $border-color; |
||||||
|
margin: 30px 0; |
||||||
|
} |
||||||
|
|
||||||
|
th { |
||||||
|
font-weight: bold; |
||||||
|
background: lighten($border-color, 2%); |
||||||
|
padding: 5px; |
||||||
|
} |
||||||
|
|
||||||
|
td { |
||||||
|
padding: 5px; |
||||||
|
border: 1px solid $border-color; |
||||||
|
} |
||||||
|
|
||||||
|
/* Notice Styles */ |
||||||
|
blockquote { |
||||||
|
padding: 0 0 0 20px !important; |
||||||
|
font-size: 16px; |
||||||
|
color: #666; |
||||||
|
|
||||||
|
> blockquote > blockquote { |
||||||
|
margin: 0; |
||||||
|
|
||||||
|
p { |
||||||
|
padding: 15px; |
||||||
|
display: block; |
||||||
|
margin-top: 0rem; |
||||||
|
margin-bottom: 0rem; |
||||||
|
border: 1px solid #f0f0f0; |
||||||
|
} |
||||||
|
|
||||||
|
> p { |
||||||
|
/* Yellow */ |
||||||
|
margin-left: -75px; |
||||||
|
color: #8a6d3b; |
||||||
|
background-color: #fcf8e3; |
||||||
|
border-color: #faebcc; |
||||||
|
} |
||||||
|
|
||||||
|
blockquote > p { |
||||||
|
/* Red */ |
||||||
|
margin-left: -100px; |
||||||
|
color: #a94442; |
||||||
|
background-color: #f2dede; |
||||||
|
border-color: #ebccd1; |
||||||
|
} |
||||||
|
|
||||||
|
blockquote > blockquote > p { |
||||||
|
/* Blue */ |
||||||
|
margin-left: -125px; |
||||||
|
color: #31708f; |
||||||
|
background-color: #d9edf7; |
||||||
|
border-color: #bce8f1; |
||||||
|
} |
||||||
|
|
||||||
|
blockquote > blockquote > blockquote > p { |
||||||
|
/* Blue */ |
||||||
|
margin-left: -150px; |
||||||
|
color: #3c763d; |
||||||
|
background-color: #dff0d8; |
||||||
|
border-color: #d6e9c6; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,21 @@ |
|||||||
|
//colors |
||||||
|
$core-accent: #428bca; |
||||||
|
$secondary-accent: #62488A; |
||||||
|
$footer-bg: #f5f5f5; |
||||||
|
$border-color: #f0f0f0; |
||||||
|
$header-bg: $secondary-accent; |
||||||
|
$header-text: lighten($header-bg, 55%); |
||||||
|
$header-title: #f0f0f0; |
||||||
|
$text-bg: #f0f0f0; |
||||||
|
$text-text: #666666; |
||||||
|
|
||||||
|
//spacing |
||||||
|
$header-height: 50px; |
||||||
|
$padding-vert: 30px; |
||||||
|
$padding-horiz: 30px; |
||||||
|
$content-padding: 15px; |
||||||
|
$core-font-size: 14px; |
||||||
|
|
||||||
|
$border-radius: 3px; |
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,2 @@ |
|||||||
|
@import "breakpoints"; |
||||||
|
@import "utilities"; |
||||||
@ -0,0 +1,44 @@ |
|||||||
|
// Media Device Breakpoints |
||||||
|
$large-desktop-container: 75.000rem !default; |
||||||
|
$desktop-container: 60.000rem !default; |
||||||
|
$tablet-container: 48.000rem !default; |
||||||
|
$large-mobile-container: 30.000rem !default; |
||||||
|
$mobile-container: 100% !default; |
||||||
|
|
||||||
|
// Breakpoint Variables For Particles |
||||||
|
$media: "all" !default; |
||||||
|
$mobile-only: "#{$media} and (max-width:#{$tablet-container - 0.062})" !default; |
||||||
|
$no-mobile: "#{$media} and (min-width:#{$tablet-container})" !default; |
||||||
|
$small-mobile-range: "#{$media} and (max-width:#{$large-mobile-container})" !default; |
||||||
|
$large-mobile-range: "#{$media} and (min-width:#{$large-mobile-container + 0.063}) and (max-width:#{$tablet-container - 0.062})" !default; |
||||||
|
$tablet-range: "#{$media} and (min-width:#{$tablet-container}) and (max-width:#{$desktop-container - 0.062})" !default; |
||||||
|
$desktop-range: "#{$media} and (min-width:#{$desktop-container}) and (max-width:#{$large-desktop-container - 0.062})" !default; |
||||||
|
$large-desktop-range: "#{$media} and (min-width:#{$large-desktop-container})" !default; |
||||||
|
|
||||||
|
// Breakpoints |
||||||
|
@mixin breakpoint($breakpoint, $media: all) { |
||||||
|
@if $breakpoint == large-desktop-range { |
||||||
|
@media only #{$media} and (min-width: $large-desktop-container) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == desktop-range { |
||||||
|
@media only #{$media} and (min-width: $desktop-container) and (max-width: $large-desktop-container - 0.062) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == tablet-range { |
||||||
|
@media only #{$media} and (min-width: $tablet-container) and (max-width: $desktop-container - 0.062) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == large-mobile-range { |
||||||
|
@media only #{$media} and (min-width: $large-mobile-container + 0.063) and (max-width: $tablet-container - 0.062) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == small-mobile-range { |
||||||
|
@media only #{$media} and (max-width: $large-mobile-container) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == no-mobile { |
||||||
|
@media only #{$media} and (min-width: $tablet-container) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == mobile-only { |
||||||
|
@media only #{$media} and (max-width: $tablet-container - 0.062) { @content; } |
||||||
|
} |
||||||
|
@else if $breakpoint == desktop-only { |
||||||
|
@media only #{$media} and (max-width: $desktop-container - 0.062) { @content; } |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,30 @@ |
|||||||
|
|
||||||
|
|
||||||
|
// List Reset |
||||||
|
%list-reset { |
||||||
|
margin: 0; |
||||||
|
padding: 0; |
||||||
|
list-style: none; |
||||||
|
} |
||||||
|
|
||||||
|
// Vertical Centering |
||||||
|
%vertical-align { |
||||||
|
position: relative; |
||||||
|
top: 50%; |
||||||
|
-webkit-transform: translateY(-50%); |
||||||
|
-moz-transform: translateY(-50%); |
||||||
|
-o-transform: translateY(-50%); |
||||||
|
-ms-transform: translateY(-50%); |
||||||
|
transform: translateY(-50%); |
||||||
|
} |
||||||
|
|
||||||
|
// Columns |
||||||
|
@mixin columns($columns) { |
||||||
|
width: percentage(1/$columns); |
||||||
|
} |
||||||
|
|
||||||
|
// Float with margin variable |
||||||
|
@mixin float($direction, $margin: 0) { |
||||||
|
float: $direction; |
||||||
|
margin-#{opposite-direction($direction)}: $margin; |
||||||
|
} |
||||||
@ -0,0 +1,21 @@ |
|||||||
|
@import "showcase"; |
||||||
|
@import "features"; |
||||||
|
@import "text"; |
||||||
|
|
||||||
|
.modular { |
||||||
|
.modular-row:last-child { |
||||||
|
margin-bottom: 2rem; |
||||||
|
} |
||||||
|
|
||||||
|
.modular-anchor { |
||||||
|
display: block; |
||||||
|
position: relative; |
||||||
|
top: -1 * ($header-height); |
||||||
|
visibility: hidden; |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
body.fixed-nav { |
||||||
|
padding-top: $header-height; |
||||||
|
} |
||||||
@ -0,0 +1,96 @@ |
|||||||
|
// Modular Showcase styling |
||||||
|
.modular { |
||||||
|
.features { |
||||||
|
padding: 50px 0; |
||||||
|
text-align: center; |
||||||
|
@include clearfix; |
||||||
|
|
||||||
|
h2 { |
||||||
|
margin: 0; |
||||||
|
line-height: 100%; |
||||||
|
} |
||||||
|
|
||||||
|
h2 + h3 { |
||||||
|
margin-top: 0; |
||||||
|
font-weight: normal; |
||||||
|
} |
||||||
|
|
||||||
|
p { |
||||||
|
margin: 10px 0; |
||||||
|
font-size: $core-font-size + 3px; |
||||||
|
@include breakpoint(mobile-only) { |
||||||
|
font-size: $core-font-size; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.feature-items { |
||||||
|
margin-top: 30px; |
||||||
|
} |
||||||
|
|
||||||
|
.feature { |
||||||
|
display:block; |
||||||
|
float: left; |
||||||
|
width: 25%; |
||||||
|
@include breakpoint(mobile-only) { |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
vertical-align: top; |
||||||
|
margin-top: 20px; |
||||||
|
margin-bottom: 10px; |
||||||
|
|
||||||
|
i.fa { |
||||||
|
font-size: 40px; |
||||||
|
color: $header-bg; |
||||||
|
} |
||||||
|
|
||||||
|
h4 { |
||||||
|
|
||||||
|
font-size: 16px; |
||||||
|
font-weight: normal |
||||||
|
} |
||||||
|
|
||||||
|
p { |
||||||
|
display: inline-block; |
||||||
|
font-size: $core-font-size; |
||||||
|
margin: 5px 0 10px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
&.big { |
||||||
|
|
||||||
|
text-align: center; |
||||||
|
|
||||||
|
.feature { |
||||||
|
width: 50%; |
||||||
|
margin: 30px 0; |
||||||
|
} |
||||||
|
|
||||||
|
i.fa { |
||||||
|
font-size: 50px; |
||||||
|
float: left; |
||||||
|
} |
||||||
|
|
||||||
|
.feature-content { |
||||||
|
padding-right: 15px; |
||||||
|
|
||||||
|
&.push { |
||||||
|
margin-left: 90px; |
||||||
|
} |
||||||
|
|
||||||
|
h4 { |
||||||
|
font-size: 24px; |
||||||
|
text-align: left; |
||||||
|
margin: 0; |
||||||
|
} |
||||||
|
|
||||||
|
p { |
||||||
|
padding: 0; |
||||||
|
text-align: left; |
||||||
|
font-size: $core-font-size; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,5 @@ |
|||||||
|
// Modular Showcase styling |
||||||
|
.modular { |
||||||
|
|
||||||
|
// Put custom styling for modular showcase here... |
||||||
|
} |
||||||
@ -0,0 +1,19 @@ |
|||||||
|
// styling |
||||||
|
.callout { |
||||||
|
background: $text-bg; |
||||||
|
color: $text-text; |
||||||
|
padding: 15px $content-padding; |
||||||
|
|
||||||
|
.align-left { |
||||||
|
float: left; |
||||||
|
margin-right: 15px; |
||||||
|
} |
||||||
|
|
||||||
|
.align-right { |
||||||
|
float: right; |
||||||
|
margin-left: 15px; |
||||||
|
} |
||||||
|
img { |
||||||
|
border-radius: $border-radius; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,8 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// These mixins/functions are deprecated |
||||||
|
// They will be removed in the next MAJOR version release |
||||||
|
//************************************************************************// |
||||||
|
@mixin inline-block { |
||||||
|
display: inline-block; |
||||||
|
@warn "inline-block mixin is deprecated and will be removed in the next major version release"; |
||||||
|
} |
||||||
@ -0,0 +1,77 @@ |
|||||||
|
// Settings |
||||||
|
@import "settings/prefixer"; |
||||||
|
@import "settings/px-to-em"; |
||||||
|
|
||||||
|
// Custom Helpers |
||||||
|
@import "helpers/convert-units"; |
||||||
|
@import "helpers/gradient-positions-parser"; |
||||||
|
@import "helpers/is-num"; |
||||||
|
@import "helpers/linear-angle-parser"; |
||||||
|
@import "helpers/linear-gradient-parser"; |
||||||
|
@import "helpers/linear-positions-parser"; |
||||||
|
@import "helpers/linear-side-corner-parser"; |
||||||
|
@import "helpers/radial-arg-parser"; |
||||||
|
@import "helpers/radial-positions-parser"; |
||||||
|
@import "helpers/radial-gradient-parser"; |
||||||
|
@import "helpers/render-gradients"; |
||||||
|
@import "helpers/shape-size-stripper"; |
||||||
|
@import "helpers/str-to-num"; |
||||||
|
|
||||||
|
// Custom Functions |
||||||
|
@import "functions/assign"; |
||||||
|
@import "functions/color-lightness"; |
||||||
|
@import "functions/flex-grid"; |
||||||
|
@import "functions/golden-ratio"; |
||||||
|
@import "functions/grid-width"; |
||||||
|
@import "functions/modular-scale"; |
||||||
|
@import "functions/px-to-em"; |
||||||
|
@import "functions/px-to-rem"; |
||||||
|
@import "functions/strip-units"; |
||||||
|
@import "functions/tint-shade"; |
||||||
|
@import "functions/transition-property-name"; |
||||||
|
@import "functions/unpack"; |
||||||
|
|
||||||
|
// CSS3 Mixins |
||||||
|
@import "css3/animation"; |
||||||
|
@import "css3/appearance"; |
||||||
|
@import "css3/backface-visibility"; |
||||||
|
@import "css3/background"; |
||||||
|
@import "css3/background-image"; |
||||||
|
@import "css3/border-image"; |
||||||
|
@import "css3/border-radius"; |
||||||
|
@import "css3/box-sizing"; |
||||||
|
@import "css3/calc"; |
||||||
|
@import "css3/columns"; |
||||||
|
@import "css3/filter"; |
||||||
|
@import "css3/flex-box"; |
||||||
|
@import "css3/font-face"; |
||||||
|
@import "css3/hyphens"; |
||||||
|
@import "css3/hidpi-media-query"; |
||||||
|
@import "css3/image-rendering"; |
||||||
|
@import "css3/keyframes"; |
||||||
|
@import "css3/linear-gradient"; |
||||||
|
@import "css3/perspective"; |
||||||
|
@import "css3/radial-gradient"; |
||||||
|
@import "css3/transform"; |
||||||
|
@import "css3/transition"; |
||||||
|
@import "css3/user-select"; |
||||||
|
@import "css3/placeholder"; |
||||||
|
|
||||||
|
// Addons & other mixins |
||||||
|
@import "addons/button"; |
||||||
|
@import "addons/clearfix"; |
||||||
|
@import "addons/directional-values"; |
||||||
|
@import "addons/ellipsis"; |
||||||
|
@import "addons/font-family"; |
||||||
|
@import "addons/hide-text"; |
||||||
|
@import "addons/html5-input-types"; |
||||||
|
@import "addons/position"; |
||||||
|
@import "addons/prefixer"; |
||||||
|
@import "addons/retina-image"; |
||||||
|
@import "addons/size"; |
||||||
|
@import "addons/timing-functions"; |
||||||
|
@import "addons/triangle"; |
||||||
|
@import "addons/word-wrap"; |
||||||
|
|
||||||
|
// Soon to be deprecated Mixins |
||||||
|
@import "bourbon-deprecated-upcoming"; |
||||||
@ -0,0 +1,374 @@ |
|||||||
|
@mixin button ($style: simple, $base-color: #4294f0, $text-size: inherit, $padding: 7px 18px) { |
||||||
|
|
||||||
|
@if type-of($style) == string and type-of($base-color) == color { |
||||||
|
@include buttonstyle($style, $base-color, $text-size, $padding); |
||||||
|
} |
||||||
|
|
||||||
|
@if type-of($style) == string and type-of($base-color) == number { |
||||||
|
$padding: $text-size; |
||||||
|
$text-size: $base-color; |
||||||
|
$base-color: #4294f0; |
||||||
|
|
||||||
|
@if $padding == inherit { |
||||||
|
$padding: 7px 18px; |
||||||
|
} |
||||||
|
|
||||||
|
@include buttonstyle($style, $base-color, $text-size, $padding); |
||||||
|
} |
||||||
|
|
||||||
|
@if type-of($style) == color and type-of($base-color) == color { |
||||||
|
$base-color: $style; |
||||||
|
$style: simple; |
||||||
|
@include buttonstyle($style, $base-color, $text-size, $padding); |
||||||
|
} |
||||||
|
|
||||||
|
@if type-of($style) == color and type-of($base-color) == number { |
||||||
|
$padding: $text-size; |
||||||
|
$text-size: $base-color; |
||||||
|
$base-color: $style; |
||||||
|
$style: simple; |
||||||
|
|
||||||
|
@if $padding == inherit { |
||||||
|
$padding: 7px 18px; |
||||||
|
} |
||||||
|
|
||||||
|
@include buttonstyle($style, $base-color, $text-size, $padding); |
||||||
|
} |
||||||
|
|
||||||
|
@if type-of($style) == number { |
||||||
|
$padding: $base-color; |
||||||
|
$text-size: $style; |
||||||
|
$base-color: #4294f0; |
||||||
|
$style: simple; |
||||||
|
|
||||||
|
@if $padding == #4294f0 { |
||||||
|
$padding: 7px 18px; |
||||||
|
} |
||||||
|
|
||||||
|
@include buttonstyle($style, $base-color, $text-size, $padding); |
||||||
|
} |
||||||
|
|
||||||
|
&:disabled { |
||||||
|
opacity: 0.5; |
||||||
|
cursor: not-allowed; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
// Selector Style Button |
||||||
|
//************************************************************************// |
||||||
|
@mixin buttonstyle($type, $b-color, $t-size, $pad) { |
||||||
|
// Grayscale button |
||||||
|
@if $type == simple and $b-color == grayscale($b-color) { |
||||||
|
@include simple($b-color, true, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
@if $type == shiny and $b-color == grayscale($b-color) { |
||||||
|
@include shiny($b-color, true, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
@if $type == pill and $b-color == grayscale($b-color) { |
||||||
|
@include pill($b-color, true, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
@if $type == flat and $b-color == grayscale($b-color) { |
||||||
|
@include flat($b-color, true, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
// Colored button |
||||||
|
@if $type == simple { |
||||||
|
@include simple($b-color, false, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
@else if $type == shiny { |
||||||
|
@include shiny($b-color, false, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
@else if $type == pill { |
||||||
|
@include pill($b-color, false, $t-size, $pad); |
||||||
|
} |
||||||
|
|
||||||
|
@else if $type == flat { |
||||||
|
@include flat($b-color, false, $t-size, $pad); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
// Simple Button |
||||||
|
//************************************************************************// |
||||||
|
@mixin simple($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { |
||||||
|
$color: hsl(0, 0, 100%); |
||||||
|
$border: adjust-color($base-color, $saturation: 9%, $lightness: -14%); |
||||||
|
$inset-shadow: adjust-color($base-color, $saturation: -8%, $lightness: 15%); |
||||||
|
$stop-gradient: adjust-color($base-color, $saturation: 9%, $lightness: -11%); |
||||||
|
$text-shadow: adjust-color($base-color, $saturation: 15%, $lightness: -18%); |
||||||
|
|
||||||
|
@if is-light($base-color) { |
||||||
|
$color: hsl(0, 0, 20%); |
||||||
|
$text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%); |
||||||
|
} |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$border: grayscale($border); |
||||||
|
$inset-shadow: grayscale($inset-shadow); |
||||||
|
$stop-gradient: grayscale($stop-gradient); |
||||||
|
$text-shadow: grayscale($text-shadow); |
||||||
|
} |
||||||
|
|
||||||
|
border: 1px solid $border; |
||||||
|
border-radius: 3px; |
||||||
|
box-shadow: inset 0 1px 0 0 $inset-shadow; |
||||||
|
color: $color; |
||||||
|
display: inline-block; |
||||||
|
font-size: $textsize; |
||||||
|
font-weight: bold; |
||||||
|
@include linear-gradient ($base-color, $stop-gradient); |
||||||
|
padding: $padding; |
||||||
|
text-decoration: none; |
||||||
|
text-shadow: 0 1px 0 $text-shadow; |
||||||
|
background-clip: padding-box; |
||||||
|
|
||||||
|
&:hover:not(:disabled) { |
||||||
|
$base-color-hover: adjust-color($base-color, $saturation: -4%, $lightness: -5%); |
||||||
|
$inset-shadow-hover: adjust-color($base-color, $saturation: -7%, $lightness: 5%); |
||||||
|
$stop-gradient-hover: adjust-color($base-color, $saturation: 8%, $lightness: -14%); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$base-color-hover: grayscale($base-color-hover); |
||||||
|
$inset-shadow-hover: grayscale($inset-shadow-hover); |
||||||
|
$stop-gradient-hover: grayscale($stop-gradient-hover); |
||||||
|
} |
||||||
|
|
||||||
|
box-shadow: inset 0 1px 0 0 $inset-shadow-hover; |
||||||
|
cursor: pointer; |
||||||
|
@include linear-gradient ($base-color-hover, $stop-gradient-hover); |
||||||
|
} |
||||||
|
|
||||||
|
&:active:not(:disabled), |
||||||
|
&:focus:not(:disabled) { |
||||||
|
$border-active: adjust-color($base-color, $saturation: 9%, $lightness: -14%); |
||||||
|
$inset-shadow-active: adjust-color($base-color, $saturation: 7%, $lightness: -17%); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$border-active: grayscale($border-active); |
||||||
|
$inset-shadow-active: grayscale($inset-shadow-active); |
||||||
|
} |
||||||
|
|
||||||
|
border: 1px solid $border-active; |
||||||
|
box-shadow: inset 0 0 8px 4px $inset-shadow-active, inset 0 0 8px 4px $inset-shadow-active; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
// Shiny Button |
||||||
|
//************************************************************************// |
||||||
|
@mixin shiny($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { |
||||||
|
$color: hsl(0, 0, 100%); |
||||||
|
$border: adjust-color($base-color, $red: -117, $green: -111, $blue: -81); |
||||||
|
$border-bottom: adjust-color($base-color, $red: -126, $green: -127, $blue: -122); |
||||||
|
$fourth-stop: adjust-color($base-color, $red: -79, $green: -70, $blue: -46); |
||||||
|
$inset-shadow: adjust-color($base-color, $red: 37, $green: 29, $blue: 12); |
||||||
|
$second-stop: adjust-color($base-color, $red: -56, $green: -50, $blue: -33); |
||||||
|
$text-shadow: adjust-color($base-color, $red: -140, $green: -141, $blue: -114); |
||||||
|
$third-stop: adjust-color($base-color, $red: -86, $green: -75, $blue: -48); |
||||||
|
|
||||||
|
@if is-light($base-color) { |
||||||
|
$color: hsl(0, 0, 20%); |
||||||
|
$text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%); |
||||||
|
} |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$border: grayscale($border); |
||||||
|
$border-bottom: grayscale($border-bottom); |
||||||
|
$fourth-stop: grayscale($fourth-stop); |
||||||
|
$inset-shadow: grayscale($inset-shadow); |
||||||
|
$second-stop: grayscale($second-stop); |
||||||
|
$text-shadow: grayscale($text-shadow); |
||||||
|
$third-stop: grayscale($third-stop); |
||||||
|
} |
||||||
|
|
||||||
|
border: 1px solid $border; |
||||||
|
border-bottom: 1px solid $border-bottom; |
||||||
|
border-radius: 5px; |
||||||
|
box-shadow: inset 0 1px 0 0 $inset-shadow; |
||||||
|
color: $color; |
||||||
|
display: inline-block; |
||||||
|
font-size: $textsize; |
||||||
|
font-weight: bold; |
||||||
|
@include linear-gradient(top, $base-color 0%, $second-stop 50%, $third-stop 50%, $fourth-stop 100%); |
||||||
|
padding: $padding; |
||||||
|
text-align: center; |
||||||
|
text-decoration: none; |
||||||
|
text-shadow: 0 -1px 1px $text-shadow; |
||||||
|
|
||||||
|
&:hover:not(:disabled) { |
||||||
|
$first-stop-hover: adjust-color($base-color, $red: -13, $green: -15, $blue: -18); |
||||||
|
$second-stop-hover: adjust-color($base-color, $red: -66, $green: -62, $blue: -51); |
||||||
|
$third-stop-hover: adjust-color($base-color, $red: -93, $green: -85, $blue: -66); |
||||||
|
$fourth-stop-hover: adjust-color($base-color, $red: -86, $green: -80, $blue: -63); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$first-stop-hover: grayscale($first-stop-hover); |
||||||
|
$second-stop-hover: grayscale($second-stop-hover); |
||||||
|
$third-stop-hover: grayscale($third-stop-hover); |
||||||
|
$fourth-stop-hover: grayscale($fourth-stop-hover); |
||||||
|
} |
||||||
|
|
||||||
|
cursor: pointer; |
||||||
|
@include linear-gradient(top, $first-stop-hover 0%, |
||||||
|
$second-stop-hover 50%, |
||||||
|
$third-stop-hover 50%, |
||||||
|
$fourth-stop-hover 100%); |
||||||
|
} |
||||||
|
|
||||||
|
&:active:not(:disabled), |
||||||
|
&:focus:not(:disabled) { |
||||||
|
$inset-shadow-active: adjust-color($base-color, $red: -111, $green: -116, $blue: -122); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$inset-shadow-active: grayscale($inset-shadow-active); |
||||||
|
} |
||||||
|
|
||||||
|
box-shadow: inset 0 0 20px 0 $inset-shadow-active; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
// Pill Button |
||||||
|
//************************************************************************// |
||||||
|
@mixin pill($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { |
||||||
|
$color: hsl(0, 0, 100%); |
||||||
|
$border-bottom: adjust-color($base-color, $hue: 8, $saturation: -11%, $lightness: -26%); |
||||||
|
$border-sides: adjust-color($base-color, $hue: 4, $saturation: -21%, $lightness: -21%); |
||||||
|
$border-top: adjust-color($base-color, $hue: -1, $saturation: -30%, $lightness: -15%); |
||||||
|
$inset-shadow: adjust-color($base-color, $hue: -1, $saturation: -1%, $lightness: 7%); |
||||||
|
$stop-gradient: adjust-color($base-color, $hue: 8, $saturation: 14%, $lightness: -10%); |
||||||
|
$text-shadow: adjust-color($base-color, $hue: 5, $saturation: -19%, $lightness: -15%); |
||||||
|
|
||||||
|
@if is-light($base-color) { |
||||||
|
$color: hsl(0, 0, 20%); |
||||||
|
$text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%); |
||||||
|
} |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$border-bottom: grayscale($border-bottom); |
||||||
|
$border-sides: grayscale($border-sides); |
||||||
|
$border-top: grayscale($border-top); |
||||||
|
$inset-shadow: grayscale($inset-shadow); |
||||||
|
$stop-gradient: grayscale($stop-gradient); |
||||||
|
$text-shadow: grayscale($text-shadow); |
||||||
|
} |
||||||
|
|
||||||
|
border: 1px solid $border-top; |
||||||
|
border-color: $border-top $border-sides $border-bottom; |
||||||
|
border-radius: 16px; |
||||||
|
box-shadow: inset 0 1px 0 0 $inset-shadow; |
||||||
|
color: $color; |
||||||
|
display: inline-block; |
||||||
|
font-size: $textsize; |
||||||
|
font-weight: normal; |
||||||
|
line-height: 1; |
||||||
|
@include linear-gradient ($base-color, $stop-gradient); |
||||||
|
padding: $padding; |
||||||
|
text-align: center; |
||||||
|
text-decoration: none; |
||||||
|
text-shadow: 0 -1px 1px $text-shadow; |
||||||
|
background-clip: padding-box; |
||||||
|
|
||||||
|
&:hover:not(:disabled) { |
||||||
|
$base-color-hover: adjust-color($base-color, $lightness: -4.5%); |
||||||
|
$border-bottom: adjust-color($base-color, $hue: 8, $saturation: 13.5%, $lightness: -32%); |
||||||
|
$border-sides: adjust-color($base-color, $hue: 4, $saturation: -2%, $lightness: -27%); |
||||||
|
$border-top: adjust-color($base-color, $hue: -1, $saturation: -17%, $lightness: -21%); |
||||||
|
$inset-shadow-hover: adjust-color($base-color, $saturation: -1%, $lightness: 3%); |
||||||
|
$stop-gradient-hover: adjust-color($base-color, $hue: 8, $saturation: -4%, $lightness: -15.5%); |
||||||
|
$text-shadow-hover: adjust-color($base-color, $hue: 5, $saturation: -5%, $lightness: -22%); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$base-color-hover: grayscale($base-color-hover); |
||||||
|
$border-bottom: grayscale($border-bottom); |
||||||
|
$border-sides: grayscale($border-sides); |
||||||
|
$border-top: grayscale($border-top); |
||||||
|
$inset-shadow-hover: grayscale($inset-shadow-hover); |
||||||
|
$stop-gradient-hover: grayscale($stop-gradient-hover); |
||||||
|
$text-shadow-hover: grayscale($text-shadow-hover); |
||||||
|
} |
||||||
|
|
||||||
|
border: 1px solid $border-top; |
||||||
|
border-color: $border-top $border-sides $border-bottom; |
||||||
|
box-shadow: inset 0 1px 0 0 $inset-shadow-hover; |
||||||
|
cursor: pointer; |
||||||
|
@include linear-gradient ($base-color-hover, $stop-gradient-hover); |
||||||
|
text-shadow: 0 -1px 1px $text-shadow-hover; |
||||||
|
background-clip: padding-box; |
||||||
|
} |
||||||
|
|
||||||
|
&:active:not(:disabled), |
||||||
|
&:focus:not(:disabled) { |
||||||
|
$active-color: adjust-color($base-color, $hue: 4, $saturation: -12%, $lightness: -10%); |
||||||
|
$border-active: adjust-color($base-color, $hue: 6, $saturation: -2.5%, $lightness: -30%); |
||||||
|
$border-bottom-active: adjust-color($base-color, $hue: 11, $saturation: 6%, $lightness: -31%); |
||||||
|
$inset-shadow-active: adjust-color($base-color, $hue: 9, $saturation: 2%, $lightness: -21.5%); |
||||||
|
$text-shadow-active: adjust-color($base-color, $hue: 5, $saturation: -12%, $lightness: -21.5%); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$active-color: grayscale($active-color); |
||||||
|
$border-active: grayscale($border-active); |
||||||
|
$border-bottom-active: grayscale($border-bottom-active); |
||||||
|
$inset-shadow-active: grayscale($inset-shadow-active); |
||||||
|
$text-shadow-active: grayscale($text-shadow-active); |
||||||
|
} |
||||||
|
|
||||||
|
background: $active-color; |
||||||
|
border: 1px solid $border-active; |
||||||
|
border-bottom: 1px solid $border-bottom-active; |
||||||
|
box-shadow: inset 0 0 6px 3px $inset-shadow-active; |
||||||
|
text-shadow: 0 -1px 1px $text-shadow-active; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Flat Button |
||||||
|
//************************************************************************// |
||||||
|
@mixin flat($base-color, $grayscale: false, $textsize: inherit, $padding: 7px 18px) { |
||||||
|
$color: hsl(0, 0, 100%); |
||||||
|
|
||||||
|
@if is-light($base-color) { |
||||||
|
$color: hsl(0, 0, 20%); |
||||||
|
} |
||||||
|
|
||||||
|
background-color: $base-color; |
||||||
|
border-radius: 3px; |
||||||
|
border: none; |
||||||
|
color: $color; |
||||||
|
display: inline-block; |
||||||
|
font-size: inherit; |
||||||
|
font-weight: bold; |
||||||
|
padding: 7px 18px; |
||||||
|
text-decoration: none; |
||||||
|
background-clip: padding-box; |
||||||
|
|
||||||
|
&:hover:not(:disabled){ |
||||||
|
$base-color-hover: adjust-color($base-color, $saturation: 4%, $lightness: 5%); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$base-color-hover: grayscale($base-color-hover); |
||||||
|
} |
||||||
|
|
||||||
|
background-color: $base-color-hover; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
|
||||||
|
&:active:not(:disabled), |
||||||
|
&:focus:not(:disabled) { |
||||||
|
$base-color-active: adjust-color($base-color, $saturation: -4%, $lightness: -5%); |
||||||
|
|
||||||
|
@if $grayscale == true { |
||||||
|
$base-color-active: grayscale($base-color-active); |
||||||
|
} |
||||||
|
|
||||||
|
background-color: $base-color-active; |
||||||
|
cursor: pointer; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,23 @@ |
|||||||
|
// Modern micro clearfix provides an easy way to contain floats without adding additional markup. |
||||||
|
// |
||||||
|
// Example usage: |
||||||
|
// |
||||||
|
// // Contain all floats within .wrapper |
||||||
|
// .wrapper { |
||||||
|
// @include clearfix; |
||||||
|
// .content, |
||||||
|
// .sidebar { |
||||||
|
// float : left; |
||||||
|
// } |
||||||
|
// } |
||||||
|
|
||||||
|
@mixin clearfix { |
||||||
|
&:after { |
||||||
|
content:""; |
||||||
|
display:table; |
||||||
|
clear:both; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
// Acknowledgements |
||||||
|
// Beat *that* clearfix: [Thierry Koblentz](http://www.css-101.org/articles/clearfix/latest-new-clearfix-so-far.php) |
||||||
@ -0,0 +1,111 @@ |
|||||||
|
// directional-property mixins are shorthands |
||||||
|
// for writing properties like the following |
||||||
|
// |
||||||
|
// @include margin(null 0 10px); |
||||||
|
// ------ |
||||||
|
// margin-right: 0; |
||||||
|
// margin-bottom: 10px; |
||||||
|
// margin-left: 0; |
||||||
|
// |
||||||
|
// - or - |
||||||
|
// |
||||||
|
// @include border-style(dotted null); |
||||||
|
// ------ |
||||||
|
// border-top-style: dotted; |
||||||
|
// border-bottom-style: dotted; |
||||||
|
// |
||||||
|
// ------ |
||||||
|
// |
||||||
|
// Note: You can also use false instead of null |
||||||
|
|
||||||
|
@function collapse-directionals($vals) { |
||||||
|
$output: null; |
||||||
|
|
||||||
|
$A: nth( $vals, 1 ); |
||||||
|
$B: if( length($vals) < 2, $A, nth($vals, 2)); |
||||||
|
$C: if( length($vals) < 3, $A, nth($vals, 3)); |
||||||
|
$D: if( length($vals) < 2, $A, nth($vals, if( length($vals) < 4, 2, 4) )); |
||||||
|
|
||||||
|
@if $A == 0 { $A: 0 } |
||||||
|
@if $B == 0 { $B: 0 } |
||||||
|
@if $C == 0 { $C: 0 } |
||||||
|
@if $D == 0 { $D: 0 } |
||||||
|
|
||||||
|
@if $A == $B and $A == $C and $A == $D { $output: $A } |
||||||
|
@else if $A == $C and $B == $D { $output: $A $B } |
||||||
|
@else if $B == $D { $output: $A $B $C } |
||||||
|
@else { $output: $A $B $C $D } |
||||||
|
|
||||||
|
@return $output; |
||||||
|
} |
||||||
|
|
||||||
|
@function contains-falsy($list) { |
||||||
|
@each $item in $list { |
||||||
|
@if not $item { |
||||||
|
@return true; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@return false; |
||||||
|
} |
||||||
|
|
||||||
|
@mixin directional-property($pre, $suf, $vals) { |
||||||
|
// Property Names |
||||||
|
$top: $pre + "-top" + if($suf, "-#{$suf}", ""); |
||||||
|
$bottom: $pre + "-bottom" + if($suf, "-#{$suf}", ""); |
||||||
|
$left: $pre + "-left" + if($suf, "-#{$suf}", ""); |
||||||
|
$right: $pre + "-right" + if($suf, "-#{$suf}", ""); |
||||||
|
$all: $pre + if($suf, "-#{$suf}", ""); |
||||||
|
|
||||||
|
$vals: collapse-directionals($vals); |
||||||
|
|
||||||
|
@if contains-falsy($vals) { |
||||||
|
@if nth($vals, 1) { #{$top}: nth($vals, 1); } |
||||||
|
|
||||||
|
@if length($vals) == 1 { |
||||||
|
@if nth($vals, 1) { #{$right}: nth($vals, 1); } |
||||||
|
} @else { |
||||||
|
@if nth($vals, 2) { #{$right}: nth($vals, 2); } |
||||||
|
} |
||||||
|
|
||||||
|
// prop: top/bottom right/left |
||||||
|
@if length($vals) == 2 { |
||||||
|
@if nth($vals, 1) { #{$bottom}: nth($vals, 1); } |
||||||
|
@if nth($vals, 2) { #{$left}: nth($vals, 2); } |
||||||
|
|
||||||
|
// prop: top right/left bottom |
||||||
|
} @else if length($vals) == 3 { |
||||||
|
@if nth($vals, 3) { #{$bottom}: nth($vals, 3); } |
||||||
|
@if nth($vals, 2) { #{$left}: nth($vals, 2); } |
||||||
|
|
||||||
|
// prop: top right bottom left |
||||||
|
} @else if length($vals) == 4 { |
||||||
|
@if nth($vals, 3) { #{$bottom}: nth($vals, 3); } |
||||||
|
@if nth($vals, 4) { #{$left}: nth($vals, 4); } |
||||||
|
} |
||||||
|
|
||||||
|
// prop: top/right/bottom/left |
||||||
|
} @else { |
||||||
|
#{$all}: $vals; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@mixin margin($vals...) { |
||||||
|
@include directional-property(margin, false, $vals...); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin padding($vals...) { |
||||||
|
@include directional-property(padding, false, $vals...); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin border-style($vals...) { |
||||||
|
@include directional-property(border, style, $vals...); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin border-color($vals...) { |
||||||
|
@include directional-property(border, color, $vals...); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin border-width($vals...) { |
||||||
|
@include directional-property(border, width, $vals...); |
||||||
|
} |
||||||
@ -0,0 +1,7 @@ |
|||||||
|
@mixin ellipsis($width: 100%) { |
||||||
|
display: inline-block; |
||||||
|
max-width: $width; |
||||||
|
overflow: hidden; |
||||||
|
text-overflow: ellipsis; |
||||||
|
white-space: nowrap; |
||||||
|
} |
||||||
@ -0,0 +1,5 @@ |
|||||||
|
$georgia: Georgia, Cambria, "Times New Roman", Times, serif; |
||||||
|
$helvetica: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif; |
||||||
|
$lucida-grande: "Lucida Grande", Tahoma, Verdana, Arial, sans-serif; |
||||||
|
$monospace: "Bitstream Vera Sans Mono", Consolas, Courier, monospace; |
||||||
|
$verdana: Verdana, Geneva, sans-serif; |
||||||
@ -0,0 +1,10 @@ |
|||||||
|
@mixin hide-text { |
||||||
|
overflow: hidden; |
||||||
|
|
||||||
|
&:before { |
||||||
|
content: ""; |
||||||
|
display: block; |
||||||
|
width: 0; |
||||||
|
height: 100%; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,86 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// Generate a variable ($all-text-inputs) with a list of all html5 |
||||||
|
// input types that have a text-based input, excluding textarea. |
||||||
|
// http://diveintohtml5.org/forms.html |
||||||
|
//************************************************************************// |
||||||
|
$inputs-list: 'input[type="email"]', |
||||||
|
'input[type="number"]', |
||||||
|
'input[type="password"]', |
||||||
|
'input[type="search"]', |
||||||
|
'input[type="tel"]', |
||||||
|
'input[type="text"]', |
||||||
|
'input[type="url"]', |
||||||
|
|
||||||
|
// Webkit & Gecko may change the display of these in the future |
||||||
|
'input[type="color"]', |
||||||
|
'input[type="date"]', |
||||||
|
'input[type="datetime"]', |
||||||
|
'input[type="datetime-local"]', |
||||||
|
'input[type="month"]', |
||||||
|
'input[type="time"]', |
||||||
|
'input[type="week"]'; |
||||||
|
|
||||||
|
// Bare inputs |
||||||
|
//************************************************************************// |
||||||
|
$all-text-inputs: assign-inputs($inputs-list); |
||||||
|
|
||||||
|
// Hover Pseudo-class |
||||||
|
//************************************************************************// |
||||||
|
$all-text-inputs-hover: assign-inputs($inputs-list, hover); |
||||||
|
|
||||||
|
// Focus Pseudo-class |
||||||
|
//************************************************************************// |
||||||
|
$all-text-inputs-focus: assign-inputs($inputs-list, focus); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// You must use interpolation on the variable: |
||||||
|
// #{$all-text-inputs} |
||||||
|
// #{$all-text-inputs-hover} |
||||||
|
// #{$all-text-inputs-focus} |
||||||
|
|
||||||
|
// Example |
||||||
|
//************************************************************************// |
||||||
|
// #{$all-text-inputs}, textarea { |
||||||
|
// border: 1px solid red; |
||||||
|
// } |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//************************************************************************// |
||||||
|
// Generate a variable ($all-button-inputs) with a list of all html5 |
||||||
|
// input types that have a button-based input, excluding button. |
||||||
|
//************************************************************************// |
||||||
|
$inputs-button-list: 'input[type="button"]', |
||||||
|
'input[type="reset"]', |
||||||
|
'input[type="submit"]'; |
||||||
|
|
||||||
|
// Bare inputs |
||||||
|
//************************************************************************// |
||||||
|
$all-button-inputs: assign-inputs($inputs-button-list); |
||||||
|
|
||||||
|
// Hover Pseudo-class |
||||||
|
//************************************************************************// |
||||||
|
$all-button-inputs-hover: assign-inputs($inputs-button-list, hover); |
||||||
|
|
||||||
|
// Focus Pseudo-class |
||||||
|
//************************************************************************// |
||||||
|
$all-button-inputs-focus: assign-inputs($inputs-button-list, focus); |
||||||
|
|
||||||
|
// Active Pseudo-class |
||||||
|
//************************************************************************// |
||||||
|
$all-button-inputs-active: assign-inputs($inputs-button-list, active); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// You must use interpolation on the variable: |
||||||
|
// #{$all-button-inputs} |
||||||
|
// #{$all-button-inputs-hover} |
||||||
|
// #{$all-button-inputs-focus} |
||||||
|
// #{$all-button-inputs-active} |
||||||
|
|
||||||
|
// Example |
||||||
|
//************************************************************************// |
||||||
|
// #{$all-button-inputs}, button { |
||||||
|
// border: 1px solid red; |
||||||
|
// } |
||||||
@ -0,0 +1,32 @@ |
|||||||
|
@mixin position ($position: relative, $coordinates: null null null null) { |
||||||
|
|
||||||
|
@if type-of($position) == list { |
||||||
|
$coordinates: $position; |
||||||
|
$position: relative; |
||||||
|
} |
||||||
|
|
||||||
|
$coordinates: unpack($coordinates); |
||||||
|
|
||||||
|
$top: nth($coordinates, 1); |
||||||
|
$right: nth($coordinates, 2); |
||||||
|
$bottom: nth($coordinates, 3); |
||||||
|
$left: nth($coordinates, 4); |
||||||
|
|
||||||
|
position: $position; |
||||||
|
|
||||||
|
@if ($top and $top == auto) or (type-of($top) == number) { |
||||||
|
top: $top; |
||||||
|
} |
||||||
|
|
||||||
|
@if ($right and $right == auto) or (type-of($right) == number) { |
||||||
|
right: $right; |
||||||
|
} |
||||||
|
|
||||||
|
@if ($bottom and $bottom == auto) or (type-of($bottom) == number) { |
||||||
|
bottom: $bottom; |
||||||
|
} |
||||||
|
|
||||||
|
@if ($left and $left == auto) or (type-of($left) == number) { |
||||||
|
left: $left; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,45 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// Example: @include prefixer(border-radius, $radii, webkit ms spec); |
||||||
|
//************************************************************************// |
||||||
|
// Variables located in /settings/_prefixer.scss |
||||||
|
|
||||||
|
@mixin prefixer ($property, $value, $prefixes) { |
||||||
|
@each $prefix in $prefixes { |
||||||
|
@if $prefix == webkit { |
||||||
|
@if $prefix-for-webkit { |
||||||
|
-webkit-#{$property}: $value; |
||||||
|
} |
||||||
|
} |
||||||
|
@else if $prefix == moz { |
||||||
|
@if $prefix-for-mozilla { |
||||||
|
-moz-#{$property}: $value; |
||||||
|
} |
||||||
|
} |
||||||
|
@else if $prefix == ms { |
||||||
|
@if $prefix-for-microsoft { |
||||||
|
-ms-#{$property}: $value; |
||||||
|
} |
||||||
|
} |
||||||
|
@else if $prefix == o { |
||||||
|
@if $prefix-for-opera { |
||||||
|
-o-#{$property}: $value; |
||||||
|
} |
||||||
|
} |
||||||
|
@else if $prefix == spec { |
||||||
|
@if $prefix-for-spec { |
||||||
|
#{$property}: $value; |
||||||
|
} |
||||||
|
} |
||||||
|
@else { |
||||||
|
@warn "Unrecognized prefix: #{$prefix}"; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@mixin disable-prefix-for-all() { |
||||||
|
$prefix-for-webkit: false !global; |
||||||
|
$prefix-for-mozilla: false !global; |
||||||
|
$prefix-for-microsoft: false !global; |
||||||
|
$prefix-for-opera: false !global; |
||||||
|
$prefix-for-spec: false !global; |
||||||
|
} |
||||||
@ -0,0 +1,33 @@ |
|||||||
|
@mixin rem($property, $size, $base: $em-base) { |
||||||
|
@if not unitless($base) { |
||||||
|
$base: strip-units($base); |
||||||
|
} |
||||||
|
|
||||||
|
$unitless_values: (); |
||||||
|
@each $num in $size { |
||||||
|
@if not unitless($num) { |
||||||
|
@if unit($num) == "em" { |
||||||
|
$num: $num * $base; |
||||||
|
} |
||||||
|
|
||||||
|
$num: strip-units($num); |
||||||
|
} |
||||||
|
|
||||||
|
$unitless_values: append($unitless_values, $num); |
||||||
|
} |
||||||
|
$size: $unitless_values; |
||||||
|
|
||||||
|
$pixel_values: (); |
||||||
|
$rem_values: (); |
||||||
|
@each $value in $pxval { |
||||||
|
$pixel_value: $value * 1px; |
||||||
|
$pixel_values: append($pixel_values, $pixel_value); |
||||||
|
|
||||||
|
$rem_value: ($value / $base) * 1rem; |
||||||
|
$rem_values: append($rem_values, $rem_value); |
||||||
|
} |
||||||
|
|
||||||
|
#{$property}: $pixel_values; |
||||||
|
#{$property}: $rem_values; |
||||||
|
} |
||||||
|
|
||||||
@ -0,0 +1,31 @@ |
|||||||
|
@mixin retina-image($filename, $background-size, $extension: png, $retina-filename: null, $retina-suffix: _2x, $asset-pipeline: false) { |
||||||
|
@if $asset-pipeline { |
||||||
|
background-image: image-url("#{$filename}.#{$extension}"); |
||||||
|
} |
||||||
|
@else { |
||||||
|
background-image: url("#{$filename}.#{$extension}"); |
||||||
|
} |
||||||
|
|
||||||
|
@include hidpi { |
||||||
|
@if $asset-pipeline { |
||||||
|
@if $retina-filename { |
||||||
|
background-image: image-url("#{$retina-filename}.#{$extension}"); |
||||||
|
} |
||||||
|
@else { |
||||||
|
background-image: image-url("#{$filename}#{$retina-suffix}.#{$extension}"); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
@if $retina-filename { |
||||||
|
background-image: url("#{$retina-filename}.#{$extension}"); |
||||||
|
} |
||||||
|
@else { |
||||||
|
background-image: url("#{$filename}#{$retina-suffix}.#{$extension}"); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
background-size: $background-size; |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,16 @@ |
|||||||
|
@mixin size($size) { |
||||||
|
$height: nth($size, 1); |
||||||
|
$width: $height; |
||||||
|
|
||||||
|
@if length($size) > 1 { |
||||||
|
$height: nth($size, 2); |
||||||
|
} |
||||||
|
|
||||||
|
@if $height == auto or (type-of($height) == number and not unitless($height)) { |
||||||
|
height: $height; |
||||||
|
} |
||||||
|
|
||||||
|
@if $width == auto or (type-of($height) == number and not unitless($width)) { |
||||||
|
width: $width; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,32 @@ |
|||||||
|
// CSS cubic-bezier timing functions. Timing functions courtesy of jquery.easie (github.com/jaukia/easie) |
||||||
|
// Timing functions are the same as demo'ed here: http://jqueryui.com/demos/effect/easing.html |
||||||
|
|
||||||
|
// EASE IN |
||||||
|
$ease-in-quad: cubic-bezier(0.550, 0.085, 0.680, 0.530); |
||||||
|
$ease-in-cubic: cubic-bezier(0.550, 0.055, 0.675, 0.190); |
||||||
|
$ease-in-quart: cubic-bezier(0.895, 0.030, 0.685, 0.220); |
||||||
|
$ease-in-quint: cubic-bezier(0.755, 0.050, 0.855, 0.060); |
||||||
|
$ease-in-sine: cubic-bezier(0.470, 0.000, 0.745, 0.715); |
||||||
|
$ease-in-expo: cubic-bezier(0.950, 0.050, 0.795, 0.035); |
||||||
|
$ease-in-circ: cubic-bezier(0.600, 0.040, 0.980, 0.335); |
||||||
|
$ease-in-back: cubic-bezier(0.600, -0.280, 0.735, 0.045); |
||||||
|
|
||||||
|
// EASE OUT |
||||||
|
$ease-out-quad: cubic-bezier(0.250, 0.460, 0.450, 0.940); |
||||||
|
$ease-out-cubic: cubic-bezier(0.215, 0.610, 0.355, 1.000); |
||||||
|
$ease-out-quart: cubic-bezier(0.165, 0.840, 0.440, 1.000); |
||||||
|
$ease-out-quint: cubic-bezier(0.230, 1.000, 0.320, 1.000); |
||||||
|
$ease-out-sine: cubic-bezier(0.390, 0.575, 0.565, 1.000); |
||||||
|
$ease-out-expo: cubic-bezier(0.190, 1.000, 0.220, 1.000); |
||||||
|
$ease-out-circ: cubic-bezier(0.075, 0.820, 0.165, 1.000); |
||||||
|
$ease-out-back: cubic-bezier(0.175, 0.885, 0.320, 1.275); |
||||||
|
|
||||||
|
// EASE IN OUT |
||||||
|
$ease-in-out-quad: cubic-bezier(0.455, 0.030, 0.515, 0.955); |
||||||
|
$ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1.000); |
||||||
|
$ease-in-out-quart: cubic-bezier(0.770, 0.000, 0.175, 1.000); |
||||||
|
$ease-in-out-quint: cubic-bezier(0.860, 0.000, 0.070, 1.000); |
||||||
|
$ease-in-out-sine: cubic-bezier(0.445, 0.050, 0.550, 0.950); |
||||||
|
$ease-in-out-expo: cubic-bezier(1.000, 0.000, 0.000, 1.000); |
||||||
|
$ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.150, 0.860); |
||||||
|
$ease-in-out-back: cubic-bezier(0.680, -0.550, 0.265, 1.550); |
||||||
@ -0,0 +1,83 @@ |
|||||||
|
@mixin triangle ($size, $color, $direction) { |
||||||
|
height: 0; |
||||||
|
width: 0; |
||||||
|
|
||||||
|
$width: nth($size, 1); |
||||||
|
$height: nth($size, length($size)); |
||||||
|
|
||||||
|
$foreground-color: nth($color, 1); |
||||||
|
$background-color: if(length($color) == 2, nth($color, 2), transparent); |
||||||
|
|
||||||
|
@if ($direction == up) or ($direction == down) or ($direction == right) or ($direction == left) { |
||||||
|
|
||||||
|
$width: $width / 2; |
||||||
|
$height: if(length($size) > 1, $height, $height/2); |
||||||
|
|
||||||
|
@if $direction == up { |
||||||
|
border-left: $width solid $background-color; |
||||||
|
border-right: $width solid $background-color; |
||||||
|
border-bottom: $height solid $foreground-color; |
||||||
|
|
||||||
|
} @else if $direction == right { |
||||||
|
border-top: $width solid $background-color; |
||||||
|
border-bottom: $width solid $background-color; |
||||||
|
border-left: $height solid $foreground-color; |
||||||
|
|
||||||
|
} @else if $direction == down { |
||||||
|
border-left: $width solid $background-color; |
||||||
|
border-right: $width solid $background-color; |
||||||
|
border-top: $height solid $foreground-color; |
||||||
|
|
||||||
|
} @else if $direction == left { |
||||||
|
border-top: $width solid $background-color; |
||||||
|
border-bottom: $width solid $background-color; |
||||||
|
border-right: $height solid $foreground-color; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@else if ($direction == up-right) or ($direction == up-left) { |
||||||
|
border-top: $height solid $foreground-color; |
||||||
|
|
||||||
|
@if $direction == up-right { |
||||||
|
border-left: $width solid $background-color; |
||||||
|
|
||||||
|
} @else if $direction == up-left { |
||||||
|
border-right: $width solid $background-color; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@else if ($direction == down-right) or ($direction == down-left) { |
||||||
|
border-bottom: $height solid $foreground-color; |
||||||
|
|
||||||
|
@if $direction == down-right { |
||||||
|
border-left: $width solid $background-color; |
||||||
|
|
||||||
|
} @else if $direction == down-left { |
||||||
|
border-right: $width solid $background-color; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@else if ($direction == inset-up) { |
||||||
|
border-width: $height $width; |
||||||
|
border-style: solid; |
||||||
|
border-color: $background-color $background-color $foreground-color; |
||||||
|
} |
||||||
|
|
||||||
|
@else if ($direction == inset-down) { |
||||||
|
border-width: $height $width; |
||||||
|
border-style: solid; |
||||||
|
border-color: $foreground-color $background-color $background-color; |
||||||
|
} |
||||||
|
|
||||||
|
@else if ($direction == inset-right) { |
||||||
|
border-width: $width $height; |
||||||
|
border-style: solid; |
||||||
|
border-color: $background-color $background-color $background-color $foreground-color; |
||||||
|
} |
||||||
|
|
||||||
|
@else if ($direction == inset-left) { |
||||||
|
border-width: $width $height; |
||||||
|
border-style: solid; |
||||||
|
border-color: $background-color $foreground-color $background-color $background-color; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,8 @@ |
|||||||
|
@mixin word-wrap($wrap: break-word) { |
||||||
|
word-wrap: $wrap; |
||||||
|
|
||||||
|
@if $wrap == break-word { |
||||||
|
overflow-wrap: break-word; |
||||||
|
word-break: break-all; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,52 @@ |
|||||||
|
// http://www.w3.org/TR/css3-animations/#the-animation-name-property- |
||||||
|
// Each of these mixins support comma separated lists of values, which allows different transitions for individual properties to be described in a single style rule. Each value in the list corresponds to the value at that same position in the other properties. |
||||||
|
|
||||||
|
// Official animation shorthand property. |
||||||
|
@mixin animation ($animations...) { |
||||||
|
@include prefixer(animation, $animations, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
// Individual Animation Properties |
||||||
|
@mixin animation-name ($names...) { |
||||||
|
@include prefixer(animation-name, $names, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-duration ($times...) { |
||||||
|
@include prefixer(animation-duration, $times, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-timing-function ($motions...) { |
||||||
|
// ease | linear | ease-in | ease-out | ease-in-out |
||||||
|
@include prefixer(animation-timing-function, $motions, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-iteration-count ($values...) { |
||||||
|
// infinite | <number> |
||||||
|
@include prefixer(animation-iteration-count, $values, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-direction ($directions...) { |
||||||
|
// normal | alternate |
||||||
|
@include prefixer(animation-direction, $directions, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-play-state ($states...) { |
||||||
|
// running | paused |
||||||
|
@include prefixer(animation-play-state, $states, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-delay ($times...) { |
||||||
|
@include prefixer(animation-delay, $times, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@mixin animation-fill-mode ($modes...) { |
||||||
|
// none | forwards | backwards | both |
||||||
|
@include prefixer(animation-fill-mode, $modes, webkit moz spec); |
||||||
|
} |
||||||
@ -0,0 +1,3 @@ |
|||||||
|
@mixin appearance ($value) { |
||||||
|
@include prefixer(appearance, $value, webkit moz ms o spec); |
||||||
|
} |
||||||
@ -0,0 +1,6 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// Backface-visibility mixin |
||||||
|
//************************************************************************// |
||||||
|
@mixin backface-visibility($visibility) { |
||||||
|
@include prefixer(backface-visibility, $visibility, webkit spec); |
||||||
|
} |
||||||
@ -0,0 +1,42 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// Background-image property for adding multiple background images with |
||||||
|
// gradients, or for stringing multiple gradients together. |
||||||
|
//************************************************************************// |
||||||
|
|
||||||
|
@mixin background-image($images...) { |
||||||
|
$webkit-images: (); |
||||||
|
$spec-images: (); |
||||||
|
|
||||||
|
@each $image in $images { |
||||||
|
$webkit-image: (); |
||||||
|
$spec-image: (); |
||||||
|
|
||||||
|
@if (type-of($image) == string) { |
||||||
|
$url-str: str-slice($image, 0, 3); |
||||||
|
$gradient-type: str-slice($image, 0, 6); |
||||||
|
|
||||||
|
@if $url-str == "url" { |
||||||
|
$webkit-image: $image; |
||||||
|
$spec-image: $image; |
||||||
|
} |
||||||
|
|
||||||
|
@else if $gradient-type == "linear" { |
||||||
|
$gradients: _linear-gradient-parser($image); |
||||||
|
$webkit-image: map-get($gradients, webkit-image); |
||||||
|
$spec-image: map-get($gradients, spec-image); |
||||||
|
} |
||||||
|
|
||||||
|
@else if $gradient-type == "radial" { |
||||||
|
$gradients: _radial-gradient-parser($image); |
||||||
|
$webkit-image: map-get($gradients, webkit-image); |
||||||
|
$spec-image: map-get($gradients, spec-image); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
$webkit-images: append($webkit-images, $webkit-image, comma); |
||||||
|
$spec-images: append($spec-images, $spec-image, comma); |
||||||
|
} |
||||||
|
|
||||||
|
background-image: $webkit-images; |
||||||
|
background-image: $spec-images; |
||||||
|
} |
||||||
@ -0,0 +1,55 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// Background property for adding multiple backgrounds using shorthand |
||||||
|
// notation. |
||||||
|
//************************************************************************// |
||||||
|
|
||||||
|
@mixin background($backgrounds...) { |
||||||
|
$webkit-backgrounds: (); |
||||||
|
$spec-backgrounds: (); |
||||||
|
|
||||||
|
@each $background in $backgrounds { |
||||||
|
$webkit-background: (); |
||||||
|
$spec-background: (); |
||||||
|
$background-type: type-of($background); |
||||||
|
|
||||||
|
@if $background-type == string or list { |
||||||
|
$background-str: if($background-type == list, nth($background, 1), $background); |
||||||
|
|
||||||
|
$url-str: str-slice($background-str, 0, 3); |
||||||
|
$gradient-type: str-slice($background-str, 0, 6); |
||||||
|
|
||||||
|
@if $url-str == "url" { |
||||||
|
$webkit-background: $background; |
||||||
|
$spec-background: $background; |
||||||
|
} |
||||||
|
|
||||||
|
@else if $gradient-type == "linear" { |
||||||
|
$gradients: _linear-gradient-parser("#{$background}"); |
||||||
|
$webkit-background: map-get($gradients, webkit-image); |
||||||
|
$spec-background: map-get($gradients, spec-image); |
||||||
|
} |
||||||
|
|
||||||
|
@else if $gradient-type == "radial" { |
||||||
|
$gradients: _radial-gradient-parser("#{$background}"); |
||||||
|
$webkit-background: map-get($gradients, webkit-image); |
||||||
|
$spec-background: map-get($gradients, spec-image); |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
$webkit-background: $background; |
||||||
|
$spec-background: $background; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
$webkit-background: $background; |
||||||
|
$spec-background: $background; |
||||||
|
} |
||||||
|
|
||||||
|
$webkit-backgrounds: append($webkit-backgrounds, $webkit-background, comma); |
||||||
|
$spec-backgrounds: append($spec-backgrounds, $spec-background, comma); |
||||||
|
} |
||||||
|
|
||||||
|
background: $webkit-backgrounds; |
||||||
|
background: $spec-backgrounds; |
||||||
|
} |
||||||
@ -0,0 +1,59 @@ |
|||||||
|
@mixin border-image($borders...) { |
||||||
|
$webkit-borders: (); |
||||||
|
$spec-borders: (); |
||||||
|
|
||||||
|
@each $border in $borders { |
||||||
|
$webkit-border: (); |
||||||
|
$spec-border: (); |
||||||
|
$border-type: type-of($border); |
||||||
|
|
||||||
|
@if $border-type == string or list { |
||||||
|
$border-str: if($border-type == list, nth($border, 1), $border); |
||||||
|
|
||||||
|
$url-str: str-slice($border-str, 0, 3); |
||||||
|
$gradient-type: str-slice($border-str, 0, 6); |
||||||
|
|
||||||
|
@if $url-str == "url" { |
||||||
|
$webkit-border: $border; |
||||||
|
$spec-border: $border; |
||||||
|
} |
||||||
|
|
||||||
|
@else if $gradient-type == "linear" { |
||||||
|
$gradients: _linear-gradient-parser("#{$border}"); |
||||||
|
$webkit-border: map-get($gradients, webkit-image); |
||||||
|
$spec-border: map-get($gradients, spec-image); |
||||||
|
} |
||||||
|
|
||||||
|
@else if $gradient-type == "radial" { |
||||||
|
$gradients: _radial-gradient-parser("#{$border}"); |
||||||
|
$webkit-border: map-get($gradients, webkit-image); |
||||||
|
$spec-border: map-get($gradients, spec-image); |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
$webkit-border: $border; |
||||||
|
$spec-border: $border; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
$webkit-border: $border; |
||||||
|
$spec-border: $border; |
||||||
|
} |
||||||
|
|
||||||
|
$webkit-borders: append($webkit-borders, $webkit-border, comma); |
||||||
|
$spec-borders: append($spec-borders, $spec-border, comma); |
||||||
|
} |
||||||
|
|
||||||
|
-webkit-border-image: $webkit-borders; |
||||||
|
border-image: $spec-borders; |
||||||
|
border-style: solid; |
||||||
|
} |
||||||
|
|
||||||
|
//Examples: |
||||||
|
// @include border-image(url("image.png")); |
||||||
|
// @include border-image(url("image.png") 20 stretch); |
||||||
|
// @include border-image(linear-gradient(45deg, orange, yellow)); |
||||||
|
// @include border-image(linear-gradient(45deg, orange, yellow) stretch); |
||||||
|
// @include border-image(linear-gradient(45deg, orange, yellow) 20 30 40 50 stretch round); |
||||||
|
// @include border-image(radial-gradient(top, cover, orange, yellow, orange)); |
||||||
@ -0,0 +1,22 @@ |
|||||||
|
//************************************************************************// |
||||||
|
// Shorthand Border-radius mixins |
||||||
|
//************************************************************************// |
||||||
|
@mixin border-top-radius($radii) { |
||||||
|
@include prefixer(border-top-left-radius, $radii, spec); |
||||||
|
@include prefixer(border-top-right-radius, $radii, spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin border-bottom-radius($radii) { |
||||||
|
@include prefixer(border-bottom-left-radius, $radii, spec); |
||||||
|
@include prefixer(border-bottom-right-radius, $radii, spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin border-left-radius($radii) { |
||||||
|
@include prefixer(border-top-left-radius, $radii, spec); |
||||||
|
@include prefixer(border-bottom-left-radius, $radii, spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin border-right-radius($radii) { |
||||||
|
@include prefixer(border-top-right-radius, $radii, spec); |
||||||
|
@include prefixer(border-bottom-right-radius, $radii, spec); |
||||||
|
} |
||||||
@ -0,0 +1,4 @@ |
|||||||
|
@mixin box-sizing ($box) { |
||||||
|
// content-box | border-box | inherit |
||||||
|
@include prefixer(box-sizing, $box, webkit moz spec); |
||||||
|
} |
||||||
@ -0,0 +1,4 @@ |
|||||||
|
@mixin calc($property, $value) { |
||||||
|
#{$property}: -webkit-calc(#{$value}); |
||||||
|
#{$property}: calc(#{$value}); |
||||||
|
} |
||||||
@ -0,0 +1,47 @@ |
|||||||
|
@mixin columns($arg: auto) { |
||||||
|
// <column-count> || <column-width> |
||||||
|
@include prefixer(columns, $arg, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-count($int: auto) { |
||||||
|
// auto || integer |
||||||
|
@include prefixer(column-count, $int, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-gap($length: normal) { |
||||||
|
// normal || length |
||||||
|
@include prefixer(column-gap, $length, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-fill($arg: auto) { |
||||||
|
// auto || length |
||||||
|
@include prefixer(column-fill, $arg, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-rule($arg) { |
||||||
|
// <border-width> || <border-style> || <color> |
||||||
|
@include prefixer(column-rule, $arg, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-rule-color($color) { |
||||||
|
@include prefixer(column-rule-color, $color, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-rule-style($style: none) { |
||||||
|
// none | hidden | dashed | dotted | double | groove | inset | inset | outset | ridge | solid |
||||||
|
@include prefixer(column-rule-style, $style, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-rule-width ($width: none) { |
||||||
|
@include prefixer(column-rule-width, $width, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-span($arg: none) { |
||||||
|
// none || all |
||||||
|
@include prefixer(column-span, $arg, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin column-width($length: auto) { |
||||||
|
// auto || length |
||||||
|
@include prefixer(column-width, $length, webkit moz spec); |
||||||
|
} |
||||||
@ -0,0 +1,5 @@ |
|||||||
|
@mixin filter($function: none) { |
||||||
|
// <filter-function> [<filter-function]* | none |
||||||
|
@include prefixer(filter, $function, webkit spec); |
||||||
|
} |
||||||
|
|
||||||
@ -0,0 +1,321 @@ |
|||||||
|
// CSS3 Flexible Box Model and property defaults |
||||||
|
|
||||||
|
// Custom shorthand notation for flexbox |
||||||
|
@mixin box($orient: inline-axis, $pack: start, $align: stretch) { |
||||||
|
@include display-box; |
||||||
|
@include box-orient($orient); |
||||||
|
@include box-pack($pack); |
||||||
|
@include box-align($align); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin display-box { |
||||||
|
display: -webkit-box; |
||||||
|
display: -moz-box; |
||||||
|
display: -ms-flexbox; // IE 10 |
||||||
|
display: box; |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-orient($orient: inline-axis) { |
||||||
|
// horizontal|vertical|inline-axis|block-axis|inherit |
||||||
|
@include prefixer(box-orient, $orient, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-pack($pack: start) { |
||||||
|
// start|end|center|justify |
||||||
|
@include prefixer(box-pack, $pack, webkit moz spec); |
||||||
|
-ms-flex-pack: $pack; // IE 10 |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-align($align: stretch) { |
||||||
|
// start|end|center|baseline|stretch |
||||||
|
@include prefixer(box-align, $align, webkit moz spec); |
||||||
|
-ms-flex-align: $align; // IE 10 |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-direction($direction: normal) { |
||||||
|
// normal|reverse|inherit |
||||||
|
@include prefixer(box-direction, $direction, webkit moz spec); |
||||||
|
-ms-flex-direction: $direction; // IE 10 |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-lines($lines: single) { |
||||||
|
// single|multiple |
||||||
|
@include prefixer(box-lines, $lines, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-ordinal-group($int: 1) { |
||||||
|
@include prefixer(box-ordinal-group, $int, webkit moz spec); |
||||||
|
-ms-flex-order: $int; // IE 10 |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-flex($value: 0.0) { |
||||||
|
@include prefixer(box-flex, $value, webkit moz spec); |
||||||
|
-ms-flex: $value; // IE 10 |
||||||
|
} |
||||||
|
|
||||||
|
@mixin box-flex-group($int: 1) { |
||||||
|
@include prefixer(box-flex-group, $int, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
// CSS3 Flexible Box Model and property defaults |
||||||
|
// Unified attributes for 2009, 2011, and 2012 flavours. |
||||||
|
|
||||||
|
// 2009 - display (box | inline-box) |
||||||
|
// 2011 - display (flexbox | inline-flexbox) |
||||||
|
// 2012 - display (flex | inline-flex) |
||||||
|
@mixin display($value) { |
||||||
|
// flex | inline-flex |
||||||
|
@if $value == "flex" { |
||||||
|
// 2009 |
||||||
|
display: -webkit-box; |
||||||
|
display: -moz-box; |
||||||
|
display: box; |
||||||
|
|
||||||
|
// 2012 |
||||||
|
display: -webkit-flex; |
||||||
|
display: -moz-flex; |
||||||
|
display: -ms-flexbox; // 2011 (IE 10) |
||||||
|
display: flex; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "inline-flex" { |
||||||
|
display: -webkit-inline-box; |
||||||
|
display: -moz-inline-box; |
||||||
|
display: inline-box; |
||||||
|
|
||||||
|
display: -webkit-inline-flex; |
||||||
|
display: -moz-inline-flex; |
||||||
|
display: -ms-inline-flexbox; |
||||||
|
display: inline-flex; |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
display: $value; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - box-flex (integer) |
||||||
|
// 2011 - flex (decimal | width decimal) |
||||||
|
// 2012 - flex (integer integer width) |
||||||
|
@mixin flex($value) { |
||||||
|
|
||||||
|
// Grab flex-grow for older browsers. |
||||||
|
$flex-grow: nth($value, 1); |
||||||
|
|
||||||
|
// 2009 |
||||||
|
@include prefixer(box-flex, $flex-grow, webkit moz spec); |
||||||
|
|
||||||
|
// 2011 (IE 10), 2012 |
||||||
|
@include prefixer(flex, $value, webkit moz ms spec); |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - box-orient ( horizontal | vertical | inline-axis | block-axis) |
||||||
|
// - box-direction (normal | reverse) |
||||||
|
// 2011 - flex-direction (row | row-reverse | column | column-reverse) |
||||||
|
// 2012 - flex-direction (row | row-reverse | column | column-reverse) |
||||||
|
@mixin flex-direction($value: row) { |
||||||
|
|
||||||
|
// Alt values. |
||||||
|
$value-2009: $value; |
||||||
|
$value-2011: $value; |
||||||
|
$direction: "normal"; |
||||||
|
|
||||||
|
@if $value == row { |
||||||
|
$value-2009: horizontal; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "row-reverse" { |
||||||
|
$value-2009: horizontal; |
||||||
|
$direction: reverse; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == column { |
||||||
|
$value-2009: vertical; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "column-reverse" { |
||||||
|
$value-2009: vertical; |
||||||
|
$direction: reverse; |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 |
||||||
|
@include prefixer(box-orient, $value-2009, webkit moz spec); |
||||||
|
@if $direction == "reverse" { |
||||||
|
@include prefixer(box-direction, $direction, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
// 2012 |
||||||
|
@include prefixer(flex-direction, $value, webkit moz spec); |
||||||
|
|
||||||
|
// 2011 (IE 10) |
||||||
|
-ms-flex-direction: $value; |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - box-lines (single | multiple) |
||||||
|
// 2011 - flex-wrap (nowrap | wrap | wrap-reverse) |
||||||
|
// 2012 - flex-wrap (nowrap | wrap | wrap-reverse) |
||||||
|
@mixin flex-wrap($value: nowrap) { |
||||||
|
|
||||||
|
// Alt values. |
||||||
|
$alt-value: $value; |
||||||
|
@if $value == nowrap { |
||||||
|
$alt-value: single; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == wrap { |
||||||
|
$alt-value: multiple; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "wrap-reverse" { |
||||||
|
$alt-value: multiple; |
||||||
|
} |
||||||
|
|
||||||
|
@include prefixer(box-lines, $alt-value, webkit moz spec); |
||||||
|
@include prefixer(flex-wrap, $value, webkit moz ms spec); |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - TODO: parse values into flex-direction/flex-wrap |
||||||
|
// 2011 - TODO: parse values into flex-direction/flex-wrap |
||||||
|
// 2012 - flex-flow (flex-direction || flex-wrap) |
||||||
|
@mixin flex-flow($value) { |
||||||
|
@include prefixer(flex-flow, $value, webkit moz spec); |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - box-ordinal-group (integer) |
||||||
|
// 2011 - flex-order (integer) |
||||||
|
// 2012 - order (integer) |
||||||
|
@mixin order($int: 0) { |
||||||
|
// 2009 |
||||||
|
@include prefixer(box-ordinal-group, $int, webkit moz spec); |
||||||
|
|
||||||
|
// 2012 |
||||||
|
@include prefixer(order, $int, webkit moz spec); |
||||||
|
|
||||||
|
// 2011 (IE 10) |
||||||
|
-ms-flex-order: $int; |
||||||
|
} |
||||||
|
|
||||||
|
// 2012 - flex-grow (number) |
||||||
|
@mixin flex-grow($number: 0) { |
||||||
|
@include prefixer(flex-grow, $number, webkit moz spec); |
||||||
|
-ms-flex-positive: $number; |
||||||
|
} |
||||||
|
|
||||||
|
// 2012 - flex-shrink (number) |
||||||
|
@mixin flex-shrink($number: 1) { |
||||||
|
@include prefixer(flex-shrink, $number, webkit moz spec); |
||||||
|
-ms-flex-negative: $number; |
||||||
|
} |
||||||
|
|
||||||
|
// 2012 - flex-basis (number) |
||||||
|
@mixin flex-basis($width: auto) { |
||||||
|
@include prefixer(flex-basis, $width, webkit moz spec); |
||||||
|
-ms-flex-preferred-size: $width; |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - box-pack (start | end | center | justify) |
||||||
|
// 2011 - flex-pack (start | end | center | justify) |
||||||
|
// 2012 - justify-content (flex-start | flex-end | center | space-between | space-around) |
||||||
|
@mixin justify-content ($value: flex-start) { |
||||||
|
|
||||||
|
// Alt values. |
||||||
|
$alt-value: $value; |
||||||
|
@if $value == "flex-start" { |
||||||
|
$alt-value: start; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "flex-end" { |
||||||
|
$alt-value: end; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "space-between" { |
||||||
|
$alt-value: justify; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "space-around" { |
||||||
|
$alt-value: center; |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 |
||||||
|
@include prefixer(box-pack, $alt-value, webkit moz spec); |
||||||
|
|
||||||
|
// 2012 |
||||||
|
@include prefixer(justify-content, $value, webkit moz ms o spec); |
||||||
|
|
||||||
|
// 2011 (IE 10) |
||||||
|
-ms-flex-pack: $alt-value; |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 - box-align (start | end | center | baseline | stretch) |
||||||
|
// 2011 - flex-align (start | end | center | baseline | stretch) |
||||||
|
// 2012 - align-items (flex-start | flex-end | center | baseline | stretch) |
||||||
|
@mixin align-items($value: stretch) { |
||||||
|
|
||||||
|
$alt-value: $value; |
||||||
|
|
||||||
|
@if $value == "flex-start" { |
||||||
|
$alt-value: start; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "flex-end" { |
||||||
|
$alt-value: end; |
||||||
|
} |
||||||
|
|
||||||
|
// 2009 |
||||||
|
@include prefixer(box-align, $alt-value, webkit moz spec); |
||||||
|
|
||||||
|
// 2012 |
||||||
|
@include prefixer(align-items, $value, webkit moz ms o spec); |
||||||
|
|
||||||
|
// 2011 (IE 10) |
||||||
|
-ms-flex-align: $alt-value; |
||||||
|
} |
||||||
|
|
||||||
|
// 2011 - flex-item-align (auto | start | end | center | baseline | stretch) |
||||||
|
// 2012 - align-self (auto | flex-start | flex-end | center | baseline | stretch) |
||||||
|
@mixin align-self($value: auto) { |
||||||
|
|
||||||
|
$value-2011: $value; |
||||||
|
@if $value == "flex-start" { |
||||||
|
$value-2011: start; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "flex-end" { |
||||||
|
$value-2011: end; |
||||||
|
} |
||||||
|
|
||||||
|
// 2012 |
||||||
|
@include prefixer(align-self, $value, webkit moz spec); |
||||||
|
|
||||||
|
// 2011 (IE 10) |
||||||
|
-ms-flex-item-align: $value-2011; |
||||||
|
} |
||||||
|
|
||||||
|
// 2011 - flex-line-pack (start | end | center | justify | distribute | stretch) |
||||||
|
// 2012 - align-content (flex-start | flex-end | center | space-between | space-around | stretch) |
||||||
|
@mixin align-content($value: stretch) { |
||||||
|
|
||||||
|
$value-2011: $value; |
||||||
|
@if $value == "flex-start" { |
||||||
|
$value-2011: start; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "flex-end" { |
||||||
|
$value-2011: end; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "space-between" { |
||||||
|
$value-2011: justify; |
||||||
|
} |
||||||
|
|
||||||
|
@elseif $value == "space-around" { |
||||||
|
$value-2011: distribute; |
||||||
|
} |
||||||
|
|
||||||
|
// 2012 |
||||||
|
@include prefixer(align-content, $value, webkit moz spec); |
||||||
|
|
||||||
|
// 2011 (IE 10) |
||||||
|
-ms-flex-line-pack: $value-2011; |
||||||
|
} |
||||||
|
|
||||||
@ -0,0 +1,23 @@ |
|||||||
|
// Order of the includes matters, and it is: normal, bold, italic, bold+italic. |
||||||
|
|
||||||
|
@mixin font-face($font-family, $file-path, $weight: normal, $style: normal, $asset-pipeline: false ) { |
||||||
|
@font-face { |
||||||
|
font-family: $font-family; |
||||||
|
font-weight: $weight; |
||||||
|
font-style: $style; |
||||||
|
|
||||||
|
@if $asset-pipeline == true { |
||||||
|
src: font-url('#{$file-path}.eot'); |
||||||
|
src: font-url('#{$file-path}.eot?#iefix') format('embedded-opentype'), |
||||||
|
font-url('#{$file-path}.woff') format('woff'), |
||||||
|
font-url('#{$file-path}.ttf') format('truetype'), |
||||||
|
font-url('#{$file-path}.svg##{$font-family}') format('svg'); |
||||||
|
} @else { |
||||||
|
src: url('#{$file-path}.eot'); |
||||||
|
src: url('#{$file-path}.eot?#iefix') format('embedded-opentype'), |
||||||
|
url('#{$file-path}.woff') format('woff'), |
||||||
|
url('#{$file-path}.ttf') format('truetype'), |
||||||
|
url('#{$file-path}.svg##{$font-family}') format('svg'); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,10 @@ |
|||||||
|
// Font feature settings mixin and property default. |
||||||
|
// Examples: @include font-feature-settings("liga"); |
||||||
|
// @include font-feature-settings("lnum" false); |
||||||
|
// @include font-feature-settings("pnum" 1, "kern" 0); |
||||||
|
// @include font-feature-settings("ss01", "ss02"); |
||||||
|
|
||||||
|
@mixin font-feature-settings($settings...) { |
||||||
|
@if length($settings) == 0 { $settings: none; } |
||||||
|
@include prefixer(font-feature-settings, $settings, webkit moz ms spec); |
||||||
|
} |
||||||
@ -0,0 +1,10 @@ |
|||||||
|
// HiDPI mixin. Default value set to 1.3 to target Google Nexus 7 (http://bjango.com/articles/min-device-pixel-ratio/) |
||||||
|
@mixin hidpi($ratio: 1.3) { |
||||||
|
@media only screen and (-webkit-min-device-pixel-ratio: $ratio), |
||||||
|
only screen and (min--moz-device-pixel-ratio: $ratio), |
||||||
|
only screen and (-o-min-device-pixel-ratio: #{$ratio}/1), |
||||||
|
only screen and (min-resolution: #{round($ratio*96)}dpi), |
||||||
|
only screen and (min-resolution: #{$ratio}dppx) { |
||||||
|
@content; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,4 @@ |
|||||||
|
@mixin hyphens($hyphenation: none) { |
||||||
|
// none | manual | auto |
||||||
|
@include prefixer(hyphens, $hyphenation, webkit moz ms spec); |
||||||
|
} |
||||||
@ -0,0 +1,14 @@ |
|||||||
|
@mixin image-rendering ($mode:auto) { |
||||||
|
|
||||||
|
@if ($mode == crisp-edges) { |
||||||
|
-ms-interpolation-mode: nearest-neighbor; // IE8+ |
||||||
|
image-rendering: -moz-crisp-edges; |
||||||
|
image-rendering: -o-crisp-edges; |
||||||
|
image-rendering: -webkit-optimize-contrast; |
||||||
|
image-rendering: crisp-edges; |
||||||
|
} |
||||||
|
|
||||||
|
@else { |
||||||
|
image-rendering: $mode; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,35 @@ |
|||||||
|
// Adds keyframes blocks for supported prefixes, removing redundant prefixes in the block's content |
||||||
|
@mixin keyframes($name) { |
||||||
|
$original-prefix-for-webkit: $prefix-for-webkit; |
||||||
|
$original-prefix-for-mozilla: $prefix-for-mozilla; |
||||||
|
$original-prefix-for-microsoft: $prefix-for-microsoft; |
||||||
|
$original-prefix-for-opera: $prefix-for-opera; |
||||||
|
$original-prefix-for-spec: $prefix-for-spec; |
||||||
|
|
||||||
|
@if $original-prefix-for-webkit { |
||||||
|
@include disable-prefix-for-all(); |
||||||
|
$prefix-for-webkit: true !global; |
||||||
|
@-webkit-keyframes #{$name} { |
||||||
|
@content; |
||||||
|
} |
||||||
|
} |
||||||
|
@if $original-prefix-for-mozilla { |
||||||
|
@include disable-prefix-for-all(); |
||||||
|
$prefix-for-mozilla: true !global; |
||||||
|
@-moz-keyframes #{$name} { |
||||||
|
@content; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
$prefix-for-webkit: $original-prefix-for-webkit !global; |
||||||
|
$prefix-for-mozilla: $original-prefix-for-mozilla !global; |
||||||
|
$prefix-for-microsoft: $original-prefix-for-microsoft !global; |
||||||
|
$prefix-for-opera: $original-prefix-for-opera !global; |
||||||
|
$prefix-for-spec: $original-prefix-for-spec !global; |
||||||
|
|
||||||
|
@if $original-prefix-for-spec { |
||||||
|
@keyframes #{$name} { |
||||||
|
@content; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,38 @@ |
|||||||
|
@mixin linear-gradient($pos, $G1, $G2: null, |
||||||
|
$G3: null, $G4: null, |
||||||
|
$G5: null, $G6: null, |
||||||
|
$G7: null, $G8: null, |
||||||
|
$G9: null, $G10: null, |
||||||
|
$fallback: null) { |
||||||
|
// Detect what type of value exists in $pos |
||||||
|
$pos-type: type-of(nth($pos, 1)); |
||||||
|
$pos-spec: null; |
||||||
|
$pos-degree: null; |
||||||
|
|
||||||
|
// If $pos is missing from mixin, reassign vars and add default position |
||||||
|
@if ($pos-type == color) or (nth($pos, 1) == "transparent") { |
||||||
|
$G10: $G9; $G9: $G8; $G8: $G7; $G7: $G6; $G6: $G5; |
||||||
|
$G5: $G4; $G4: $G3; $G3: $G2; $G2: $G1; $G1: $pos; |
||||||
|
$pos: null; |
||||||
|
} |
||||||
|
|
||||||
|
@if $pos { |
||||||
|
$positions: _linear-positions-parser($pos); |
||||||
|
$pos-degree: nth($positions, 1); |
||||||
|
$pos-spec: nth($positions, 2); |
||||||
|
} |
||||||
|
|
||||||
|
$full: $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10; |
||||||
|
|
||||||
|
// Set $G1 as the default fallback color |
||||||
|
$fallback-color: nth($G1, 1); |
||||||
|
|
||||||
|
// If $fallback is a color use that color as the fallback color |
||||||
|
@if (type-of($fallback) == color) or ($fallback == "transparent") { |
||||||
|
$fallback-color: $fallback; |
||||||
|
} |
||||||
|
|
||||||
|
background-color: $fallback-color; |
||||||
|
background-image: -webkit-linear-gradient($pos-degree $full); // Safari 5.1+, Chrome |
||||||
|
background-image: unquote("linear-gradient(#{$pos-spec}#{$full})"); |
||||||
|
} |
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue