linaro-jekyll-theme 0.10.149 → 4.0.1

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 (340) hide show
  1. checksums.yaml +5 -5
  2. data/LICENSE.txt +1 -1
  3. data/README.md +19 -50
  4. data/_config.yml +192 -0
  5. data/_data/footer.yml +27 -107
  6. data/_data/nav.yml +72 -61
  7. data/_data/picture.yml +151 -0
  8. data/_data/universal_nav.yml +22 -0
  9. data/_includes/blog/authors_posts.html +37 -0
  10. data/_includes/blog/blog_filler_element.html +21 -0
  11. data/_includes/blog/display_latest_posts.html +119 -0
  12. data/_includes/blog/disqus_comments.html +24 -0
  13. data/_includes/blog/latest_posts.html +11 -0
  14. data/_includes/blog/pagination.html +37 -0
  15. data/_includes/blog/post_search.html +11 -0
  16. data/_includes/blog/post_series.html +28 -0
  17. data/_includes/blog/post_sidebar.html +74 -0
  18. data/_includes/blog/read_time.html +7 -0
  19. data/_includes/components/breadcrumb.html +37 -0
  20. data/_includes/components/carousel_header.html +15 -0
  21. data/_includes/components/cookie_manager.html +72 -0
  22. data/_includes/components/css.html +8 -0
  23. data/_includes/components/github_edit.html +34 -0
  24. data/_includes/components/head.html +65 -0
  25. data/_includes/components/http2.html +57 -0
  26. data/_includes/components/javascript.html +10 -0
  27. data/_includes/components/jumbotron.html +82 -0
  28. data/_includes/components/linaro_404.html +16 -0
  29. data/_includes/components/schema.html +1 -0
  30. data/_includes/components/sidebar.html +55 -0
  31. data/_includes/examples/custom_include.html +10 -0
  32. data/_includes/examples/custom_include_row.html +562 -0
  33. data/_includes/flow/blocks.html +73 -0
  34. data/_includes/flow/button.html +6 -0
  35. data/_includes/flow/buttons.html +5 -0
  36. data/_includes/flow/call-to-action-banner.html +8 -0
  37. data/_includes/flow/collapse.html +21 -0
  38. data/_includes/flow/container_row.html +11 -0
  39. data/_includes/flow/feature_block.html +41 -0
  40. data/_includes/flow/flow_inner.html +29 -0
  41. data/_includes/flow/full_width_row.html +5 -0
  42. data/_includes/flow/image.html +12 -0
  43. data/_includes/flow/members-section.html +24 -0
  44. data/_includes/flow/slider.html +25 -0
  45. data/_includes/flow/slider_row.html +3 -0
  46. data/_includes/flow/tabbed_content.html +21 -0
  47. data/_includes/flow/text.html +3 -0
  48. data/_includes/flow/title.html +3 -0
  49. data/_includes/footer/footer.html +29 -0
  50. data/_includes/image.html +15 -4
  51. data/_includes/js_bundles/app.html +4 -0
  52. data/_includes/js_bundles/vendor.html +13 -0
  53. data/_includes/media.html +4 -4
  54. data/_includes/nav/brand.html +3 -0
  55. data/_includes/nav/nav.html +133 -0
  56. data/_includes/nav/universal_nav.html +36 -0
  57. data/_includes/social_media_icons.html +24 -0
  58. data/_includes/sticky-tab-bar.html +61 -0
  59. data/_includes/youtube.html +74 -6
  60. data/_layouts/author.html +61 -0
  61. data/_layouts/base.html +14 -0
  62. data/_layouts/default.html +2 -18
  63. data/_layouts/flow.html +33 -0
  64. data/_layouts/page.html +5 -0
  65. data/_layouts/post.html +56 -133
  66. data/{_layouts/about.html → _sass/app/blog.scss} +0 -0
  67. data/_sass/app/custom.scss +1 -0
  68. data/_sass/app/overrides.scss +43 -0
  69. data/_sass/app/search.scss +51 -0
  70. data/_sass/blog.scss +3 -0
  71. data/_sass/bootstrap/_alert.scss +51 -0
  72. data/_sass/bootstrap/_badge.scss +47 -0
  73. data/_sass/bootstrap/_breadcrumb.scss +41 -0
  74. data/_sass/bootstrap/_button-group.scss +172 -0
  75. data/_sass/bootstrap/_buttons.scss +75 -100
  76. data/_sass/bootstrap/_card.scss +301 -0
  77. data/_sass/bootstrap/_carousel.scss +161 -195
  78. data/_sass/bootstrap/_close.scss +15 -16
  79. data/_sass/bootstrap/_code.scss +15 -36
  80. data/_sass/bootstrap/_custom-forms.scss +433 -0
  81. data/_sass/bootstrap/_dropdown.scss +166 -0
  82. data/_sass/bootstrap/_forms.scss +213 -497
  83. data/_sass/bootstrap/_functions.scss +86 -0
  84. data/_sass/bootstrap/_grid.scss +29 -61
  85. data/_sass/bootstrap/_images.scss +42 -0
  86. data/_sass/bootstrap/_input-group.scss +173 -0
  87. data/_sass/bootstrap/_jumbotron.scss +9 -47
  88. data/_sass/bootstrap/_list-group.scss +64 -79
  89. data/_sass/bootstrap/_media.scss +3 -61
  90. data/_sass/bootstrap/_mixins.scss +19 -18
  91. data/_sass/bootstrap/_modal.scss +180 -0
  92. data/_sass/bootstrap/_nav.scss +118 -0
  93. data/_sass/bootstrap/_navbar.scss +192 -555
  94. data/_sass/bootstrap/_pagination.scss +59 -70
  95. data/_sass/bootstrap/_popover.scss +183 -0
  96. data/_sass/bootstrap/_print.scss +89 -49
  97. data/_sass/bootstrap/_progress.scss +34 -0
  98. data/_sass/bootstrap/_reboot.scss +483 -0
  99. data/_sass/bootstrap/_root.scss +19 -0
  100. data/_sass/bootstrap/_tables.scss +119 -166
  101. data/_sass/bootstrap/_tooltip.scss +93 -79
  102. data/_sass/bootstrap/_transitions.scss +22 -0
  103. data/_sass/bootstrap/_type.scss +66 -239
  104. data/_sass/bootstrap/_utilities.scss +15 -55
  105. data/_sass/bootstrap/_variables.scss +782 -727
  106. data/_sass/bootstrap/bootstrap-grid.scss +32 -0
  107. data/_sass/bootstrap/bootstrap-reboot.scss +12 -0
  108. data/_sass/bootstrap/bootstrap.scss +42 -0
  109. data/_sass/bootstrap/mixins/_alert.scss +13 -0
  110. data/_sass/bootstrap/mixins/_background-variant.scss +14 -5
  111. data/_sass/bootstrap/mixins/_badge.scss +12 -0
  112. data/_sass/bootstrap/mixins/_border-radius.scss +25 -8
  113. data/_sass/bootstrap/mixins/_box-shadow.scss +5 -0
  114. data/_sass/bootstrap/mixins/_breakpoints.scss +123 -0
  115. data/_sass/bootstrap/mixins/_buttons.scss +84 -40
  116. data/_sass/bootstrap/mixins/_caret.scss +66 -0
  117. data/_sass/bootstrap/mixins/_clearfix.scss +3 -18
  118. data/_sass/bootstrap/mixins/_float.scss +11 -0
  119. data/_sass/bootstrap/mixins/_forms.scss +125 -66
  120. data/_sass/bootstrap/mixins/_gradients.scss +17 -30
  121. data/_sass/bootstrap/mixins/_grid-framework.scss +52 -66
  122. data/_sass/bootstrap/mixins/_grid.scss +37 -107
  123. data/_sass/bootstrap/mixins/_hover.scss +37 -0
  124. data/_sass/bootstrap/mixins/_image.scss +18 -15
  125. data/_sass/bootstrap/mixins/_list-group.scss +10 -21
  126. data/_sass/bootstrap/mixins/_lists.scss +7 -0
  127. data/_sass/bootstrap/mixins/_nav-divider.scss +4 -4
  128. data/_sass/bootstrap/mixins/_pagination.scss +10 -12
  129. data/_sass/bootstrap/mixins/_reset-text.scss +7 -8
  130. data/_sass/bootstrap/mixins/_resize.scss +1 -1
  131. data/_sass/bootstrap/mixins/_screen-reader.scss +33 -0
  132. data/_sass/bootstrap/mixins/_size.scss +1 -5
  133. data/_sass/bootstrap/mixins/_table-row.scss +16 -14
  134. data/_sass/bootstrap/mixins/_text-emphasis.scss +7 -5
  135. data/_sass/bootstrap/mixins/_text-hide.scss +13 -0
  136. data/_sass/bootstrap/mixins/{_text-overflow.scss → _text-truncate.scss} +2 -2
  137. data/_sass/bootstrap/mixins/_transition.scss +13 -0
  138. data/_sass/bootstrap/mixins/_visibility.scss +7 -0
  139. data/_sass/bootstrap/utilities/_align.scss +8 -0
  140. data/_sass/bootstrap/utilities/_background.scss +19 -0
  141. data/_sass/bootstrap/utilities/_borders.scss +59 -0
  142. data/_sass/bootstrap/utilities/_clearfix.scss +3 -0
  143. data/_sass/bootstrap/utilities/_display.scss +38 -0
  144. data/_sass/bootstrap/{_responsive-embed.scss → utilities/_embed.scss} +26 -9
  145. data/_sass/bootstrap/utilities/_flex.scss +51 -0
  146. data/_sass/bootstrap/utilities/_float.scss +9 -0
  147. data/_sass/bootstrap/utilities/_position.scss +37 -0
  148. data/_sass/bootstrap/utilities/_screenreaders.scss +11 -0
  149. data/_sass/bootstrap/utilities/_shadows.scss +6 -0
  150. data/_sass/bootstrap/utilities/_sizing.scss +12 -0
  151. data/_sass/bootstrap/utilities/_spacing.scss +51 -0
  152. data/_sass/bootstrap/utilities/_text.scss +58 -0
  153. data/_sass/bootstrap/utilities/_visibility.scss +11 -0
  154. data/_sass/core.scss +15 -0
  155. data/_sass/core/blog.scss +244 -208
  156. data/_sass/core/bootstrap-multiselect.scss +1 -0
  157. data/_sass/core/breadcrumb.scss +16 -65
  158. data/_sass/core/carousel-header.scss +91 -0
  159. data/_sass/core/carousel-styles.scss +1 -0
  160. data/_sass/core/carousel.scss +202 -27
  161. data/_sass/core/cookies.scss +200 -0
  162. data/_sass/core/error.scss +190 -0
  163. data/_sass/core/featherlight.scss +158 -0
  164. data/_sass/core/flow.scss +94 -0
  165. data/_sass/core/fontello.scss +91 -0
  166. data/_sass/core/footer.scss +60 -120
  167. data/_sass/core/jumbotron.scss +105 -0
  168. data/_sass/core/navbar.scss +241 -0
  169. data/_sass/core/normalize.scss +358 -0
  170. data/_sass/core/syntax.scss +65 -62
  171. data/_sass/core/theme.scss +49 -531
  172. data/assets/css/main.scss +12 -18
  173. data/assets/fonts/fontello/fontello.eot +0 -0
  174. data/assets/fonts/fontello/fontello.svg +94 -0
  175. data/assets/fonts/fontello/fontello.ttf +0 -0
  176. data/assets/fonts/fontello/fontello.woff +0 -0
  177. data/assets/fonts/fontello/fontello.woff2 +0 -0
  178. data/assets/fonts/{lato-regular → lato}/LICENSE.txt +0 -0
  179. data/assets/fonts/{lato-regular → lato}/Lato-regular.eot +0 -0
  180. data/assets/fonts/{lato-regular → lato}/Lato-regular.svg +0 -0
  181. data/assets/fonts/{lato-regular → lato}/Lato-regular.ttf +0 -0
  182. data/assets/fonts/{lato-regular → lato}/Lato-regular.woff +0 -0
  183. data/assets/fonts/{lato-regular → lato}/Lato-regular.woff2 +0 -0
  184. data/assets/images/{Linaro-Logo_standard.svg → Linaro-Logo.svg} +0 -0
  185. data/assets/images/Linaro-Sprinkle.png +0 -0
  186. data/assets/images/Linaro-logo-white.png +0 -0
  187. data/assets/images/{avatar-placeholder.png → avatar-placeholder.jpg} +0 -0
  188. data/assets/images/breadcrumb-image.jpg +0 -0
  189. data/assets/images/clipboard.svg +3 -0
  190. data/{_sass/custom.scss → assets/js/app/custom.js} +0 -0
  191. data/assets/js/app/main.js +360 -96
  192. data/assets/js/bootstrap.js.map +1 -0
  193. data/assets/js/popper.min.js.map +1 -0
  194. data/assets/js/vendor/_popper.js +5 -0
  195. data/assets/js/vendor/bootstrap.js +6 -0
  196. data/assets/js/vendor/clipboard.min.js +7 -0
  197. data/assets/js/vendor/featherlight.js +641 -0
  198. data/assets/js/vendor/jquery.cookie.js +120 -0
  199. data/assets/js/vendor/jquery.ihavecookies.js +271 -0
  200. data/assets/js/vendor/jquery.js +10364 -0
  201. data/assets/js/vendor/lazysizes.js +698 -0
  202. data/assets/js/vendor/ls.unveilhooks.js +145 -0
  203. data/assets/js/vendor/owl.carousel.js +3907 -0
  204. data/assets/js/vendor/simple-jekyll-search.min.js +278 -0
  205. data/assets/json/posts.json +28 -0
  206. data/robots.txt +2 -2
  207. metadata +206 -234
  208. data/_data/authors.yml +0 -7
  209. data/_data/company.yml +0 -29
  210. data/_data/linaro.yml +0 -4
  211. data/_data/members_db.yaml +0 -115
  212. data/_data/news.yaml +0 -230
  213. data/_data/sub-nav-stacked.yml +0 -67
  214. data/_data/sub-nav.yml +0 -61
  215. data/_includes/_theme-includes/_blog/pagination.html +0 -39
  216. data/_includes/_theme-includes/_footer/footer.html +0 -85
  217. data/_includes/_theme-includes/_head/head.html +0 -32
  218. data/_includes/_theme-includes/_navigation/nav.html +0 -103
  219. data/_includes/_theme-includes/_navigation/stacked-nav.html +0 -20
  220. data/_includes/_theme-includes/_navigation/tabbed-nav.html +0 -35
  221. data/_includes/_theme-includes/_page-structure/breadcrumb.html +0 -101
  222. data/_includes/_theme-includes/_page-structure/home-hero-shape.html +0 -34
  223. data/_includes/_theme-includes/_page-structure/home-hero.html +0 -23
  224. data/_includes/_theme-includes/_page-structure/shape-divider.html +0 -12
  225. data/_includes/_theme-includes/_script-includes/css.html +0 -40
  226. data/_includes/_theme-includes/_script-includes/google-analytics/script.html +0 -10
  227. data/_includes/_theme-includes/_script-includes/gtm/gtm-noscript.html +0 -5
  228. data/_includes/_theme-includes/_script-includes/gtm/gtm-script.html +0 -9
  229. data/_includes/_theme-includes/_script-includes/javascript.html +0 -50
  230. data/_includes/_theme-includes/_third-party/disqus.html +0 -14
  231. data/_includes/_theme-includes/_third-party/mailchimp-homepage.html +0 -33
  232. data/_includes/_theme-includes/members.html +0 -63
  233. data/_includes/base.html +0 -14
  234. data/_includes/owl-carousel-homepage.html +0 -103
  235. data/_layouts/accessory-display-page.html +0 -88
  236. data/_layouts/blog-breadcrumbless.html +0 -49
  237. data/_layouts/blog.html +0 -56
  238. data/_layouts/contact.html +0 -10
  239. data/_layouts/default-empty.html +0 -11
  240. data/_layouts/default-no-sub-nav.html +0 -15
  241. data/_layouts/default-plain.html +0 -16
  242. data/_layouts/default-stacked-breadcrumb.html +0 -23
  243. data/_layouts/default-stacked.html +0 -22
  244. data/_layouts/empty.html +0 -10
  245. data/_layouts/fluid-no-sub-nav.html +0 -11
  246. data/_layouts/fluid.html +0 -15
  247. data/_layouts/home-shape.html +0 -18
  248. data/_layouts/home.html +0 -18
  249. data/_layouts/product-display-page.html +0 -262
  250. data/_layouts/project-display-page.html +0 -28
  251. data/_sass/_bootstrap-compass.scss +0 -9
  252. data/_sass/_bootstrap-mincer.scss +0 -19
  253. data/_sass/_bootstrap-sprockets.scss +0 -9
  254. data/_sass/_bootstrap.scss +0 -56
  255. data/_sass/bootstrap/_alerts.scss +0 -73
  256. data/_sass/bootstrap/_badges.scss +0 -68
  257. data/_sass/bootstrap/_breadcrumbs.scss +0 -28
  258. data/_sass/bootstrap/_button-groups.scss +0 -244
  259. data/_sass/bootstrap/_component-animations.scss +0 -37
  260. data/_sass/bootstrap/_dropdowns.scss +0 -216
  261. data/_sass/bootstrap/_glyphicons.scss +0 -307
  262. data/_sass/bootstrap/_input-groups.scss +0 -171
  263. data/_sass/bootstrap/_labels.scss +0 -66
  264. data/_sass/bootstrap/_modals.scss +0 -150
  265. data/_sass/bootstrap/_navs.scss +0 -242
  266. data/_sass/bootstrap/_normalize.scss +0 -424
  267. data/_sass/bootstrap/_pager.scss +0 -54
  268. data/_sass/bootstrap/_panels.scss +0 -271
  269. data/_sass/bootstrap/_popovers.scss +0 -131
  270. data/_sass/bootstrap/_progress-bars.scss +0 -87
  271. data/_sass/bootstrap/_responsive-utilities.scss +0 -179
  272. data/_sass/bootstrap/_scaffolding.scss +0 -161
  273. data/_sass/bootstrap/_theme.scss +0 -291
  274. data/_sass/bootstrap/_thumbnails.scss +0 -38
  275. data/_sass/bootstrap/_wells.scss +0 -29
  276. data/_sass/bootstrap/mixins/_alerts.scss +0 -14
  277. data/_sass/bootstrap/mixins/_center-block.scss +0 -7
  278. data/_sass/bootstrap/mixins/_hide-text.scss +0 -21
  279. data/_sass/bootstrap/mixins/_labels.scss +0 -12
  280. data/_sass/bootstrap/mixins/_nav-vertical-align.scss +0 -9
  281. data/_sass/bootstrap/mixins/_opacity.scss +0 -8
  282. data/_sass/bootstrap/mixins/_panels.scss +0 -24
  283. data/_sass/bootstrap/mixins/_progress-bar.scss +0 -10
  284. data/_sass/bootstrap/mixins/_reset-filter.scss +0 -8
  285. data/_sass/bootstrap/mixins/_responsive-visibility.scss +0 -21
  286. data/_sass/bootstrap/mixins/_tab-focus.scss +0 -9
  287. data/_sass/bootstrap/mixins/_vendor-prefixes.scss +0 -222
  288. data/_sass/core/animations.scss +0 -125
  289. data/_sass/core/cookieconsent.scss +0 -42
  290. data/_sass/core/custom.scss +0 -3
  291. data/_sass/core/fa.scss +0 -2336
  292. data/_sass/core/flipclock.scss +0 -435
  293. data/_sass/core/font-awesome.min.scss +0 -4
  294. data/_sass/core/fonts.scss +0 -7
  295. data/_sass/core/homepage.scss +0 -40
  296. data/_sass/core/lightbox.scss +0 -213
  297. data/_sass/core/nav.scss +0 -657
  298. data/_sass/core/openhours.scss +0 -51
  299. data/_sass/core/products.scss +0 -221
  300. data/_sass/core/projects.scss +0 -32
  301. data/_sass/core/social-media-icons.scss +0 -71
  302. data/_sass/core/tables.scss +0 -125
  303. data/assets/css/main-blog.scss +0 -19
  304. data/assets/css/main-home.scss +0 -16
  305. data/assets/css/main-lightbox.scss +0 -22
  306. data/assets/css/main-openhours.scss +0 -19
  307. data/assets/css/main-products.scss +0 -20
  308. data/assets/css/main-projects.scss +0 -20
  309. data/assets/fonts/fontawesome-webfont.eot +0 -0
  310. data/assets/fonts/fontawesome-webfont.svg +0 -2671
  311. data/assets/fonts/fontawesome-webfont.ttf +0 -0
  312. data/assets/fonts/fontawesome-webfont.woff +0 -0
  313. data/assets/fonts/fontawesome-webfont.woff2 +0 -0
  314. data/assets/fonts/fontello.eot +0 -0
  315. data/assets/fonts/fontello.svg +0 -44
  316. data/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  317. data/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  318. data/assets/fonts/glyphicons-halflings-regular.woff2 +0 -0
  319. data/assets/images/96boards-Logo.svg +0 -1
  320. data/assets/images/Linaro-Logo_light.png +0 -0
  321. data/assets/images/Linaro-Sprinkle.svg +0 -13
  322. data/assets/images/background-image.jpg +0 -0
  323. data/assets/images/banner.jpg +0 -0
  324. data/assets/images/css3.png +0 -0
  325. data/assets/images/html5.png +0 -0
  326. data/assets/images/jekyll.svg +0 -1
  327. data/assets/images/js.jpeg +0 -0
  328. data/assets/images/placeholder.png +0 -0
  329. data/assets/js/app/search.js +0 -41
  330. data/assets/js/app/sticky.js +0 -76
  331. data/assets/js/app/tables.js +0 -8
  332. data/assets/js/vendor/bootstrap.min.js +0 -7
  333. data/assets/js/vendor/cognito-forms.js +0 -150
  334. data/assets/js/vendor/cookieconsent.min.js +0 -8
  335. data/assets/js/vendor/flipclock.min.js +0 -35
  336. data/assets/js/vendor/jquery.min.js +0 -4
  337. data/assets/js/vendor/lazysizes.min.js +0 -2
  338. data/assets/js/vendor/lightbox.min.js +0 -14
  339. data/assets/js/vendor/mc-validate.js +0 -14
  340. data/assets/js/vendor/owl.carousel.min.js +0 -27
@@ -0,0 +1,301 @@
1
+ //
2
+ // Base styles
3
+ //
4
+
5
+ .card {
6
+ position: relative;
7
+ display: flex;
8
+ flex-direction: column;
9
+ min-width: 0;
10
+ word-wrap: break-word;
11
+ background-color: $card-bg;
12
+ background-clip: border-box;
13
+ border: $card-border-width solid $card-border-color;
14
+ @include border-radius($card-border-radius);
15
+
16
+ > hr {
17
+ margin-right: 0;
18
+ margin-left: 0;
19
+ }
20
+
21
+ > .list-group:first-child {
22
+ .list-group-item:first-child {
23
+ @include border-top-radius($card-border-radius);
24
+ }
25
+ }
26
+
27
+ > .list-group:last-child {
28
+ .list-group-item:last-child {
29
+ @include border-bottom-radius($card-border-radius);
30
+ }
31
+ }
32
+ }
33
+
34
+ .card-body {
35
+ // Enable `flex-grow: 1` for decks and groups so that card blocks take up
36
+ // as much space as possible, ensuring footers are aligned to the bottom.
37
+ flex: 1 1 auto;
38
+ padding: $card-spacer-x;
39
+ }
40
+
41
+ .card-title {
42
+ margin-bottom: $card-spacer-y;
43
+ }
44
+
45
+ .card-subtitle {
46
+ margin-top: -($card-spacer-y / 2);
47
+ margin-bottom: 0;
48
+ }
49
+
50
+ .card-text:last-child {
51
+ margin-bottom: 0;
52
+ }
53
+
54
+ .card-link {
55
+ @include hover {
56
+ text-decoration: none;
57
+ }
58
+
59
+ + .card-link {
60
+ margin-left: $card-spacer-x;
61
+ }
62
+ }
63
+
64
+ //
65
+ // Optional textual caps
66
+ //
67
+
68
+ .card-header {
69
+ padding: $card-spacer-y $card-spacer-x;
70
+ margin-bottom: 0; // Removes the default margin-bottom of <hN>
71
+ background-color: $card-cap-bg;
72
+ border-bottom: $card-border-width solid $card-border-color;
73
+
74
+ &:first-child {
75
+ @include border-radius($card-inner-border-radius $card-inner-border-radius 0 0);
76
+ }
77
+
78
+ + .list-group {
79
+ .list-group-item:first-child {
80
+ border-top: 0;
81
+ }
82
+ }
83
+ }
84
+
85
+ .card-footer {
86
+ padding: $card-spacer-y $card-spacer-x;
87
+ background-color: $card-cap-bg;
88
+ border-top: $card-border-width solid $card-border-color;
89
+
90
+ &:last-child {
91
+ @include border-radius(0 0 $card-inner-border-radius $card-inner-border-radius);
92
+ }
93
+ }
94
+
95
+
96
+ //
97
+ // Header navs
98
+ //
99
+
100
+ .card-header-tabs {
101
+ margin-right: -($card-spacer-x / 2);
102
+ margin-bottom: -$card-spacer-y;
103
+ margin-left: -($card-spacer-x / 2);
104
+ border-bottom: 0;
105
+ }
106
+
107
+ .card-header-pills {
108
+ margin-right: -($card-spacer-x / 2);
109
+ margin-left: -($card-spacer-x / 2);
110
+ }
111
+
112
+ // Card image
113
+ .card-img-overlay {
114
+ position: absolute;
115
+ top: 0;
116
+ right: 0;
117
+ bottom: 0;
118
+ left: 0;
119
+ padding: $card-img-overlay-padding;
120
+ }
121
+
122
+ .card-img {
123
+ width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch
124
+ @include border-radius($card-inner-border-radius);
125
+ }
126
+
127
+ // Card image caps
128
+ .card-img-top {
129
+ width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch
130
+ @include border-top-radius($card-inner-border-radius);
131
+ }
132
+
133
+ .card-img-bottom {
134
+ width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch
135
+ @include border-bottom-radius($card-inner-border-radius);
136
+ }
137
+
138
+
139
+ // Card deck
140
+
141
+ .card-deck {
142
+ display: flex;
143
+ flex-direction: column;
144
+
145
+ .card {
146
+ margin-bottom: $card-deck-margin;
147
+ }
148
+
149
+ @include media-breakpoint-up(sm) {
150
+ flex-flow: row wrap;
151
+ margin-right: -$card-deck-margin;
152
+ margin-left: -$card-deck-margin;
153
+
154
+ .card {
155
+ display: flex;
156
+ // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4
157
+ flex: 1 0 0%;
158
+ flex-direction: column;
159
+ margin-right: $card-deck-margin;
160
+ margin-bottom: 0; // Override the default
161
+ margin-left: $card-deck-margin;
162
+ }
163
+ }
164
+ }
165
+
166
+
167
+ //
168
+ // Card groups
169
+ //
170
+
171
+ .card-group {
172
+ display: flex;
173
+ flex-direction: column;
174
+
175
+ // The child selector allows nested `.card` within `.card-group`
176
+ // to display properly.
177
+ > .card {
178
+ margin-bottom: $card-group-margin;
179
+ }
180
+
181
+ @include media-breakpoint-up(sm) {
182
+ flex-flow: row wrap;
183
+ // The child selector allows nested `.card` within `.card-group`
184
+ // to display properly.
185
+ > .card {
186
+ // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4
187
+ flex: 1 0 0%;
188
+ margin-bottom: 0;
189
+
190
+ + .card {
191
+ margin-left: 0;
192
+ border-left: 0;
193
+ }
194
+
195
+ // Handle rounded corners
196
+ @if $enable-rounded {
197
+ &:first-child {
198
+ @include border-right-radius(0);
199
+
200
+ .card-img-top,
201
+ .card-header {
202
+ border-top-right-radius: 0;
203
+ }
204
+ .card-img-bottom,
205
+ .card-footer {
206
+ border-bottom-right-radius: 0;
207
+ }
208
+ }
209
+
210
+ &:last-child {
211
+ @include border-left-radius(0);
212
+
213
+ .card-img-top,
214
+ .card-header {
215
+ border-top-left-radius: 0;
216
+ }
217
+ .card-img-bottom,
218
+ .card-footer {
219
+ border-bottom-left-radius: 0;
220
+ }
221
+ }
222
+
223
+ &:only-child {
224
+ @include border-radius($card-border-radius);
225
+
226
+ .card-img-top,
227
+ .card-header {
228
+ @include border-top-radius($card-border-radius);
229
+ }
230
+ .card-img-bottom,
231
+ .card-footer {
232
+ @include border-bottom-radius($card-border-radius);
233
+ }
234
+ }
235
+
236
+ &:not(:first-child):not(:last-child):not(:only-child) {
237
+ @include border-radius(0);
238
+
239
+ .card-img-top,
240
+ .card-img-bottom,
241
+ .card-header,
242
+ .card-footer {
243
+ @include border-radius(0);
244
+ }
245
+ }
246
+ }
247
+ }
248
+ }
249
+ }
250
+
251
+
252
+ //
253
+ // Columns
254
+ //
255
+
256
+ .card-columns {
257
+ .card {
258
+ margin-bottom: $card-columns-margin;
259
+ }
260
+
261
+ @include media-breakpoint-up(sm) {
262
+ column-count: $card-columns-count;
263
+ column-gap: $card-columns-gap;
264
+ orphans: 1;
265
+ widows: 1;
266
+
267
+ .card {
268
+ display: inline-block; // Don't let them vertically span multiple columns
269
+ width: 100%; // Don't let their width change
270
+ }
271
+ }
272
+ }
273
+
274
+
275
+ //
276
+ // Accordion
277
+ //
278
+
279
+ .accordion {
280
+ .card:not(:first-of-type):not(:last-of-type) {
281
+ border-bottom: 0;
282
+ border-radius: 0;
283
+ }
284
+
285
+ .card:not(:first-of-type) {
286
+ .card-header:first-child {
287
+ border-radius: 0;
288
+ }
289
+ }
290
+
291
+ .card:first-of-type {
292
+ border-bottom: 0;
293
+ border-bottom-right-radius: 0;
294
+ border-bottom-left-radius: 0;
295
+ }
296
+
297
+ .card:last-of-type {
298
+ border-top-left-radius: 0;
299
+ border-top-right-radius: 0;
300
+ }
301
+ }
@@ -1,270 +1,236 @@
1
+ // Notes on the classes:
1
2
  //
2
- // Carousel
3
- // --------------------------------------------------
3
+ // 1. The .carousel-item-left and .carousel-item-right is used to indicate where
4
+ // the active slide is heading.
5
+ // 2. .active.carousel-item is the current slide.
6
+ // 3. .active.carousel-item-left and .active.carousel-item-right is the current
7
+ // slide in its in-transition state. Only one of these occurs at a time.
8
+ // 4. .carousel-item-next.carousel-item-left and .carousel-item-prev.carousel-item-right
9
+ // is the upcoming slide in transition.
4
10
 
5
-
6
- // Wrapper for the slide container and indicators
7
11
  .carousel {
8
12
  position: relative;
9
13
  }
10
14
 
11
15
  .carousel-inner {
12
16
  position: relative;
17
+ width: 100%;
13
18
  overflow: hidden;
19
+ }
20
+
21
+ .carousel-item {
22
+ position: relative;
23
+ display: none;
24
+ align-items: center;
14
25
  width: 100%;
26
+ backface-visibility: hidden;
27
+ perspective: 1000px;
28
+ }
15
29
 
16
- > .item {
17
- display: none;
18
- position: relative;
19
- @include transition(.6s ease-in-out left);
30
+ .carousel-item.active,
31
+ .carousel-item-next,
32
+ .carousel-item-prev {
33
+ display: block;
34
+ @include transition($carousel-transition);
35
+ }
20
36
 
21
- // Account for jankitude on images
22
- > img,
23
- > a > img {
24
- @include img-responsive;
25
- line-height: 1;
26
- }
37
+ .carousel-item-next,
38
+ .carousel-item-prev {
39
+ position: absolute;
40
+ top: 0;
41
+ }
27
42
 
28
- // WebKit CSS3 transforms for supported devices
29
- @media all and (transform-3d), (-webkit-transform-3d) {
30
- @include transition-transform(0.6s ease-in-out);
31
- @include backface-visibility(hidden);
32
- @include perspective(1000px);
33
-
34
- &.next,
35
- &.active.right {
36
- @include translate3d(100%, 0, 0);
37
- left: 0;
38
- }
39
- &.prev,
40
- &.active.left {
41
- @include translate3d(-100%, 0, 0);
42
- left: 0;
43
- }
44
- &.next.left,
45
- &.prev.right,
46
- &.active {
47
- @include translate3d(0, 0, 0);
48
- left: 0;
49
- }
50
- }
51
- }
43
+ .carousel-item-next.carousel-item-left,
44
+ .carousel-item-prev.carousel-item-right {
45
+ transform: translateX(0);
52
46
 
53
- > .active,
54
- > .next,
55
- > .prev {
56
- display: block;
47
+ @supports (transform-style: preserve-3d) {
48
+ transform: translate3d(0, 0, 0);
57
49
  }
50
+ }
58
51
 
59
- > .active {
60
- left: 0;
61
- }
52
+ .carousel-item-next,
53
+ .active.carousel-item-right {
54
+ transform: translateX(100%);
62
55
 
63
- > .next,
64
- > .prev {
65
- position: absolute;
66
- top: 0;
67
- width: 100%;
56
+ @supports (transform-style: preserve-3d) {
57
+ transform: translate3d(100%, 0, 0);
68
58
  }
59
+ }
69
60
 
70
- > .next {
71
- left: 100%;
72
- }
73
- > .prev {
74
- left: -100%;
61
+ .carousel-item-prev,
62
+ .active.carousel-item-left {
63
+ transform: translateX(-100%);
64
+
65
+ @supports (transform-style: preserve-3d) {
66
+ transform: translate3d(-100%, 0, 0);
75
67
  }
76
- > .next.left,
77
- > .prev.right {
78
- left: 0;
68
+ }
69
+
70
+
71
+ //
72
+ // Alternate transitions
73
+ //
74
+
75
+ .carousel-fade {
76
+ .carousel-item {
77
+ opacity: 0;
78
+ transition-duration: .6s;
79
+ transition-property: opacity;
79
80
  }
80
81
 
81
- > .active.left {
82
- left: -100%;
82
+ .carousel-item.active,
83
+ .carousel-item-next.carousel-item-left,
84
+ .carousel-item-prev.carousel-item-right {
85
+ opacity: 1;
83
86
  }
84
- > .active.right {
85
- left: 100%;
87
+
88
+ .active.carousel-item-left,
89
+ .active.carousel-item-right {
90
+ opacity: 0;
86
91
  }
87
92
 
93
+ .carousel-item-next,
94
+ .carousel-item-prev,
95
+ .carousel-item.active,
96
+ .active.carousel-item-left,
97
+ .active.carousel-item-prev {
98
+ transform: translateX(0);
99
+
100
+ @supports (transform-style: preserve-3d) {
101
+ transform: translate3d(0, 0, 0);
102
+ }
103
+ }
88
104
  }
89
105
 
106
+
107
+ //
90
108
  // Left/right controls for nav
91
- // ---------------------------
109
+ //
92
110
 
93
- .carousel-control {
111
+ .carousel-control-prev,
112
+ .carousel-control-next {
94
113
  position: absolute;
95
114
  top: 0;
96
- left: 0;
97
115
  bottom: 0;
116
+ // Use flex for alignment (1-3)
117
+ display: flex; // 1. allow flex styles
118
+ align-items: center; // 2. vertically center contents
119
+ justify-content: center; // 3. horizontally center contents
98
120
  width: $carousel-control-width;
99
- @include opacity($carousel-control-opacity);
100
- font-size: $carousel-control-font-size;
101
121
  color: $carousel-control-color;
102
122
  text-align: center;
103
- text-shadow: $carousel-text-shadow;
104
- background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug
105
- // We can't have this transition here because WebKit cancels the carousel
123
+ opacity: $carousel-control-opacity;
124
+ // We can't have a transition here because WebKit cancels the carousel
106
125
  // animation if you trip this while in the middle of another animation.
107
126
 
108
- // Set gradients for backgrounds
109
- &.left {
110
- @include gradient-horizontal($start-color: rgba(0,0,0,.5), $end-color: rgba(0,0,0,.0001));
111
- }
112
- &.right {
113
- left: auto;
114
- right: 0;
115
- @include gradient-horizontal($start-color: rgba(0,0,0,.0001), $end-color: rgba(0,0,0,.5));
116
- }
117
-
118
127
  // Hover/focus state
119
- &:hover,
120
- &:focus {
121
- outline: 0;
128
+ @include hover-focus {
122
129
  color: $carousel-control-color;
123
130
  text-decoration: none;
124
- @include opacity(.9);
125
- }
126
-
127
- // Toggles
128
- .icon-prev,
129
- .icon-next,
130
- .glyphicon-chevron-left,
131
- .glyphicon-chevron-right {
132
- position: absolute;
133
- top: 50%;
134
- margin-top: -10px;
135
- z-index: 5;
136
- display: inline-block;
137
- }
138
- .icon-prev,
139
- .glyphicon-chevron-left {
140
- left: 50%;
141
- margin-left: -10px;
131
+ outline: 0;
132
+ opacity: .9;
142
133
  }
143
- .icon-next,
144
- .glyphicon-chevron-right {
145
- right: 50%;
146
- margin-right: -10px;
134
+ }
135
+ .carousel-control-prev {
136
+ left: 0;
137
+ @if $enable-gradients {
138
+ background: linear-gradient(90deg, rgba($black, .25), rgba($black, .001));
147
139
  }
148
- .icon-prev,
149
- .icon-next {
150
- width: 20px;
151
- height: 20px;
152
- line-height: 1;
153
- font-family: serif;
140
+ }
141
+ .carousel-control-next {
142
+ right: 0;
143
+ @if $enable-gradients {
144
+ background: linear-gradient(270deg, rgba($black, .25), rgba($black, .001));
154
145
  }
146
+ }
155
147
 
156
-
157
- .icon-prev {
158
- &:before {
159
- content: '\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)
160
- }
161
- }
162
- .icon-next {
163
- &:before {
164
- content: '\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)
165
- }
166
- }
148
+ // Icons for within
149
+ .carousel-control-prev-icon,
150
+ .carousel-control-next-icon {
151
+ display: inline-block;
152
+ width: $carousel-control-icon-width;
153
+ height: $carousel-control-icon-width;
154
+ background: transparent no-repeat center center;
155
+ background-size: 100% 100%;
156
+ }
157
+ .carousel-control-prev-icon {
158
+ background-image: $carousel-control-prev-icon-bg;
159
+ }
160
+ .carousel-control-next-icon {
161
+ background-image: $carousel-control-next-icon-bg;
167
162
  }
168
163
 
164
+
169
165
  // Optional indicator pips
170
166
  //
171
- // Add an unordered list with the following class and add a list item for each
167
+ // Add an ordered list with the following class and add a list item for each
172
168
  // slide your carousel holds.
173
169
 
174
170
  .carousel-indicators {
175
171
  position: absolute;
172
+ right: 0;
176
173
  bottom: 10px;
177
- left: 50%;
174
+ left: 0;
178
175
  z-index: 15;
179
- width: 60%;
180
- margin-left: -30%;
181
- padding-left: 0;
176
+ display: flex;
177
+ justify-content: center;
178
+ padding-left: 0; // override <ol> default
179
+ // Use the .carousel-control's width as margin so we don't overlay those
180
+ margin-right: $carousel-control-width;
181
+ margin-left: $carousel-control-width;
182
182
  list-style: none;
183
- text-align: center;
184
183
 
185
184
  li {
186
- display: inline-block;
187
- width: 10px;
188
- height: 10px;
189
- margin: 1px;
185
+ position: relative;
186
+ flex: 0 1 auto;
187
+ width: $carousel-indicator-width;
188
+ height: $carousel-indicator-height;
189
+ margin-right: $carousel-indicator-spacer;
190
+ margin-left: $carousel-indicator-spacer;
190
191
  text-indent: -999px;
191
- border: 1px solid $carousel-indicator-border-color;
192
- border-radius: 10px;
193
192
  cursor: pointer;
194
-
195
- // IE8-9 hack for event handling
196
- //
197
- // Internet Explorer 8-9 does not support clicks on elements without a set
198
- // `background-color`. We cannot use `filter` since that's not viewed as a
199
- // background color by the browser. Thus, a hack is needed.
200
- // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer
201
- //
202
- // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we
203
- // set alpha transparency for the best results possible.
204
- background-color: #000 \9; // IE8
205
- background-color: rgba(0,0,0,0); // IE9
193
+ background-color: rgba($carousel-indicator-active-bg, .5);
194
+
195
+ // Use pseudo classes to increase the hit area by 10px on top and bottom.
196
+ &::before {
197
+ position: absolute;
198
+ top: -10px;
199
+ left: 0;
200
+ display: inline-block;
201
+ width: 100%;
202
+ height: 10px;
203
+ content: "";
204
+ }
205
+ &::after {
206
+ position: absolute;
207
+ bottom: -10px;
208
+ left: 0;
209
+ display: inline-block;
210
+ width: 100%;
211
+ height: 10px;
212
+ content: "";
213
+ }
206
214
  }
215
+
207
216
  .active {
208
- margin: 0;
209
- width: 12px;
210
- height: 12px;
211
217
  background-color: $carousel-indicator-active-bg;
212
218
  }
213
219
  }
214
220
 
221
+
215
222
  // Optional captions
216
- // -----------------------------
217
- // Hidden by default for smaller viewports
223
+ //
224
+ //
225
+
218
226
  .carousel-caption {
219
227
  position: absolute;
220
- left: 15%;
221
- right: 15%;
228
+ right: ((100% - $carousel-caption-width) / 2);
222
229
  bottom: 20px;
230
+ left: ((100% - $carousel-caption-width) / 2);
223
231
  z-index: 10;
224
232
  padding-top: 20px;
225
233
  padding-bottom: 20px;
226
234
  color: $carousel-caption-color;
227
235
  text-align: center;
228
- text-shadow: $carousel-text-shadow;
229
- & .btn {
230
- text-shadow: none; // No shadow for button elements in carousel-caption
231
- }
232
- }
233
-
234
-
235
- // Scale up controls for tablets and up
236
- @media screen and (min-width: $screen-sm-min) {
237
-
238
- // Scale up the controls a smidge
239
- .carousel-control {
240
- .glyphicon-chevron-left,
241
- .glyphicon-chevron-right,
242
- .icon-prev,
243
- .icon-next {
244
- width: ($carousel-control-font-size * 1.5);
245
- height: ($carousel-control-font-size * 1.5);
246
- margin-top: ($carousel-control-font-size / -2);
247
- font-size: ($carousel-control-font-size * 1.5);
248
- }
249
- .glyphicon-chevron-left,
250
- .icon-prev {
251
- margin-left: ($carousel-control-font-size / -2);
252
- }
253
- .glyphicon-chevron-right,
254
- .icon-next {
255
- margin-right: ($carousel-control-font-size / -2);
256
- }
257
- }
258
-
259
- // Show and left align the captions
260
- .carousel-caption {
261
- left: 20%;
262
- right: 20%;
263
- padding-bottom: 30px;
264
- }
265
-
266
- // Move up the indicators
267
- .carousel-indicators {
268
- bottom: 20px;
269
- }
270
236
  }