oulu 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +15 -0
  5. data/Rakefile +1 -0
  6. data/app/assets/stylesheets/_oulu-base.sass +64 -0
  7. data/app/assets/stylesheets/_oulu.sass +9 -0
  8. data/app/assets/stylesheets/helpers/_block.sass +89 -0
  9. data/app/assets/stylesheets/helpers/_border.sass +16 -0
  10. data/app/assets/stylesheets/helpers/_font-awsome.sass +11 -0
  11. data/app/assets/stylesheets/helpers/_margin-padding.sass +110 -0
  12. data/app/assets/stylesheets/helpers/_position.sass +9 -0
  13. data/app/assets/stylesheets/helpers/_typoglaphy.sass +26 -0
  14. data/app/assets/stylesheets/modules/buttons/_button-base.sass +61 -0
  15. data/app/assets/stylesheets/modules/buttons/_button-helper.sass +33 -0
  16. data/app/assets/stylesheets/modules/buttons/_buttons.sass +59 -0
  17. data/app/assets/stylesheets/modules/buttons/styles/_border.sass +24 -0
  18. data/app/assets/stylesheets/modules/buttons/styles/_flat-emboss.sass +24 -0
  19. data/app/assets/stylesheets/modules/buttons/styles/_flat-round.sass +23 -0
  20. data/app/assets/stylesheets/modules/buttons/styles/_material.sass +89 -0
  21. data/app/assets/stylesheets/modules/buttons/styles/_normal.sass +42 -0
  22. data/app/assets/stylesheets/modules/navs/_tabs-nav.sass +38 -0
  23. data/app/assets/stylesheets/options/amazlet/_amazlet.sass +32 -0
  24. data/app/assets/stylesheets/options/glitch/_glitch.sass +31 -0
  25. data/app/assets/stylesheets/options/web-fonts/_cousine.sass +12 -0
  26. data/app/assets/stylesheets/options/web-fonts/_droid-sans.sass +11 -0
  27. data/app/assets/stylesheets/options/web-fonts/_font-awsome.sass +17 -0
  28. data/app/assets/stylesheets/options/web-fonts/_icomoon.sass +10 -0
  29. data/app/assets/stylesheets/options/web-fonts/_inconsolata.sass +11 -0
  30. data/app/assets/stylesheets/options/web-fonts/_lato.sass +11 -0
  31. data/app/assets/stylesheets/options/web-fonts/_merriweather-sans.sass +11 -0
  32. data/app/assets/stylesheets/options/web-fonts/_montserrat.sass +12 -0
  33. data/app/assets/stylesheets/options/web-fonts/_old-standard.sass +11 -0
  34. data/app/assets/stylesheets/options/web-fonts/_open-sans.sass +11 -0
  35. data/app/assets/stylesheets/options/web-fonts/_podkova.sass +11 -0
  36. data/app/assets/stylesheets/options/web-fonts/_pt-sans.sass +11 -0
  37. data/app/assets/stylesheets/options/web-fonts/_raleway.sass +11 -0
  38. data/app/assets/stylesheets/options/web-fonts/_roboto-condensed.sass +12 -0
  39. data/app/assets/stylesheets/options/web-fonts/_roboto.sass +11 -0
  40. data/app/assets/stylesheets/options/web-fonts/_satisfy.sass +12 -0
  41. data/app/assets/stylesheets/options/web-fonts/_source-code-pro.sass +12 -0
  42. data/app/assets/stylesheets/options/web-fonts/_source-sans-pro.sass +12 -0
  43. data/app/assets/stylesheets/options/web-fonts/_special-elite.sass +11 -0
  44. data/app/assets/stylesheets/options/web-fonts/_tauri.sass +11 -0
  45. data/app/assets/stylesheets/options/web-fonts/_ubuntu-mono.sass +11 -0
  46. data/app/assets/stylesheets/options/web-fonts/_ubuntu.sass +11 -0
  47. data/app/assets/stylesheets/options/web-fonts/_varela-round.sass +12 -0
  48. data/app/assets/stylesheets/options/web-fonts/_vt323.sass +11 -0
  49. data/app/assets/stylesheets/settings/functions/_animation.sass +90 -0
  50. data/app/assets/stylesheets/settings/functions/_background.sass +54 -0
  51. data/app/assets/stylesheets/settings/functions/_bool.sass +5 -0
  52. data/app/assets/stylesheets/settings/functions/_border.sass +45 -0
  53. data/app/assets/stylesheets/settings/functions/_color.sass +79 -0
  54. data/app/assets/stylesheets/settings/functions/_content.sass +5 -0
  55. data/app/assets/stylesheets/settings/functions/_cursor.sass +5 -0
  56. data/app/assets/stylesheets/settings/functions/_display.sass +5 -0
  57. data/app/assets/stylesheets/settings/functions/_image.sass +8 -0
  58. data/app/assets/stylesheets/settings/functions/_length.sass +20 -0
  59. data/app/assets/stylesheets/settings/functions/_list.sass +11 -0
  60. data/app/assets/stylesheets/settings/functions/_map.sass +5 -0
  61. data/app/assets/stylesheets/settings/functions/_math.sass +31 -0
  62. data/app/assets/stylesheets/settings/functions/_number.sass +95 -0
  63. data/app/assets/stylesheets/settings/functions/_position.sass +80 -0
  64. data/app/assets/stylesheets/settings/functions/_reverse.sass +22 -0
  65. data/app/assets/stylesheets/settings/functions/_string.sass +5 -0
  66. data/app/assets/stylesheets/settings/functions/_text.sass +46 -0
  67. data/app/assets/stylesheets/settings/initializers/_reset.sass +84 -0
  68. data/app/assets/stylesheets/settings/initializers/_sanitize.sass +262 -0
  69. data/app/assets/stylesheets/settings/mixins/_animation.sass +28 -0
  70. data/app/assets/stylesheets/settings/mixins/_background.sass +33 -0
  71. data/app/assets/stylesheets/settings/mixins/_balloon-tail.sass +100 -0
  72. data/app/assets/stylesheets/settings/mixins/_basic-font.sass +30 -0
  73. data/app/assets/stylesheets/settings/mixins/_block.sass +61 -0
  74. data/app/assets/stylesheets/settings/mixins/_border-radius.sass +43 -0
  75. data/app/assets/stylesheets/settings/mixins/_border.sass +28 -0
  76. data/app/assets/stylesheets/settings/mixins/_filters.sass +5 -0
  77. data/app/assets/stylesheets/settings/mixins/_form.sass +10 -0
  78. data/app/assets/stylesheets/settings/mixins/_grid.sass +93 -0
  79. data/app/assets/stylesheets/settings/mixins/_ie-hacks.sass +8 -0
  80. data/app/assets/stylesheets/settings/mixins/_image.sass +5 -0
  81. data/app/assets/stylesheets/settings/mixins/_line.sass +32 -0
  82. data/app/assets/stylesheets/settings/mixins/_link.sass +39 -0
  83. data/app/assets/stylesheets/settings/mixins/_list.sass +20 -0
  84. data/app/assets/stylesheets/settings/mixins/_margin-padding.sass +69 -0
  85. data/app/assets/stylesheets/settings/mixins/_overlay.sass +5 -0
  86. data/app/assets/stylesheets/settings/mixins/_positions.sass +33 -0
  87. data/app/assets/stylesheets/settings/mixins/_rem.sass +56 -0
  88. data/app/assets/stylesheets/settings/mixins/_resets.sass +49 -0
  89. data/app/assets/stylesheets/settings/mixins/_responsive-utilities.sass +196 -0
  90. data/app/assets/stylesheets/settings/mixins/_table.sass +32 -0
  91. data/app/assets/stylesheets/settings/mixins/_text.sass +44 -0
  92. data/app/assets/stylesheets/settings/mixins/grid/_grid-framework.scss +81 -0
  93. data/app/assets/stylesheets/settings/mixins/grid/_grid.scss +122 -0
  94. data/app/assets/stylesheets/settings/variables/_default.sass +150 -0
  95. data/bower.json +34 -0
  96. data/index.js +7 -0
  97. data/oulu.gemspec +26 -0
  98. data/package.json +20 -0
  99. metadata +197 -0
@@ -0,0 +1,89 @@
1
+ =waves-effect($color: black)
2
+ +position(relative, 1)
3
+ overflow: hidden
4
+ will-change: opacity, transform
5
+ +transition(all .3s ease-out)
6
+ .waves-ripple
7
+ position: absolute
8
+ border-radius: 50%
9
+ +block-size(20px)
10
+ +rem('margin-top', -10px)
11
+ +rem('margin-left', -10px)
12
+ opacity: 0
13
+ @if $color == 'light'
14
+ background-color: rgba(white, 0.45)
15
+ @else if $color == 'red'
16
+ background-color: rgba(#F44336, .70)
17
+ @else if $color == 'yellow'
18
+ background-color: rgba(#FFEB3B, .70)
19
+ @else if $color == 'orange'
20
+ background-color: rgba(#FF9800, .70)
21
+ @else if $color == 'purple'
22
+ background-color: rgba(#9C27B0, 0.70)
23
+ @else if $color == 'green'
24
+ background-color: rgba(#4CAF50, 0.70)
25
+ @else if $color == 'teal'
26
+ background-color: rgba(#009688, 0.70)
27
+ @else if luma_bright(lighten($color, 5%))
28
+ background-color: lighten($color, 45%)
29
+ @else
30
+ background-color: darken($color, 20%)
31
+ +transition(all 0.7s ease-out)
32
+ -webkit-transition-property: -webkit-transform, opacity
33
+ -moz-transition-property: -moz-transform, opacity
34
+ -o-transition-property: -o-transform, opacity
35
+ transition-property: transform, opacity
36
+ +transform(scale(0))
37
+ pointer-events: none
38
+
39
+ =material-button($color: blue)
40
+ +transition(.2s ease-out)
41
+ +border-radius(2px)
42
+ background-color: $color
43
+ color: luma_contrast_color($color)
44
+ box-shadow: 0 2px 5px 0 rgba(black, .16), 0 2px 10px 0 rgba(black, .12)
45
+ +rem('letter-spacing', .5px)
46
+ +waves-effect($color)
47
+ &:hover,
48
+ .hover,
49
+ .is-hover
50
+ $color: lighten($color, 5%)
51
+ box-shadow: 0 5px 11px 0 rgba(black, .18), 0 4px 15px 0 rgba(black, .15)
52
+ @if $color == white
53
+ background-color: #f4f4f4
54
+ @else
55
+ background-color: $color
56
+ &:active,
57
+ .active,
58
+ .is-active
59
+ $color: lighten($color, 6%)
60
+ @if $color == white
61
+ background-color: #f4f4f4
62
+ @else
63
+ background-color: $color
64
+ box-shadow: shade($color, 18%) 0 2px 0
65
+ +top(1px)
66
+
67
+ .waves-effect
68
+ +waves-effect($color: white)
69
+ .waves-notransition
70
+ +transition(none #{"!important"})
71
+ .waves-circle
72
+ +transform(translateZ(0))
73
+ -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%)
74
+ .waves-input-wrapper
75
+ border-radius: 0.2em
76
+ vertical-align: bottom
77
+ .waves-button-input
78
+ +position(relative, 1, top 0, left 0)
79
+ .waves-circle
80
+ text-align: center
81
+ +size(2.5em)
82
+ line-height: 2.5em
83
+ border-radius: 50%
84
+ -webkit-mask-image: none
85
+ .waves-block
86
+ display: block
87
+ /* Firefox Bug: link not triggered */
88
+ a.waves-effect .waves-ripple
89
+ z-index: -1
@@ -0,0 +1,42 @@
1
+ =normal-button-color($color, $text-color: true)
2
+ background-color: $color
3
+ +background-image(linear-gradient(top, tint($color, 6%) 0%, shade($color, 6%) 100%))
4
+ +border(all, solid)
5
+ border-color: shade($color, 10%) shade($color, 16%) shade($color, 26%)
6
+ @if $text-color
7
+ color: luma_contrast_color($color)
8
+ text-shadow: if(luma_bright($color), lighten($color, 18%) 0 1px 0, darken($color, 18%) 0 -1px 0)
9
+ &:hover,
10
+ &.hover,
11
+ &.is-hover,
12
+ &:active,
13
+ &.active,
14
+ &.is-active
15
+ color: luma_contrast_color($color)
16
+
17
+ =normal-button($color: blue)
18
+ +transition(.5s (background-image))
19
+ @if luma($color) > 90
20
+ +normal-button-color(#f2f2f2)
21
+ @else
22
+ +normal-button-color($color)
23
+ box-shadow: tint($color, 32%) 0 1px 0 inset, shade($color, 26%) 0 1px 0, rgba(black, .15) 0 2px 1px
24
+ &:hover,
25
+ &.hover,
26
+ &.is-hover
27
+ @if luma($color) > 90
28
+ +normal-button-color(lighten(#f2f2f2, 5%), false)
29
+ @else
30
+ +normal-button-color(lighten($color, 5%), false)
31
+ &:active,
32
+ &.active,
33
+ &.is-active
34
+ +top(1px)
35
+ @if luma($color) > 90
36
+ $color: lighten(#f2f2f2, 7%)
37
+ +normal-button-color($color, false)
38
+ box-shadow: darken($color, 12%) 0 1px 0 inset, rgba(white, .3) 0 1px 1px
39
+ @else
40
+ $color: lighten($color, 7%)
41
+ +normal-button-color($color, false)
42
+ box-shadow: darken($color, 12%) 0 1px 0 inset, rgba(white, .3) 0 1px 1px
@@ -0,0 +1,38 @@
1
+ $tabs-nav-border-color: black !default
2
+ $tabs-nav-background-color: white !default
3
+ $tabs-nav-border-width: 2px !default
4
+ $tabs-nav-font-size: 16px !default
5
+ $tabs-nav-item-gutter: 8px !default
6
+ $tabs-nav-font-color: black !default
7
+ $tabs-nav-current-font-color: red !default
8
+
9
+ .tabs-nav__items
10
+ font-size: 0
11
+ position: relative
12
+ &:before
13
+ content: ""
14
+ display: block
15
+ +block-size(100% $tabs-nav-border-width)
16
+ background-color: $tabs-nav-border-color
17
+ +position(absolute, left 0, bottom 0)
18
+ .tabs-nav__item
19
+ +inline-block(bottom)
20
+ +rem('margin-right', 8px)
21
+ &:last-child
22
+ margin-right: 0
23
+ .tabs-nav__link
24
+ +block-link
25
+ +border(top horizontal, $tabs-nav-border-width solid $tabs-nav-border-color)
26
+ +rem('padding-bottom', $tabs-nav-border-width)
27
+ +text-block($tabs-nav-font-size round($tabs-nav-font-size*2.6), center $tabs-nav-font-color)
28
+ +padding(horizontal, $tabs-nav-font-size*1.6)
29
+ position: relative
30
+ &:before
31
+ display: block
32
+ +block-size(100% $tabs-nav-border-width)
33
+ background-color: $tabs-nav-background-color
34
+ +position(absolute, left 0, bottom 0)
35
+ &.is-current
36
+ color: $tabs-nav-current-font-color
37
+ &:before
38
+ content: ""
@@ -0,0 +1,32 @@
1
+ $text-color: $black !default
2
+
3
+ .amazlet-box
4
+ +rem('margin-bottom', 32px, !important)
5
+ .amazlet-image
6
+ float: none !important
7
+ +rem('margin', 0 0 16px, !important)
8
+ a[target="_blank"]
9
+ &:after
10
+ content: none
11
+ img
12
+ max-width: 100%
13
+ +rem('width', 260px)
14
+ display: block
15
+ +margin(horizontal, auto)
16
+ margin-bottom: 0 !important
17
+ .amazlet-info
18
+ text-align: center
19
+ .amazlet-name
20
+ a
21
+ text-decoration: none
22
+ color: $text-color
23
+ .amazlet-detail
24
+ +rem('font-size', 12px)
25
+ +rem('margin-bottom', 8px, !important)
26
+ .amazlet-sub-info
27
+ float: none !important
28
+ text-align: right
29
+ .amazlet-link
30
+ display: none
31
+ .amazlet-powered-date
32
+ display: none !important
@@ -0,0 +1,31 @@
1
+ +keyframes(noise-anim)
2
+ $steps: 20
3
+ @for $i from 0 through $steps
4
+ #{percentage($i * 1 / $steps)}
5
+ clip: rect(random(100) + px, 9999px, random(100) + px, 0)
6
+ +keyframes(noise-anim-2)
7
+ $steps: 20
8
+ @for $i from 0 through $steps
9
+ #{percentage($i * 1 / $steps)}
10
+ clip: rect(random(100) + px, 9999px, random(100) + px, 0)
11
+
12
+ =glitch($cl: white, $bg-col: black)
13
+ position: relative
14
+ overflow: hidden
15
+ display: inline-block
16
+ color: $cl
17
+ &:after,
18
+ &:before
19
+ content: attr(data-text)
20
+ color: $cl
21
+ background-color: $bg-col
22
+ overflow: hidden
23
+ clip: rect(0, 900px, 0, 0)
24
+ &:after
25
+ +position(absolute, left 1px, top 0)
26
+ +rem('text-shadow', -1px 0 0 rgba(red, 0.4))
27
+ +animation(noise-anim 2s infinite linear alternate-reverse)
28
+ &:before
29
+ +position(absolute, left -1px, top 0)
30
+ +rem('text-shadow', 1px 0 0 rgba(blue, 0.4))
31
+ +animation(noise-anim-2 3s infinite linear alternate-reverse)
@@ -0,0 +1,12 @@
1
+ @import url(//fonts.googleapis.com/css?family=Cousine:400,700,400italic,700italic)
2
+
3
+ =cousine($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
4
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
5
+ font-family: 'Cousine'
6
+ font-weight: $fw
7
+ @if not $ls == 0
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Droid+Sans:400,700)
2
+ =droid-sans($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Droid Sans', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,17 @@
1
+ =fa($icon: null)
2
+ display: inline-block
3
+ font-family: FontAwesome
4
+ font-style: normal
5
+ font-weight: normal
6
+ line-height: 1
7
+ -webkit-font-smoothing: antialiased
8
+ -moz-osx-font-smoothing: grayscale
9
+ content: "#{$icon}"
10
+
11
+ =fa-icon($icon: '\f105', $size: 16px 12px, $options: null, $position1:null, $position2: null)
12
+ &:before
13
+ +fa($icon)
14
+ @if $position1
15
+ +position(absolute, if($position1, $position1, null), if($position2, $position2, null))
16
+ @if $size
17
+ +text-block($size, $options)
@@ -0,0 +1,10 @@
1
+ =icomoon
2
+ font-family: 'icomoon'
3
+ speak: none
4
+ font-style: normal
5
+ font-weight: normal
6
+ font-variant: normal
7
+ text-transform: none
8
+ line-height: 1
9
+ -webkit-font-smoothing: antialiased
10
+ -moz-osx-font-smoothing: grayscale
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Inconsolata:400,700)
2
+ =inconsolata($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Inconsolata', monospace
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic)
2
+ =lato($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Lato', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Merriweather+Sans:400,800,300,300italic,400italic,700italic,700,800italic)
2
+ =merriweather-sans($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Merriweather Sans', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,12 @@
1
+ @import url(//fonts.googleapis.com/css?family=Montserrat:400,700)
2
+ // 備考:モントセラト(モントセラート、モンセラット)と読む
3
+ =montserrat($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
4
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
5
+ font-family: 'Montserrat', sans-serif
6
+ font-weight: $fw
7
+ @if not $ls == 0
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Old+Standard+TT:400,400italic,700)
2
+ =old-standard($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Old Standard TT', serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800)
2
+ =open-sans($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Open Sans', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ +rem('letter-spacing', $ls)
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Podkova:400,700)
2
+ =podkova($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Podkova', serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic)
2
+ =pt-sans($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'PT Sans', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Raleway:400,900,100,200,300,500,600,700,800)
2
+ =raleway($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Raleway', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,12 @@
1
+ @import url(//fonts.googleapis.com/css?family=Roboto+Condensed:300italic,400italic,700italic,400,700,300)
2
+ =roboto-condensed($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // 300 400 700
4
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
5
+ font-family: 'Roboto Condensed', sans-serif
6
+ font-weight: $fw
7
+ @if not $ls == 0
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900)
2
+ =roboto($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Roboto', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,12 @@
1
+ @import url(//fonts.googleapis.com/css?family=Satisfy)
2
+ =satisfy($fw: null, $ls: null, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Satisfy', cursive
5
+ @if $fw
6
+ font-weight: $fw
7
+ @if $ls
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,12 @@
1
+ @import url(//fonts.googleapis.com/css?family=Source+Code+Pro:200,300,400,500,600,700,900)
2
+ // 備考:Adobeの等幅フォント
3
+ =source-code-pro($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
4
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
5
+ font-family: 'Source Code Pro', monospace
6
+ font-weight: $fw
7
+ @if not $ls == 0
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,12 @@
1
+ @import url(//fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900,200italic,300italic,400italic,600italic,700italic,900italic)
2
+ // 備考:Adobeのsans-serif
3
+ =source-sans-pro($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
4
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
5
+ font-family: 'Source Sans Pro', sans-serif
6
+ font-weight: $fw
7
+ @if not $ls == 0
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Special+Elite)
2
+ =special-elite($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Special Elite', cursive
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Tauri)
2
+ =tauri($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ font-family: 'Tauri', sans-serif
4
+ font-weight: $fw
5
+ @if not $ls == 0
6
+ letter-spacing: $ls
7
+ @if (not $fs == null)
8
+ font-style: italic
9
+ @if $tx-rendering
10
+ text-rendering: optimizelegibility
11
+
@@ -0,0 +1,11 @@
1
+ @import url(https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic,700italic)
2
+ =ubuntu-mono($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Ubuntu Mono', monospace
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=Ubuntu:300,400,500,700,300italic,400italic,500italic,700italic)
2
+ =ubuntu($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'Ubuntu', sans-serif
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,12 @@
1
+ // ヒラギノ丸を使うときに使う
2
+ @import url(//fonts.googleapis.com/css?family=Varela+Round)
3
+ =varela-round($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
4
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
5
+ font-family: 'Varela Round', sans-serif
6
+ font-weight: $fw
7
+ @if not $ls == 0
8
+ letter-spacing: $ls
9
+ @if (not $fs == null)
10
+ font-style: italic
11
+ @if $tx-rendering
12
+ text-rendering: optimizelegibility
@@ -0,0 +1,11 @@
1
+ @import url(//fonts.googleapis.com/css?family=VT323)
2
+ =inconsolata($fw: 400, $ls: 0, $fs: null, $tx-rendering: true)
3
+ // $fw: フォントの太さ, $ls: 字間, $fs: フォントスタイル
4
+ font-family: 'VT323', monospace
5
+ font-weight: $fw
6
+ @if not $ls == 0
7
+ letter-spacing: $ls
8
+ @if (not $fs == null)
9
+ font-style: italic
10
+ @if $tx-rendering
11
+ text-rendering: optimizelegibility
@@ -0,0 +1,90 @@
1
+ @function time($value)
2
+ @if unit_number($value) and unit($value) == 's'
3
+ @return true
4
+ @else
5
+ @return null
6
+
7
+ @function timing_function($value)
8
+ @if string($value)
9
+ @if $value == 'ease' or $value == 'linear' or $value == 'ease-in' or $value == 'ease-out' or $value == 'ease-in-out' or str-slice($value, 1, 12) == 'cubic-bezier'
10
+ @return true
11
+ @else
12
+ @return null
13
+ @else
14
+ @return null
15
+
16
+ @function delay($value)
17
+ @if string($value) and str-slice($value, 1, 1) == '/' and str-slice($value, -1, -1) == 's'
18
+ @return str-slice($value, 2)
19
+ @else
20
+ @return null
21
+
22
+ //////////////////
23
+ // transition
24
+ //////////////////
25
+
26
+ @function transition_duration($value)
27
+ @return time($value)
28
+
29
+ @function transition_timing_function($value)
30
+ @return timing_function($value)
31
+
32
+ @function transition_delay($value)
33
+ @return delay($value)
34
+
35
+ @function transition-property($value)
36
+ @if string($value)
37
+ @if not transition_timing_function($value) or not transition_duration($value) or not transition_delay($value)
38
+ @return true
39
+ @else
40
+ @return null
41
+ @else if list($value)
42
+ @return true
43
+ @else
44
+ @return null
45
+
46
+ //////////////////
47
+ // animation
48
+ //////////////////
49
+
50
+ @function animation_duration($value)
51
+ @return time($value)
52
+
53
+ @function animation_timing_function($value)
54
+ @return timing_function($value)
55
+
56
+ @function animation_delay($value)
57
+ @return delay($value)
58
+
59
+ @function animation_iteration_count($value)
60
+ @if unitless_number($value) or (string($value) and $value == 'infinite')
61
+ @return true
62
+ @else
63
+ @return null
64
+
65
+ @function animation_direction($value)
66
+ @if string($value) and ($value == 'normal' or $value == 'alternate')
67
+ @return true
68
+ @else
69
+ @return null
70
+
71
+ @function animation_fill_mode($value)
72
+ @if string($value) and ($value == 'nonel' or $value == 'forwards' or $value == 'backwards' or $value == 'both')
73
+ @return true
74
+ @else
75
+ @return null
76
+
77
+ @function animation_play_state($value)
78
+ @if string($value) and ($value == 'running' or $value == 'paused')
79
+ @return true
80
+ @else
81
+ @return null
82
+
83
+ @function animation_name($value)
84
+ @if string($value)
85
+ @if animation_timing_function($value) or animation_duration($value) or animation_delay($value) or animation_iteration_count($value) or animation_direction($value) or animation_fill_mode($value) or animation_play_state($value)
86
+ @return null
87
+ @else
88
+ @return true
89
+ @else
90
+ @return null