First Upload
This commit is contained in:
11
docker-compose.yaml
Normal file
11
docker-compose.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
nginx:
|
||||
image: nginx:latest
|
||||
ports:
|
||||
- "9999:80"
|
||||
volumes:
|
||||
- ./docker-persist/html:/usr/share/nginx/html
|
||||
- ./docker-persist/nginx:/etc/nginx
|
||||
restart: always
|
154
docker-persist/html/asterisk.html
Executable file
154
docker-persist/html/asterisk.html
Executable file
@@ -0,0 +1,154 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<!-- Google tag (gtag.js) -->
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-CW6BJ9V0RD"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
function gtag(){dataLayer.push(arguments);}
|
||||
gtag('js', new Date());
|
||||
|
||||
gtag('config', 'G-CW6BJ9V0RD');
|
||||
</script>
|
||||
|
||||
<link rel="canonical" href="https://dhitechnical.com">
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<meta name="title" content="DHI Technical Services LLC">
|
||||
<meta name="description" content="Providing reliable and effective IT solutions to small and medium-sized businesses in and around the Upper Valley and Lakes Region of New Hampshire">
|
||||
<meta name="keywords" content="IT, MSP, VMware, Linux, Cisco, Motorola, Managed Services, Managed IT Services, Networking, Newport NH, New Hampshire, Computer Repair, Radios, Repeaters, Computers, VoIP, Asterisk, FreePBX, PBX, Phone Systems, Data Recovery">
|
||||
<meta name="robots" content="index, follow">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="language" content="English">
|
||||
<meta name="author" content="Paul Mataruso">
|
||||
|
||||
|
||||
<link rel="shortcut icon" href="img/favicon.ico">
|
||||
<link rel="stylesheet" href="css/vendor/fluidbox.min.css">
|
||||
<link rel="stylesheet" href="css/main.css">
|
||||
|
||||
<title>dhitechnical.com</title>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
||||
<header>
|
||||
|
||||
<div id="logo-container">
|
||||
<div id="logo"><a href="/">DHI Technical Services</a></div>
|
||||
<div id="subtitle">Managed IT Services</div>
|
||||
</div>
|
||||
<nav>
|
||||
<ul>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
<li><a href="asterisk.html" class="bordered">Phone</a></li>
|
||||
<li><a href="motorola.html">Radio</li>
|
||||
<li><a href="recovery.html">Data Recovery</li>
|
||||
<li><a href="fiber.html">Fiber</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</header>
|
||||
|
||||
<div id="content">
|
||||
|
||||
<section class="row">
|
||||
<div class="col-full">
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<section class="row">
|
||||
<div class="col-full">
|
||||
<h2>Business Phone Solutions</h2>
|
||||
<p>
|
||||
If you're looking to upgrade your business phone system, consider switching to a VoIP (Voice over Internet Protocol) phone system. With VoIP, you can make calls over the internet rather than through traditional phone lines, which can result in significant cost savings. VoIP systems also offer a range of advanced features, such as call forwarding, voicemail-to-email transcription, and video conferencing. Plus, with the ability to integrate with other business applications, VoIP can help streamline your operations and improve efficiency. At our company, we offer a variety of VoIP phone systems tailored to meet the needs of businesses of all sizes. Contact us today to learn more about how a VoIP system can benefit your organization.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="row">
|
||||
<div class="col-full">
|
||||
<h2>Legacy PBX Integration</h2>
|
||||
<p>
|
||||
If your business is still using a legacy PBX phone system or key system, you may be hesitant to switch to a new VoIP system due to concerns about compatibility and the cost of replacing your existing infrastructure. However, integrating your PBX with a SIP gateway can allow you to reap the benefits of VoIP without the need for a complete overhaul. A SIP gateway acts as a bridge between your PBX and the internet, enabling you to make and receive calls using VoIP technology without replacing your current system. This can result in cost savings and improved call quality, and no user re-training. At our company, we specialize in helping businesses integrate their legacy PBX systems with SIP gateways, providing a seamless transition to a more modern and efficient phone system. Contact us today to learn more about how we can help your business take advantage of the benefits of VoIP.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div align="center"><img src="img/1.png" height="10%" width="75%"></div>
|
||||
<br>
|
||||
|
||||
<div align="center">
|
||||
<a href="https://clearlyip.com" target="_blank" rel="noopener"><img src="https://www.clearlyip.com/wp-content/uploads/2022/10/cip_badge-gold.png" alt="ClearlyIP Gold Partner Badge" title="ClearlyIP Gold Partner Badge" border="0" width="130" height="185"></a>
|
||||
</div>
|
||||
|
||||
<section class="row">
|
||||
<div class="col">
|
||||
<h2>Contact</h2>
|
||||
<p>
|
||||
Questions? Just send us an <a href="mailto:paulmataruso@dhitechnical.com">email</a>.
|
||||
|
||||
</p>
|
||||
<p>
|
||||
You may also call us via at: +1 (603) 865.1200
|
||||
</p>
|
||||
<p>
|
||||
IT Emergency? Call 24/7/365: +1 (603) 477.1783
|
||||
</p>
|
||||
<p>
|
||||
<a href="support.exe">Remote Support Tool Download<a/>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
<div class="col">
|
||||
<h2>Follow us</h2>
|
||||
<p>
|
||||
We are on <a href="https://www.facebook.com/dhitechnical">Facebook</a>
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
<center>
|
||||
<section class="row">
|
||||
<div class="col-full">
|
||||
<p>
|
||||
<center>Proudly powered by</center>
|
||||
<center>
|
||||
|
||||
<img src="img/ibm-redhat.jpg" height="25%" width="25%">
|
||||
|
||||
</center>
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
</center>
|
||||
<section class="row">
|
||||
<div class="col-full">
|
||||
<p>
|
||||
© 2020 - DHI Technical Services LLC.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
|
||||
<script>
|
||||
if (!window.jQuery)
|
||||
{
|
||||
document.write('<script src="js/vendor/jquery.1.11.min.js"><\/script>');
|
||||
}
|
||||
</script>
|
||||
|
||||
<script src="js/vendor/jquery.fluidbox.min.js"></script>
|
||||
<script src="js/main.js"></script>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
15
docker-persist/html/beback.html
Normal file
15
docker-persist/html/beback.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<HTML>
|
||||
|
||||
<HEAD>
|
||||
|
||||
<TITLE>cios.dhitechnical.com</TITLE>
|
||||
|
||||
</HEAD>
|
||||
|
||||
<BODY>
|
||||
|
||||
<div align="center">We are doing server upgrades, will be back soon</div>
|
||||
|
||||
</BODY>
|
||||
|
||||
</HTML>
|
1456
docker-persist/html/blocklist/block1.txt
Executable file
1456
docker-persist/html/blocklist/block1.txt
Executable file
File diff suppressed because it is too large
Load Diff
280
docker-persist/html/blocklist/block2.txt
Executable file
280
docker-persist/html/blocklist/block2.txt
Executable file
@@ -0,0 +1,280 @@
|
||||
103.195.238.130
|
||||
103.90.84.153
|
||||
104.143.77.8
|
||||
104.248.172.102
|
||||
106.70.252.79
|
||||
107.148.174.118
|
||||
107.172.90.177
|
||||
112.168.205.145
|
||||
112.184.169.224
|
||||
112.54.220.94
|
||||
115.23.23.103
|
||||
116.105.209.189
|
||||
116.105.219.220
|
||||
116.105.219.27
|
||||
116.105.223.7
|
||||
116.110.115.57
|
||||
116.110.127.227
|
||||
116.110.16.166
|
||||
116.110.209.64
|
||||
116.110.213.142
|
||||
116.110.22.49
|
||||
116.110.23.138
|
||||
116.110.30.196
|
||||
116.110.30.32
|
||||
116.110.31.231
|
||||
116.110.64.39
|
||||
116.110.77.235
|
||||
116.110.79.212
|
||||
116.110.82.205
|
||||
116.110.93.194
|
||||
116.110.95.186
|
||||
116.98.160.20
|
||||
116.98.163.124
|
||||
116.98.167.11
|
||||
116.98.168.191
|
||||
116.98.168.253
|
||||
116.98.170.73
|
||||
116.98.171.55
|
||||
116.98.173.252
|
||||
116.98.174.235
|
||||
118.107.44.111
|
||||
118.194.255.11
|
||||
119.161.97.162
|
||||
120.71.59.32
|
||||
121.135.178.32
|
||||
122.179.153.121
|
||||
124.237.215.139
|
||||
128.199.25.206
|
||||
129.80.209.136
|
||||
132.148.73.98
|
||||
134.122.96.44
|
||||
134.209.126.144
|
||||
134.209.151.19
|
||||
134.209.154.49
|
||||
134.209.175.186
|
||||
134.209.45.196
|
||||
137.184.129.112
|
||||
137.184.162.228
|
||||
137.184.191.8
|
||||
137.184.209.45
|
||||
137.184.217.12
|
||||
137.184.39.83
|
||||
137.184.40.25
|
||||
137.184.47.205
|
||||
137.184.53.125
|
||||
137.184.9.107
|
||||
138.197.33.178
|
||||
139.59.157.209
|
||||
139.59.56.46
|
||||
139.9.67.129
|
||||
140.246.28.249
|
||||
14.194.76.38
|
||||
141.98.10.106
|
||||
141.98.10.15
|
||||
141.98.11.82
|
||||
142.93.124.140
|
||||
143.110.146.83
|
||||
143.110.158.46
|
||||
143.198.166.41
|
||||
143.198.196.174
|
||||
143.198.87.140
|
||||
143.92.49.143
|
||||
144.126.131.8
|
||||
146.190.50.123
|
||||
146.190.50.243
|
||||
147.182.254.157
|
||||
148.102.76.10
|
||||
157.10.45.104
|
||||
157.230.113.8
|
||||
158.178.227.120
|
||||
158.220.116.213
|
||||
158.220.122.43
|
||||
159.203.185.80
|
||||
159.203.42.92
|
||||
159.223.50.96
|
||||
159.28.223.133
|
||||
159.65.146.220
|
||||
159.65.165.225
|
||||
159.65.30.158
|
||||
159.65.46.25
|
||||
159.89.113.100
|
||||
159.89.194.184
|
||||
162.19.106.184
|
||||
164.132.244.212
|
||||
164.90.186.113
|
||||
165.22.126.118
|
||||
165.232.128.197
|
||||
167.114.152.198
|
||||
167.172.42.174
|
||||
167.71.107.123
|
||||
167.71.182.36
|
||||
167.71.189.243
|
||||
167.71.247.1
|
||||
167.71.251.60
|
||||
167.71.90.93
|
||||
167.99.184.105
|
||||
167.99.48.128
|
||||
167.99.86.33
|
||||
167.99.92.227
|
||||
169.255.161.254
|
||||
170.64.136.239
|
||||
170.64.137.179
|
||||
170.64.137.183
|
||||
170.64.137.224
|
||||
170.64.149.74
|
||||
170.64.171.196
|
||||
170.64.175.112
|
||||
170.64.180.43
|
||||
170.64.184.17
|
||||
170.64.185.94
|
||||
170.64.188.205
|
||||
170.64.208.146
|
||||
170.64.209.122
|
||||
170.64.209.207
|
||||
170.64.209.216
|
||||
170.64.210.204
|
||||
170.64.214.18
|
||||
170.64.214.86
|
||||
170.64.222.165
|
||||
170.64.222.171
|
||||
170.64.224.245
|
||||
170.64.225.236
|
||||
170.64.226.186
|
||||
170.64.229.121
|
||||
170.64.229.180
|
||||
170.64.230.89
|
||||
170.64.233.226
|
||||
170.64.238.75
|
||||
171.251.16.224
|
||||
171.251.19.247
|
||||
171.251.20.158
|
||||
171.251.21.243
|
||||
171.251.27.248
|
||||
171.251.28.140
|
||||
171.251.28.152
|
||||
171.251.28.208
|
||||
174.7.102.23
|
||||
175.206.113.91
|
||||
175.208.185.122
|
||||
178.128.200.62
|
||||
178.128.230.54
|
||||
178.62.11.115
|
||||
178.62.13.127
|
||||
178.62.71.29
|
||||
180.101.88.196
|
||||
180.101.88.197
|
||||
180.101.88.205
|
||||
181.113.114.115
|
||||
182.160.24.2
|
||||
183.111.144.79
|
||||
183.81.169.238
|
||||
185.208.207.200
|
||||
186.109.15.201
|
||||
188.166.59.144
|
||||
190.211.255.106
|
||||
193.32.162.29
|
||||
193.32.162.65
|
||||
193.32.162.79
|
||||
193.32.162.83
|
||||
193.70.61.66
|
||||
194.169.175.35
|
||||
194.169.175.36
|
||||
194.50.16.17
|
||||
194.50.16.221
|
||||
194.50.16.227
|
||||
195.133.38.50
|
||||
198.211.103.118
|
||||
202.125.139.10
|
||||
202.165.17.226
|
||||
206.81.8.227
|
||||
209.38.25.99
|
||||
209.38.30.77
|
||||
209.38.30.9
|
||||
209.97.183.7
|
||||
210.105.101.236
|
||||
210.113.102.171
|
||||
211.217.39.221
|
||||
211.224.41.185
|
||||
212.113.102.128
|
||||
212.76.27.39
|
||||
212.80.214.193
|
||||
213.109.202.127
|
||||
213.217.31.51
|
||||
218.92.0.107
|
||||
218.92.0.112
|
||||
218.92.0.113
|
||||
218.92.0.117
|
||||
218.92.0.118
|
||||
218.92.0.24
|
||||
218.92.0.27
|
||||
218.92.0.29
|
||||
218.92.0.31
|
||||
218.92.0.34
|
||||
218.92.0.56
|
||||
218.92.0.76
|
||||
221.222.184.230
|
||||
23.95.248.83
|
||||
24.144.86.27
|
||||
3.101.57.234
|
||||
34.216.45.80
|
||||
35.187.86.190
|
||||
35.88.254.72
|
||||
35.94.60.61
|
||||
4.17.226.146
|
||||
42.51.28.151
|
||||
45.128.232.22
|
||||
45.142.112.135
|
||||
45.148.10.202
|
||||
45.148.10.251
|
||||
45.148.10.69
|
||||
45.160.23.250
|
||||
45.92.242.233
|
||||
46.101.10.39
|
||||
46.247.172.207
|
||||
49.13.234.229
|
||||
50.174.121.86
|
||||
54.176.43.51
|
||||
54.177.47.237
|
||||
54.212.37.234
|
||||
54.213.140.102
|
||||
54.219.141.119
|
||||
54.219.240.206
|
||||
54.37.10.124
|
||||
61.177.172.140
|
||||
61.177.172.160
|
||||
61.177.172.179
|
||||
61.73.33.186
|
||||
62.60.204.238
|
||||
64.226.103.55
|
||||
64.226.121.229
|
||||
66.66.116.251
|
||||
67.205.144.91
|
||||
68.183.201.109
|
||||
68.183.37.119
|
||||
68.183.37.70
|
||||
72.24.32.60
|
||||
77.242.225.38
|
||||
79.175.128.161
|
||||
82.137.193.252
|
||||
82.151.65.155
|
||||
83.222.191.62
|
||||
84.54.51.119
|
||||
85.133.222.157
|
||||
85.209.11.254
|
||||
85.209.11.27
|
||||
85.209.133.20
|
||||
87.128.104.138
|
||||
87.98.128.245
|
||||
90.230.219.69
|
||||
91.92.245.92
|
||||
92.118.39.133
|
||||
92.55.190.215
|
||||
94.141.102.96
|
||||
95.160.51.102
|
||||
95.181.173.153
|
||||
95.214.27.139
|
||||
95.214.27.196
|
||||
95.214.27.253
|
||||
96.77.25.60
|
||||
97.101.192.177
|
428865
docker-persist/html/blocklist/block3.txt
Executable file
428865
docker-persist/html/blocklist/block3.txt
Executable file
File diff suppressed because it is too large
Load Diff
1550
docker-persist/html/blocklist/talos.txt
Executable file
1550
docker-persist/html/blocklist/talos.txt
Executable file
File diff suppressed because it is too large
Load Diff
33
docker-persist/html/css/_config.scss
Executable file
33
docker-persist/html/css/_config.scss
Executable file
@@ -0,0 +1,33 @@
|
||||
// Typography
|
||||
$base-font-family: "font-family: "Helvetica Neue",Helvetica,Arial,sans-serif";
|
||||
$header-font-family: $base-font-family;
|
||||
$paragraph-font-family: $base-font-family;
|
||||
|
||||
|
||||
// Font Colors
|
||||
$base-font-color: #ced9e0;
|
||||
$base-header-font-color: #fff;
|
||||
$base-heading-font-color: #fff;
|
||||
$base-accent-color: #e85151;
|
||||
$base-footer-font-color: #4c5358;
|
||||
|
||||
// Background Color
|
||||
$base-background-color: #22272a;
|
||||
|
||||
// Link Colors
|
||||
$base-link-color: $base-font-color;
|
||||
$base-hover-link-color: darken($base-font-color, 15);
|
||||
|
||||
// Header Link Colors
|
||||
$base-logo-link-color: $base-accent-color;
|
||||
$base-logo-hover-link-color: darken($base-accent-color, 15);
|
||||
$base-header-link-color: $base-header-font-color;
|
||||
$base-header-hover-link-color: darken($base-header-font-color, 15);
|
||||
|
||||
// Borders
|
||||
$base-border-color: #ddd;
|
||||
$header-border: 2px solid $base-accent-color;
|
||||
$heading-border: 2px solid $base-heading-font-color;
|
||||
$section-border: 2px solid $base-font-color;
|
||||
|
||||
$max-width: 68em;
|
1
docker-persist/html/css/_grid-settings.scss
Executable file
1
docker-persist/html/css/_grid-settings.scss
Executable file
@@ -0,0 +1 @@
|
||||
$mobile: new-breakpoint(max-width 540px 4);
|
229
docker-persist/html/css/_reset.scss
Executable file
229
docker-persist/html/css/_reset.scss
Executable file
@@ -0,0 +1,229 @@
|
||||
html, body, div, span, object, iframe,
|
||||
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
||||
abbr, address, cite, code,
|
||||
del, dfn, em, img, ins, kbd, q, samp,
|
||||
small, strong, sub, sup, var,
|
||||
b, i,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td,
|
||||
article, aside, canvas, details, figcaption, figure,
|
||||
footer, header, hgroup, menu, nav, section, summary,
|
||||
time, mark, audio, video {
|
||||
margin:0;
|
||||
padding:0;
|
||||
border:0;
|
||||
outline:0;
|
||||
vertical-align:baseline;
|
||||
background:transparent;
|
||||
}
|
||||
|
||||
html,body {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
// Corrects block display not defined in IE8/9 & FF3
|
||||
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
// Corrects inline-block display not defined in IE8/9 & FF3
|
||||
audio, canvas, video {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
// Prevents modern browsers from displaying 'audio' without controls
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
// Addresses styling for 'hidden' attribute not present in IE8/9, FF3, S4
|
||||
[hidden] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
// Prevents iOS text size adjust after orientation change, without disabling user zoom
|
||||
// www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
|
||||
// Addresses font-family inconsistency between 'textarea' and other form elements.
|
||||
html, button, input, select, textarea {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
a {
|
||||
// Addresses outline displayed oddly in Chrome
|
||||
&:focus {
|
||||
outline: thin dotted;
|
||||
// Webkit
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
||||
// Improves readability when focused and also mouse hovered in all browsers
|
||||
// people.opera.com/patrickl/experiments/keyboard/test
|
||||
&:hover, &:active {
|
||||
outline: 0;
|
||||
}
|
||||
}
|
||||
|
||||
// Addresses styling not present in IE8/9, S5, Chrome
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted;
|
||||
}
|
||||
|
||||
// Addresses style set to 'bolder' in FF3+, S4/5, Chrome
|
||||
b, strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 1em 40px;
|
||||
}
|
||||
|
||||
// Addresses styling not present in S5, Chrome
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
// Addresses styling not present in IE8/9
|
||||
mark {
|
||||
background: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
// Corrects font family set oddly in S4/5, Chrome
|
||||
// en.wikipedia.org/wiki/User:Davidgothberg/Test59
|
||||
pre, code, kbd, samp {
|
||||
font-family: monospace, serif;
|
||||
_font-family: 'courier new', monospace;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
// Improves readability of pre-formatted text in all browsers
|
||||
pre {
|
||||
white-space: pre;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
// Addresses quote property not supported in S4
|
||||
blockquote, q {
|
||||
quotes: none;
|
||||
&:before, &:after {
|
||||
content: '';
|
||||
content: none;
|
||||
}
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 75%;
|
||||
}
|
||||
|
||||
sub, sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
nav {
|
||||
ul, ol {
|
||||
list-style: none;
|
||||
list-style-image: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Removes border when inside 'a' element in IE8/9, FF3
|
||||
img {
|
||||
border: 0;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
-ms-interpolation-mode: bicubic;
|
||||
}
|
||||
|
||||
// Corrects overflow displayed oddly in IE9
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
// Define consistent border, margin, and padding
|
||||
fieldset {
|
||||
border: 1px solid #c0c0c0;
|
||||
margin: 0 2px;
|
||||
padding: 0.35em 0.625em 0.75em;
|
||||
}
|
||||
|
||||
legend {
|
||||
border: 0; // Corrects color not being inherited in IE8/9
|
||||
padding: 0;
|
||||
white-space: normal; // Corrects text not wrapping in FF3
|
||||
}
|
||||
|
||||
button, input, select, textarea {
|
||||
font-size: 100%; // Corrects font size not being inherited in all browsers
|
||||
margin: 0; // Addresses margins set differently in FF3+, S5, Chrome
|
||||
vertical-align: baseline; // Improves appearance and consistency in all browsers
|
||||
}
|
||||
|
||||
// Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
|
||||
button, input {
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
button, input[type="button"], input[type="reset"], input[type="submit"] {
|
||||
cursor: pointer; // Improves usability and consistency of cursor style between image-type 'input' and others
|
||||
-webkit-appearance: button; // Corrects inability to style clickable 'input' types in iOS
|
||||
}
|
||||
|
||||
// Re-set default cursor for disabled elements
|
||||
button[disabled], input[disabled] {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
input[type="checkbox"], input[type="radio"] {
|
||||
box-sizing: border-box; // Addresses box sizing set to content-box in IE8/9
|
||||
padding: 0; //Removes excess padding in IE8/9
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: textfield; // Addresses appearance set to searchfield in S5, Chrome
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box; // Addresses box-sizing set to border-box in S5, Chrome (-moz to future-proof)
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
// Removes inner padding and search cancel button in S5, Chrome on OS X
|
||||
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
// Removes inner padding and border in FF3+
|
||||
// www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
|
||||
button::-moz-focus-inner, input::-moz-focus-inner {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
textarea {
|
||||
overflow: auto; // Removes default vertical scrollbar in IE8/9
|
||||
vertical-align: top; // Improves readability and alignment in all browsers
|
||||
}
|
||||
|
||||
// Remove most spacing between table cells
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
122
docker-persist/html/css/_typography.scss
Executable file
122
docker-persist/html/css/_typography.scss
Executable file
@@ -0,0 +1,122 @@
|
||||
// Font Sizes
|
||||
$base-font-size: 1em;
|
||||
$h1-font-size: $base-font-size * 2.25;
|
||||
$h2-font-size: $base-font-size * 2;
|
||||
$h3-font-size: $base-font-size * 1.75;
|
||||
$h4-font-size: $base-font-size * 1.5;
|
||||
$h5-font-size: $base-font-size * 1.25;
|
||||
$h6-font-size: $base-font-size;
|
||||
|
||||
// Line height
|
||||
$base-line-height: 1.5;
|
||||
$header-line-height: 1.25;
|
||||
|
||||
// Other Sizes
|
||||
$base-border-radius: 3px;
|
||||
$base-spacing: $base-line-height * 1em;
|
||||
$base-z-index: 0;
|
||||
|
||||
// Borders
|
||||
$base-border: 1px solid $base-border-color;
|
||||
|
||||
body {
|
||||
@include font-feature-settings("kern","liga","frac", "pnum");
|
||||
-webkit-font-smoothing: antialiased;
|
||||
text-rendering: optimizeLegibility;
|
||||
background-color: $base-background-color;
|
||||
color: $base-font-color;
|
||||
font-family: $base-font-family;
|
||||
font-size: $base-font-size;
|
||||
line-height: $base-line-height;
|
||||
}
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-family: $header-font-family;
|
||||
line-height: $header-line-height;
|
||||
margin: 0;
|
||||
color: $base-heading-font-color;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: $h1-font-size;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: $h2-font-size;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: $h3-font-size;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: $h4-font-size;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: $h5-font-size;
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-size: $h6-font-size;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0 0 ($base-spacing / 2);
|
||||
font-family: $paragraph-font-family;
|
||||
}
|
||||
|
||||
a {
|
||||
@include transition(color 0.1s linear);
|
||||
color: $base-link-color;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
color: $base-hover-link-color;
|
||||
border-color: $base-hover-link-color;
|
||||
}
|
||||
|
||||
&:active, &:focus {
|
||||
color: $base-hover-link-color;
|
||||
border-color: $base-hover-link-color;
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
header {
|
||||
color: $base-header-font-color;
|
||||
}
|
||||
|
||||
hr {
|
||||
border-bottom: $base-border;
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
border-top: none;
|
||||
margin: $base-spacing 0;
|
||||
}
|
||||
|
||||
img,
|
||||
picture {
|
||||
margin: 0;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 2px solid $base-border-color;
|
||||
color: lighten($base-font-color, 15);
|
||||
margin: $base-spacing 0;
|
||||
padding-left: $base-spacing / 2;
|
||||
}
|
||||
|
||||
cite {
|
||||
color: lighten($base-font-color, 25);
|
||||
font-style: italic;
|
||||
|
||||
&:before {
|
||||
content: "\2014 \00A0";
|
||||
}
|
||||
}
|
8
docker-persist/html/css/bourbon/_bourbon-deprecated-upcoming.scss
vendored
Executable file
8
docker-persist/html/css/bourbon/_bourbon-deprecated-upcoming.scss
vendored
Executable file
@@ -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";
|
||||
}
|
79
docker-persist/html/css/bourbon/_bourbon.scss
vendored
Executable file
79
docker-persist/html/css/bourbon/_bourbon.scss
vendored
Executable file
@@ -0,0 +1,79 @@
|
||||
// Settings
|
||||
@import "settings/prefixer";
|
||||
@import "settings/px-to-em";
|
||||
@import "settings/asset-pipeline";
|
||||
|
||||
// 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/font-feature-settings";
|
||||
@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";
|
374
docker-persist/html/css/bourbon/addons/_button.scss
vendored
Executable file
374
docker-persist/html/css/bourbon/addons/_button.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
23
docker-persist/html/css/bourbon/addons/_clearfix.scss
vendored
Executable file
23
docker-persist/html/css/bourbon/addons/_clearfix.scss
vendored
Executable file
@@ -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)
|
111
docker-persist/html/css/bourbon/addons/_directional-values.scss
vendored
Executable file
111
docker-persist/html/css/bourbon/addons/_directional-values.scss
vendored
Executable file
@@ -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...);
|
||||
}
|
7
docker-persist/html/css/bourbon/addons/_ellipsis.scss
vendored
Executable file
7
docker-persist/html/css/bourbon/addons/_ellipsis.scss
vendored
Executable file
@@ -0,0 +1,7 @@
|
||||
@mixin ellipsis($width: 100%) {
|
||||
display: inline-block;
|
||||
max-width: $width;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
5
docker-persist/html/css/bourbon/addons/_font-family.scss
vendored
Executable file
5
docker-persist/html/css/bourbon/addons/_font-family.scss
vendored
Executable file
@@ -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;
|
10
docker-persist/html/css/bourbon/addons/_hide-text.scss
vendored
Executable file
10
docker-persist/html/css/bourbon/addons/_hide-text.scss
vendored
Executable file
@@ -0,0 +1,10 @@
|
||||
@mixin hide-text {
|
||||
overflow: hidden;
|
||||
|
||||
&:before {
|
||||
content: "";
|
||||
display: block;
|
||||
width: 0;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
86
docker-persist/html/css/bourbon/addons/_html5-input-types.scss
vendored
Executable file
86
docker-persist/html/css/bourbon/addons/_html5-input-types.scss
vendored
Executable file
@@ -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;
|
||||
// }
|
32
docker-persist/html/css/bourbon/addons/_position.scss
vendored
Executable file
32
docker-persist/html/css/bourbon/addons/_position.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
45
docker-persist/html/css/bourbon/addons/_prefixer.scss
vendored
Executable file
45
docker-persist/html/css/bourbon/addons/_prefixer.scss
vendored
Executable file
@@ -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;
|
||||
}
|
31
docker-persist/html/css/bourbon/addons/_retina-image.scss
vendored
Executable file
31
docker-persist/html/css/bourbon/addons/_retina-image.scss
vendored
Executable file
@@ -0,0 +1,31 @@
|
||||
@mixin retina-image($filename, $background-size, $extension: png, $retina-filename: null, $retina-suffix: _2x, $asset-pipeline: $asset-pipeline) {
|
||||
@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;
|
||||
|
||||
}
|
||||
}
|
16
docker-persist/html/css/bourbon/addons/_size.scss
vendored
Executable file
16
docker-persist/html/css/bourbon/addons/_size.scss
vendored
Executable file
@@ -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($width) == number and not unitless($width)) {
|
||||
width: $width;
|
||||
}
|
||||
}
|
32
docker-persist/html/css/bourbon/addons/_timing-functions.scss
vendored
Executable file
32
docker-persist/html/css/bourbon/addons/_timing-functions.scss
vendored
Executable file
@@ -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/resources/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);
|
83
docker-persist/html/css/bourbon/addons/_triangle.scss
vendored
Executable file
83
docker-persist/html/css/bourbon/addons/_triangle.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
8
docker-persist/html/css/bourbon/addons/_word-wrap.scss
vendored
Executable file
8
docker-persist/html/css/bourbon/addons/_word-wrap.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
52
docker-persist/html/css/bourbon/css3/_animation.scss
vendored
Executable file
52
docker-persist/html/css/bourbon/css3/_animation.scss
vendored
Executable file
@@ -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);
|
||||
}
|
3
docker-persist/html/css/bourbon/css3/_appearance.scss
vendored
Executable file
3
docker-persist/html/css/bourbon/css3/_appearance.scss
vendored
Executable file
@@ -0,0 +1,3 @@
|
||||
@mixin appearance ($value) {
|
||||
@include prefixer(appearance, $value, webkit moz ms o spec);
|
||||
}
|
6
docker-persist/html/css/bourbon/css3/_backface-visibility.scss
vendored
Executable file
6
docker-persist/html/css/bourbon/css3/_backface-visibility.scss
vendored
Executable file
@@ -0,0 +1,6 @@
|
||||
//************************************************************************//
|
||||
// Backface-visibility mixin
|
||||
//************************************************************************//
|
||||
@mixin backface-visibility($visibility) {
|
||||
@include prefixer(backface-visibility, $visibility, webkit spec);
|
||||
}
|
42
docker-persist/html/css/bourbon/css3/_background-image.scss
vendored
Executable file
42
docker-persist/html/css/bourbon/css3/_background-image.scss
vendored
Executable file
@@ -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;
|
||||
}
|
55
docker-persist/html/css/bourbon/css3/_background.scss
vendored
Executable file
55
docker-persist/html/css/bourbon/css3/_background.scss
vendored
Executable file
@@ -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;
|
||||
}
|
59
docker-persist/html/css/bourbon/css3/_border-image.scss
vendored
Executable file
59
docker-persist/html/css/bourbon/css3/_border-image.scss
vendored
Executable file
@@ -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));
|
22
docker-persist/html/css/bourbon/css3/_border-radius.scss
vendored
Executable file
22
docker-persist/html/css/bourbon/css3/_border-radius.scss
vendored
Executable file
@@ -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);
|
||||
}
|
4
docker-persist/html/css/bourbon/css3/_box-sizing.scss
vendored
Executable file
4
docker-persist/html/css/bourbon/css3/_box-sizing.scss
vendored
Executable file
@@ -0,0 +1,4 @@
|
||||
@mixin box-sizing ($box) {
|
||||
// content-box | border-box | inherit
|
||||
@include prefixer(box-sizing, $box, webkit moz spec);
|
||||
}
|
4
docker-persist/html/css/bourbon/css3/_calc.scss
vendored
Executable file
4
docker-persist/html/css/bourbon/css3/_calc.scss
vendored
Executable file
@@ -0,0 +1,4 @@
|
||||
@mixin calc($property, $value) {
|
||||
#{$property}: -webkit-calc(#{$value});
|
||||
#{$property}: calc(#{$value});
|
||||
}
|
47
docker-persist/html/css/bourbon/css3/_columns.scss
vendored
Executable file
47
docker-persist/html/css/bourbon/css3/_columns.scss
vendored
Executable file
@@ -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);
|
||||
}
|
5
docker-persist/html/css/bourbon/css3/_filter.scss
vendored
Executable file
5
docker-persist/html/css/bourbon/css3/_filter.scss
vendored
Executable file
@@ -0,0 +1,5 @@
|
||||
@mixin filter($function: none) {
|
||||
// <filter-function> [<filter-function]* | none
|
||||
@include prefixer(filter, $function, webkit spec);
|
||||
}
|
||||
|
321
docker-persist/html/css/bourbon/css3/_flex-box.scss
vendored
Executable file
321
docker-persist/html/css/bourbon/css3/_flex-box.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
|
23
docker-persist/html/css/bourbon/css3/_font-face.scss
vendored
Executable file
23
docker-persist/html/css/bourbon/css3/_font-face.scss
vendored
Executable file
@@ -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: $asset-pipeline) {
|
||||
@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');
|
||||
}
|
||||
}
|
||||
}
|
10
docker-persist/html/css/bourbon/css3/_font-feature-settings.scss
vendored
Executable file
10
docker-persist/html/css/bourbon/css3/_font-feature-settings.scss
vendored
Executable file
@@ -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);
|
||||
}
|
10
docker-persist/html/css/bourbon/css3/_hidpi-media-query.scss
vendored
Executable file
10
docker-persist/html/css/bourbon/css3/_hidpi-media-query.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
4
docker-persist/html/css/bourbon/css3/_hyphens.scss
vendored
Executable file
4
docker-persist/html/css/bourbon/css3/_hyphens.scss
vendored
Executable file
@@ -0,0 +1,4 @@
|
||||
@mixin hyphens($hyphenation: none) {
|
||||
// none | manual | auto
|
||||
@include prefixer(hyphens, $hyphenation, webkit moz ms spec);
|
||||
}
|
14
docker-persist/html/css/bourbon/css3/_image-rendering.scss
vendored
Executable file
14
docker-persist/html/css/bourbon/css3/_image-rendering.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
35
docker-persist/html/css/bourbon/css3/_keyframes.scss
vendored
Executable file
35
docker-persist/html/css/bourbon/css3/_keyframes.scss
vendored
Executable file
@@ -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;
|
||||
}
|
||||
}
|
||||
}
|
38
docker-persist/html/css/bourbon/css3/_linear-gradient.scss
vendored
Executable file
38
docker-persist/html/css/bourbon/css3/_linear-gradient.scss
vendored
Executable file
@@ -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})");
|
||||
}
|
8
docker-persist/html/css/bourbon/css3/_perspective.scss
vendored
Executable file
8
docker-persist/html/css/bourbon/css3/_perspective.scss
vendored
Executable file
@@ -0,0 +1,8 @@
|
||||
@mixin perspective($depth: none) {
|
||||
// none | <length>
|
||||
@include prefixer(perspective, $depth, webkit moz spec);
|
||||
}
|
||||
|
||||
@mixin perspective-origin($value: 50% 50%) {
|
||||
@include prefixer(perspective-origin, $value, webkit moz spec);
|
||||
}
|
8
docker-persist/html/css/bourbon/css3/_placeholder.scss
vendored
Executable file
8
docker-persist/html/css/bourbon/css3/_placeholder.scss
vendored
Executable file
@@ -0,0 +1,8 @@
|
||||
@mixin placeholder {
|
||||
$placeholders: ":-webkit-input" ":-moz" "-moz" "-ms-input";
|
||||
@each $placeholder in $placeholders {
|
||||
&:#{$placeholder}-placeholder {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
}
|
39
docker-persist/html/css/bourbon/css3/_radial-gradient.scss
vendored
Executable file
39
docker-persist/html/css/bourbon/css3/_radial-gradient.scss
vendored
Executable file
@@ -0,0 +1,39 @@
|
||||
// Requires Sass 3.1+
|
||||
@mixin radial-gradient($G1, $G2,
|
||||
$G3: null, $G4: null,
|
||||
$G5: null, $G6: null,
|
||||
$G7: null, $G8: null,
|
||||
$G9: null, $G10: null,
|
||||
$pos: null,
|
||||
$shape-size: null,
|
||||
$fallback: null) {
|
||||
|
||||
$data: _radial-arg-parser($G1, $G2, $pos, $shape-size);
|
||||
$G1: nth($data, 1);
|
||||
$G2: nth($data, 2);
|
||||
$pos: nth($data, 3);
|
||||
$shape-size: nth($data, 4);
|
||||
|
||||
$full: $G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10;
|
||||
|
||||
// Strip deprecated cover/contain for spec
|
||||
$shape-size-spec: _shape-size-stripper($shape-size);
|
||||
|
||||
// Set $G1 as the default fallback color
|
||||
$first-color: nth($full, 1);
|
||||
$fallback-color: nth($first-color, 1);
|
||||
|
||||
@if (type-of($fallback) == color) or ($fallback == "transparent") {
|
||||
$fallback-color: $fallback;
|
||||
}
|
||||
|
||||
// Add Commas and spaces
|
||||
$shape-size: if($shape-size, '#{$shape-size}, ', null);
|
||||
$pos: if($pos, '#{$pos}, ', null);
|
||||
$pos-spec: if($pos, 'at #{$pos}', null);
|
||||
$shape-size-spec: if(($shape-size-spec != ' ') and ($pos == null), '#{$shape-size-spec}, ', '#{$shape-size-spec} ');
|
||||
|
||||
background-color: $fallback-color;
|
||||
background-image: -webkit-radial-gradient(unquote(#{$pos}#{$shape-size}#{$full}));
|
||||
background-image: unquote("radial-gradient(#{$shape-size-spec}#{$pos-spec}#{$full})");
|
||||
}
|
15
docker-persist/html/css/bourbon/css3/_transform.scss
vendored
Executable file
15
docker-persist/html/css/bourbon/css3/_transform.scss
vendored
Executable file
@@ -0,0 +1,15 @@
|
||||
@mixin transform($property: none) {
|
||||
// none | <transform-function>
|
||||
@include prefixer(transform, $property, webkit moz ms o spec);
|
||||
}
|
||||
|
||||
@mixin transform-origin($axes: 50%) {
|
||||
// x-axis - left | center | right | length | %
|
||||
// y-axis - top | center | bottom | length | %
|
||||
// z-axis - length
|
||||
@include prefixer(transform-origin, $axes, webkit moz ms o spec);
|
||||
}
|
||||
|
||||
@mixin transform-style ($style: flat) {
|
||||
@include prefixer(transform-style, $style, webkit moz ms o spec);
|
||||
}
|
77
docker-persist/html/css/bourbon/css3/_transition.scss
vendored
Executable file
77
docker-persist/html/css/bourbon/css3/_transition.scss
vendored
Executable file
@@ -0,0 +1,77 @@
|
||||
// Shorthand mixin. Supports multiple parentheses-deliminated values for each variable.
|
||||
// Example: @include transition (all 2s ease-in-out);
|
||||
// @include transition (opacity 1s ease-in 2s, width 2s ease-out);
|
||||
// @include transition-property (transform, opacity);
|
||||
|
||||
@mixin transition ($properties...) {
|
||||
// Fix for vendor-prefix transform property
|
||||
$needs-prefixes: false;
|
||||
$webkit: ();
|
||||
$moz: ();
|
||||
$spec: ();
|
||||
|
||||
// Create lists for vendor-prefixed transform
|
||||
@each $list in $properties {
|
||||
@if nth($list, 1) == "transform" {
|
||||
$needs-prefixes: true;
|
||||
$list1: -webkit-transform;
|
||||
$list2: -moz-transform;
|
||||
$list3: ();
|
||||
|
||||
@each $var in $list {
|
||||
$list3: join($list3, $var);
|
||||
|
||||
@if $var != "transform" {
|
||||
$list1: join($list1, $var);
|
||||
$list2: join($list2, $var);
|
||||
}
|
||||
}
|
||||
|
||||
$webkit: append($webkit, $list1);
|
||||
$moz: append($moz, $list2);
|
||||
$spec: append($spec, $list3);
|
||||
}
|
||||
|
||||
// Create lists for non-prefixed transition properties
|
||||
@else {
|
||||
$webkit: append($webkit, $list, comma);
|
||||
$moz: append($moz, $list, comma);
|
||||
$spec: append($spec, $list, comma);
|
||||
}
|
||||
}
|
||||
|
||||
@if $needs-prefixes {
|
||||
-webkit-transition: $webkit;
|
||||
-moz-transition: $moz;
|
||||
transition: $spec;
|
||||
}
|
||||
@else {
|
||||
@if length($properties) >= 1 {
|
||||
@include prefixer(transition, $properties, webkit moz spec);
|
||||
}
|
||||
|
||||
@else {
|
||||
$properties: all 0.15s ease-out 0s;
|
||||
@include prefixer(transition, $properties, webkit moz spec);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@mixin transition-property ($properties...) {
|
||||
-webkit-transition-property: transition-property-names($properties, 'webkit');
|
||||
-moz-transition-property: transition-property-names($properties, 'moz');
|
||||
transition-property: transition-property-names($properties, false);
|
||||
}
|
||||
|
||||
@mixin transition-duration ($times...) {
|
||||
@include prefixer(transition-duration, $times, webkit moz spec);
|
||||
}
|
||||
|
||||
@mixin transition-timing-function ($motions...) {
|
||||
// ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier()
|
||||
@include prefixer(transition-timing-function, $motions, webkit moz spec);
|
||||
}
|
||||
|
||||
@mixin transition-delay ($times...) {
|
||||
@include prefixer(transition-delay, $times, webkit moz spec);
|
||||
}
|
3
docker-persist/html/css/bourbon/css3/_user-select.scss
vendored
Executable file
3
docker-persist/html/css/bourbon/css3/_user-select.scss
vendored
Executable file
@@ -0,0 +1,3 @@
|
||||
@mixin user-select($arg: none) {
|
||||
@include prefixer(user-select, $arg, webkit moz ms spec);
|
||||
}
|
11
docker-persist/html/css/bourbon/functions/_assign.scss
vendored
Executable file
11
docker-persist/html/css/bourbon/functions/_assign.scss
vendored
Executable file
@@ -0,0 +1,11 @@
|
||||
@function assign-inputs($inputs, $pseudo: null) {
|
||||
$list : ();
|
||||
|
||||
@each $input in $inputs {
|
||||
$input: unquote($input);
|
||||
$input: if($pseudo, $input + ":" + $pseudo, $input);
|
||||
$list: append($list, $input, comma);
|
||||
}
|
||||
|
||||
@return $list;
|
||||
}
|
13
docker-persist/html/css/bourbon/functions/_color-lightness.scss
vendored
Executable file
13
docker-persist/html/css/bourbon/functions/_color-lightness.scss
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
// Programatically determines whether a color is light or dark
|
||||
// Returns a boolean
|
||||
// More details here http://robots.thoughtbot.com/closer-look-color-lightness
|
||||
|
||||
@function is-light($hex-color) {
|
||||
$-local-red: red(rgba($hex-color, 1.0));
|
||||
$-local-green: green(rgba($hex-color, 1.0));
|
||||
$-local-blue: blue(rgba($hex-color, 1.0));
|
||||
|
||||
$-local-lightness: ($-local-red * 0.2126 + $-local-green * 0.7152 + $-local-blue * 0.0722) / 255;
|
||||
|
||||
@return $-local-lightness > .6;
|
||||
}
|
39
docker-persist/html/css/bourbon/functions/_flex-grid.scss
vendored
Executable file
39
docker-persist/html/css/bourbon/functions/_flex-grid.scss
vendored
Executable file
@@ -0,0 +1,39 @@
|
||||
// Flexible grid
|
||||
@function flex-grid($columns, $container-columns: $fg-max-columns) {
|
||||
$width: $columns * $fg-column + ($columns - 1) * $fg-gutter;
|
||||
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
|
||||
@return percentage($width / $container-width);
|
||||
}
|
||||
|
||||
// Flexible gutter
|
||||
@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) {
|
||||
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
|
||||
@return percentage($gutter / $container-width);
|
||||
}
|
||||
|
||||
// The $fg-column, $fg-gutter and $fg-max-columns variables must be defined in your base stylesheet to properly use the flex-grid function.
|
||||
// This function takes the fluid grid equation (target / context = result) and uses columns to help define each.
|
||||
//
|
||||
// The calculation presumes that your column structure will be missing the last gutter:
|
||||
//
|
||||
// -- column -- gutter -- column -- gutter -- column
|
||||
//
|
||||
// $fg-column: 60px; // Column Width
|
||||
// $fg-gutter: 25px; // Gutter Width
|
||||
// $fg-max-columns: 12; // Total Columns For Main Container
|
||||
//
|
||||
// div {
|
||||
// width: flex-grid(4); // returns (315px / 995px) = 31.65829%;
|
||||
// margin-left: flex-gutter(); // returns (25px / 995px) = 2.51256%;
|
||||
//
|
||||
// p {
|
||||
// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%;
|
||||
// float: left;
|
||||
// margin: flex-gutter(4); // returns (25px / 315px) = 7.936508%;
|
||||
// }
|
||||
//
|
||||
// blockquote {
|
||||
// float: left;
|
||||
// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%;
|
||||
// }
|
||||
// }
|
3
docker-persist/html/css/bourbon/functions/_golden-ratio.scss
vendored
Executable file
3
docker-persist/html/css/bourbon/functions/_golden-ratio.scss
vendored
Executable file
@@ -0,0 +1,3 @@
|
||||
@function golden-ratio($value, $increment) {
|
||||
@return modular-scale($value, $increment, $golden)
|
||||
}
|
13
docker-persist/html/css/bourbon/functions/_grid-width.scss
vendored
Executable file
13
docker-persist/html/css/bourbon/functions/_grid-width.scss
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
@function grid-width($n) {
|
||||
@return $n * $gw-column + ($n - 1) * $gw-gutter;
|
||||
}
|
||||
|
||||
// The $gw-column and $gw-gutter variables must be defined in your base stylesheet to properly use the grid-width function.
|
||||
//
|
||||
// $gw-column: 100px; // Column Width
|
||||
// $gw-gutter: 40px; // Gutter Width
|
||||
//
|
||||
// div {
|
||||
// width: grid-width(4); // returns 520px;
|
||||
// margin-left: $gw-gutter; // returns 40px;
|
||||
// }
|
66
docker-persist/html/css/bourbon/functions/_modular-scale.scss
vendored
Executable file
66
docker-persist/html/css/bourbon/functions/_modular-scale.scss
vendored
Executable file
@@ -0,0 +1,66 @@
|
||||
// Scaling Variables
|
||||
$golden: 1.618;
|
||||
$minor-second: 1.067;
|
||||
$major-second: 1.125;
|
||||
$minor-third: 1.2;
|
||||
$major-third: 1.25;
|
||||
$perfect-fourth: 1.333;
|
||||
$augmented-fourth: 1.414;
|
||||
$perfect-fifth: 1.5;
|
||||
$minor-sixth: 1.6;
|
||||
$major-sixth: 1.667;
|
||||
$minor-seventh: 1.778;
|
||||
$major-seventh: 1.875;
|
||||
$octave: 2;
|
||||
$major-tenth: 2.5;
|
||||
$major-eleventh: 2.667;
|
||||
$major-twelfth: 3;
|
||||
$double-octave: 4;
|
||||
|
||||
@function modular-scale($value, $increment, $ratio) {
|
||||
$v1: nth($value, 1);
|
||||
$v2: nth($value, length($value));
|
||||
$value: $v1;
|
||||
|
||||
// scale $v2 to just above $v1
|
||||
@while $v2 > $v1 {
|
||||
$v2: ($v2 / $ratio); // will be off-by-1
|
||||
}
|
||||
@while $v2 < $v1 {
|
||||
$v2: ($v2 * $ratio); // will fix off-by-1
|
||||
}
|
||||
|
||||
// check AFTER scaling $v2 to prevent double-counting corner-case
|
||||
$double-stranded: $v2 > $v1;
|
||||
|
||||
@if $increment > 0 {
|
||||
@for $i from 1 through $increment {
|
||||
@if $double-stranded and ($v1 * $ratio) > $v2 {
|
||||
$value: $v2;
|
||||
$v2: ($v2 * $ratio);
|
||||
} @else {
|
||||
$v1: ($v1 * $ratio);
|
||||
$value: $v1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if $increment < 0 {
|
||||
// adjust $v2 to just below $v1
|
||||
@if $double-stranded {
|
||||
$v2: ($v2 / $ratio);
|
||||
}
|
||||
|
||||
@for $i from $increment through -1 {
|
||||
@if $double-stranded and ($v1 / $ratio) < $v2 {
|
||||
$value: $v2;
|
||||
$v2: ($v2 / $ratio);
|
||||
} @else {
|
||||
$v1: ($v1 / $ratio);
|
||||
$value: $v1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@return $value;
|
||||
}
|
13
docker-persist/html/css/bourbon/functions/_px-to-em.scss
vendored
Executable file
13
docker-persist/html/css/bourbon/functions/_px-to-em.scss
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
// Convert pixels to ems
|
||||
// eg. for a relational value of 12px write em(12) when the parent is 16px
|
||||
// if the parent is another value say 24px write em(12, 24)
|
||||
|
||||
@function em($pxval, $base: $em-base) {
|
||||
@if not unitless($pxval) {
|
||||
$pxval: strip-units($pxval);
|
||||
}
|
||||
@if not unitless($base) {
|
||||
$base: strip-units($base);
|
||||
}
|
||||
@return ($pxval / $base) * 1em;
|
||||
}
|
15
docker-persist/html/css/bourbon/functions/_px-to-rem.scss
vendored
Executable file
15
docker-persist/html/css/bourbon/functions/_px-to-rem.scss
vendored
Executable file
@@ -0,0 +1,15 @@
|
||||
// Convert pixels to rems
|
||||
// eg. for a relational value of 12px write rem(12)
|
||||
// Assumes $em-base is the font-size of <html>
|
||||
|
||||
@function rem($pxval) {
|
||||
@if not unitless($pxval) {
|
||||
$pxval: strip-units($pxval);
|
||||
}
|
||||
|
||||
$base: $em-base;
|
||||
@if not unitless($base) {
|
||||
$base: strip-units($base);
|
||||
}
|
||||
@return ($pxval / $base) * 1rem;
|
||||
}
|
5
docker-persist/html/css/bourbon/functions/_strip-units.scss
vendored
Executable file
5
docker-persist/html/css/bourbon/functions/_strip-units.scss
vendored
Executable file
@@ -0,0 +1,5 @@
|
||||
// Srtips the units from a value. e.g. 12px -> 12
|
||||
|
||||
@function strip-units($val) {
|
||||
@return ($val / ($val * 0 + 1));
|
||||
}
|
9
docker-persist/html/css/bourbon/functions/_tint-shade.scss
vendored
Executable file
9
docker-persist/html/css/bourbon/functions/_tint-shade.scss
vendored
Executable file
@@ -0,0 +1,9 @@
|
||||
// Add percentage of white to a color
|
||||
@function tint($color, $percent){
|
||||
@return mix(white, $color, $percent);
|
||||
}
|
||||
|
||||
// Add percentage of black to a color
|
||||
@function shade($color, $percent){
|
||||
@return mix(black, $color, $percent);
|
||||
}
|
22
docker-persist/html/css/bourbon/functions/_transition-property-name.scss
vendored
Executable file
22
docker-persist/html/css/bourbon/functions/_transition-property-name.scss
vendored
Executable file
@@ -0,0 +1,22 @@
|
||||
// Return vendor-prefixed property names if appropriate
|
||||
// Example: transition-property-names((transform, color, background), moz) -> -moz-transform, color, background
|
||||
//************************************************************************//
|
||||
@function transition-property-names($props, $vendor: false) {
|
||||
$new-props: ();
|
||||
|
||||
@each $prop in $props {
|
||||
$new-props: append($new-props, transition-property-name($prop, $vendor), comma);
|
||||
}
|
||||
|
||||
@return $new-props;
|
||||
}
|
||||
|
||||
@function transition-property-name($prop, $vendor: false) {
|
||||
// put other properties that need to be prefixed here aswell
|
||||
@if $vendor and $prop == transform {
|
||||
@return unquote('-'+$vendor+'-'+$prop);
|
||||
}
|
||||
@else {
|
||||
@return $prop;
|
||||
}
|
||||
}
|
17
docker-persist/html/css/bourbon/functions/_unpack.scss
vendored
Executable file
17
docker-persist/html/css/bourbon/functions/_unpack.scss
vendored
Executable file
@@ -0,0 +1,17 @@
|
||||
// Convert shorthand to the 4-value syntax
|
||||
|
||||
@function unpack($shorthand) {
|
||||
@if length($shorthand) == 1 {
|
||||
@return nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1) nth($shorthand, 1);
|
||||
}
|
||||
@else if length($shorthand) == 2 {
|
||||
@return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 1) nth($shorthand, 2);
|
||||
}
|
||||
@else if length($shorthand) == 3 {
|
||||
@return nth($shorthand, 1) nth($shorthand, 2) nth($shorthand, 3) nth($shorthand, 2);
|
||||
}
|
||||
@else {
|
||||
@return $shorthand;
|
||||
}
|
||||
}
|
||||
|
15
docker-persist/html/css/bourbon/helpers/_convert-units.scss
vendored
Executable file
15
docker-persist/html/css/bourbon/helpers/_convert-units.scss
vendored
Executable file
@@ -0,0 +1,15 @@
|
||||
//************************************************************************//
|
||||
// Helper function for str-to-num fn.
|
||||
// Source: http://sassmeister.com/gist/9647408
|
||||
//************************************************************************//
|
||||
@function _convert-units($number, $unit) {
|
||||
$strings: 'px' 'cm' 'mm' '%' 'ch' 'pica' 'in' 'em' 'rem' 'pt' 'pc' 'ex' 'vw' 'vh' 'vmin' 'vmax', 'deg', 'rad', 'grad', 'turn';
|
||||
$units: 1px 1cm 1mm 1% 1ch 1pica 1in 1em 1rem 1pt 1pc 1ex 1vw 1vh 1vmin 1vmax, 1deg, 1rad, 1grad, 1turn;
|
||||
$index: index($strings, $unit);
|
||||
|
||||
@if not $index {
|
||||
@warn "Unknown unit `#{$unit}`.";
|
||||
@return false;
|
||||
}
|
||||
@return $number * nth($units, $index);
|
||||
}
|
13
docker-persist/html/css/bourbon/helpers/_gradient-positions-parser.scss
vendored
Executable file
13
docker-persist/html/css/bourbon/helpers/_gradient-positions-parser.scss
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
@function _gradient-positions-parser($gradient-type, $gradient-positions) {
|
||||
@if $gradient-positions
|
||||
and ($gradient-type == linear)
|
||||
and (type-of($gradient-positions) != color) {
|
||||
$gradient-positions: _linear-positions-parser($gradient-positions);
|
||||
}
|
||||
@else if $gradient-positions
|
||||
and ($gradient-type == radial)
|
||||
and (type-of($gradient-positions) != color) {
|
||||
$gradient-positions: _radial-positions-parser($gradient-positions);
|
||||
}
|
||||
@return $gradient-positions;
|
||||
}
|
8
docker-persist/html/css/bourbon/helpers/_is-num.scss
vendored
Executable file
8
docker-persist/html/css/bourbon/helpers/_is-num.scss
vendored
Executable file
@@ -0,0 +1,8 @@
|
||||
//************************************************************************//
|
||||
// Helper for linear-gradient-parser
|
||||
//************************************************************************//
|
||||
@function _is-num($char) {
|
||||
$values: '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' 0 1 2 3 4 5 6 7 8 9;
|
||||
$index: index($values, $char);
|
||||
@return if($index, true, false);
|
||||
}
|
25
docker-persist/html/css/bourbon/helpers/_linear-angle-parser.scss
vendored
Executable file
25
docker-persist/html/css/bourbon/helpers/_linear-angle-parser.scss
vendored
Executable file
@@ -0,0 +1,25 @@
|
||||
// Private function for linear-gradient-parser
|
||||
@function _linear-angle-parser($image, $first-val, $prefix, $suffix) {
|
||||
$offset: null;
|
||||
$unit-short: str-slice($first-val, str-length($first-val) - 2, str-length($first-val));
|
||||
$unit-long: str-slice($first-val, str-length($first-val) - 3, str-length($first-val));
|
||||
|
||||
@if ($unit-long == "grad") or
|
||||
($unit-long == "turn") {
|
||||
$offset: if($unit-long == "grad", -100grad * 3, -0.75turn);
|
||||
}
|
||||
|
||||
@else if ($unit-short == "deg") or
|
||||
($unit-short == "rad") {
|
||||
$offset: if($unit-short == "deg", -90 * 3, 1.6rad);
|
||||
}
|
||||
|
||||
@if $offset {
|
||||
$num: _str-to-num($first-val);
|
||||
|
||||
@return (
|
||||
webkit-image: -webkit- + $prefix + ($offset - $num) + $suffix,
|
||||
spec-image: $image
|
||||
);
|
||||
}
|
||||
}
|
41
docker-persist/html/css/bourbon/helpers/_linear-gradient-parser.scss
vendored
Executable file
41
docker-persist/html/css/bourbon/helpers/_linear-gradient-parser.scss
vendored
Executable file
@@ -0,0 +1,41 @@
|
||||
@function _linear-gradient-parser($image) {
|
||||
$image: unquote($image);
|
||||
$gradients: ();
|
||||
$start: str-index($image, "(");
|
||||
$end: str-index($image, ",");
|
||||
$first-val: str-slice($image, $start + 1, $end - 1);
|
||||
|
||||
$prefix: str-slice($image, 0, $start);
|
||||
$suffix: str-slice($image, $end, str-length($image));
|
||||
|
||||
$has-multiple-vals: str-index($first-val, " ");
|
||||
$has-single-position: unquote(_position-flipper($first-val) + "");
|
||||
$has-angle: _is-num(str-slice($first-val, 0, 0));
|
||||
|
||||
@if $has-multiple-vals {
|
||||
$gradients: _linear-side-corner-parser($image, $first-val, $prefix, $suffix, $has-multiple-vals);
|
||||
}
|
||||
|
||||
@else if $has-single-position != "" {
|
||||
$pos: unquote($has-single-position + "");
|
||||
|
||||
$gradients: (
|
||||
webkit-image: -webkit- + $image,
|
||||
spec-image: $prefix + "to " + $pos + $suffix
|
||||
);
|
||||
}
|
||||
|
||||
@else if $has-angle {
|
||||
// Rotate degree for webkit
|
||||
$gradients: _linear-angle-parser($image, $first-val, $prefix, $suffix);
|
||||
}
|
||||
|
||||
@else {
|
||||
$gradients: (
|
||||
webkit-image: -webkit- + $image,
|
||||
spec-image: $image
|
||||
);
|
||||
}
|
||||
|
||||
@return $gradients;
|
||||
}
|
61
docker-persist/html/css/bourbon/helpers/_linear-positions-parser.scss
vendored
Executable file
61
docker-persist/html/css/bourbon/helpers/_linear-positions-parser.scss
vendored
Executable file
@@ -0,0 +1,61 @@
|
||||
@function _linear-positions-parser($pos) {
|
||||
$type: type-of(nth($pos, 1));
|
||||
$spec: null;
|
||||
$degree: null;
|
||||
$side: null;
|
||||
$corner: null;
|
||||
$length: length($pos);
|
||||
// Parse Side and corner positions
|
||||
@if ($length > 1) {
|
||||
@if nth($pos, 1) == "to" { // Newer syntax
|
||||
$side: nth($pos, 2);
|
||||
|
||||
@if $length == 2 { // eg. to top
|
||||
// Swap for backwards compatability
|
||||
$degree: _position-flipper(nth($pos, 2));
|
||||
}
|
||||
@else if $length == 3 { // eg. to top left
|
||||
$corner: nth($pos, 3);
|
||||
}
|
||||
}
|
||||
@else if $length == 2 { // Older syntax ("top left")
|
||||
$side: _position-flipper(nth($pos, 1));
|
||||
$corner: _position-flipper(nth($pos, 2));
|
||||
}
|
||||
|
||||
@if ("#{$side} #{$corner}" == "left top") or ("#{$side} #{$corner}" == "top left") {
|
||||
$degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
|
||||
}
|
||||
@else if ("#{$side} #{$corner}" == "right top") or ("#{$side} #{$corner}" == "top right") {
|
||||
$degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
|
||||
}
|
||||
@else if ("#{$side} #{$corner}" == "right bottom") or ("#{$side} #{$corner}" == "bottom right") {
|
||||
$degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
|
||||
}
|
||||
@else if ("#{$side} #{$corner}" == "left bottom") or ("#{$side} #{$corner}" == "bottom left") {
|
||||
$degree: _position-flipper(#{$side}) _position-flipper(#{$corner});
|
||||
}
|
||||
$spec: to $side $corner;
|
||||
}
|
||||
@else if $length == 1 {
|
||||
// Swap for backwards compatability
|
||||
@if $type == string {
|
||||
$degree: $pos;
|
||||
$spec: to _position-flipper($pos);
|
||||
}
|
||||
@else {
|
||||
$degree: -270 - $pos; //rotate the gradient opposite from spec
|
||||
$spec: $pos;
|
||||
}
|
||||
}
|
||||
$degree: unquote($degree + ",");
|
||||
$spec: unquote($spec + ",");
|
||||
@return $degree $spec;
|
||||
}
|
||||
|
||||
@function _position-flipper($pos) {
|
||||
@return if($pos == left, right, null)
|
||||
if($pos == right, left, null)
|
||||
if($pos == top, bottom, null)
|
||||
if($pos == bottom, top, null);
|
||||
}
|
31
docker-persist/html/css/bourbon/helpers/_linear-side-corner-parser.scss
vendored
Executable file
31
docker-persist/html/css/bourbon/helpers/_linear-side-corner-parser.scss
vendored
Executable file
@@ -0,0 +1,31 @@
|
||||
// Private function for linear-gradient-parser
|
||||
@function _linear-side-corner-parser($image, $first-val, $prefix, $suffix, $has-multiple-vals) {
|
||||
$val-1: str-slice($first-val, 0, $has-multiple-vals - 1 );
|
||||
$val-2: str-slice($first-val, $has-multiple-vals + 1, str-length($first-val));
|
||||
$val-3: null;
|
||||
$has-val-3: str-index($val-2, " ");
|
||||
|
||||
@if $has-val-3 {
|
||||
$val-3: str-slice($val-2, $has-val-3 + 1, str-length($val-2));
|
||||
$val-2: str-slice($val-2, 0, $has-val-3 - 1);
|
||||
}
|
||||
|
||||
$pos: _position-flipper($val-1) _position-flipper($val-2) _position-flipper($val-3);
|
||||
$pos: unquote($pos + "");
|
||||
|
||||
// Use old spec for webkit
|
||||
@if $val-1 == "to" {
|
||||
@return (
|
||||
webkit-image: -webkit- + $prefix + $pos + $suffix,
|
||||
spec-image: $image
|
||||
);
|
||||
}
|
||||
|
||||
// Bring the code up to spec
|
||||
@else {
|
||||
@return (
|
||||
webkit-image: -webkit- + $image,
|
||||
spec-image: $prefix + "to " + $pos + $suffix
|
||||
);
|
||||
}
|
||||
}
|
69
docker-persist/html/css/bourbon/helpers/_radial-arg-parser.scss
vendored
Executable file
69
docker-persist/html/css/bourbon/helpers/_radial-arg-parser.scss
vendored
Executable file
@@ -0,0 +1,69 @@
|
||||
@function _radial-arg-parser($G1, $G2, $pos, $shape-size) {
|
||||
@each $value in $G1, $G2 {
|
||||
$first-val: nth($value, 1);
|
||||
$pos-type: type-of($first-val);
|
||||
$spec-at-index: null;
|
||||
|
||||
// Determine if spec was passed to mixin
|
||||
@if type-of($value) == list {
|
||||
$spec-at-index: if(index($value, at), index($value, at), false);
|
||||
}
|
||||
@if $spec-at-index {
|
||||
@if $spec-at-index > 1 {
|
||||
@for $i from 1 through ($spec-at-index - 1) {
|
||||
$shape-size: $shape-size nth($value, $i);
|
||||
}
|
||||
@for $i from ($spec-at-index + 1) through length($value) {
|
||||
$pos: $pos nth($value, $i);
|
||||
}
|
||||
}
|
||||
@else if $spec-at-index == 1 {
|
||||
@for $i from ($spec-at-index + 1) through length($value) {
|
||||
$pos: $pos nth($value, $i);
|
||||
}
|
||||
}
|
||||
$G1: null;
|
||||
}
|
||||
|
||||
// If not spec calculate correct values
|
||||
@else {
|
||||
@if ($pos-type != color) or ($first-val != "transparent") {
|
||||
@if ($pos-type == number)
|
||||
or ($first-val == "center")
|
||||
or ($first-val == "top")
|
||||
or ($first-val == "right")
|
||||
or ($first-val == "bottom")
|
||||
or ($first-val == "left") {
|
||||
|
||||
$pos: $value;
|
||||
|
||||
@if $pos == $G1 {
|
||||
$G1: null;
|
||||
}
|
||||
}
|
||||
|
||||
@else if
|
||||
($first-val == "ellipse")
|
||||
or ($first-val == "circle")
|
||||
or ($first-val == "closest-side")
|
||||
or ($first-val == "closest-corner")
|
||||
or ($first-val == "farthest-side")
|
||||
or ($first-val == "farthest-corner")
|
||||
or ($first-val == "contain")
|
||||
or ($first-val == "cover") {
|
||||
|
||||
$shape-size: $value;
|
||||
|
||||
@if $value == $G1 {
|
||||
$G1: null;
|
||||
}
|
||||
|
||||
@else if $value == $G2 {
|
||||
$G2: null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@return $G1, $G2, $pos, $shape-size;
|
||||
}
|
50
docker-persist/html/css/bourbon/helpers/_radial-gradient-parser.scss
vendored
Executable file
50
docker-persist/html/css/bourbon/helpers/_radial-gradient-parser.scss
vendored
Executable file
@@ -0,0 +1,50 @@
|
||||
@function _radial-gradient-parser($image) {
|
||||
$image: unquote($image);
|
||||
$gradients: ();
|
||||
$start: str-index($image, "(");
|
||||
$end: str-index($image, ",");
|
||||
$first-val: str-slice($image, $start + 1, $end - 1);
|
||||
|
||||
$prefix: str-slice($image, 0, $start);
|
||||
$suffix: str-slice($image, $end, str-length($image));
|
||||
|
||||
$is-spec-syntax: str-index($first-val, "at");
|
||||
|
||||
@if $is-spec-syntax and $is-spec-syntax > 1 {
|
||||
$keyword: str-slice($first-val, 1, $is-spec-syntax - 2);
|
||||
$pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val));
|
||||
$pos: append($pos, $keyword, comma);
|
||||
|
||||
$gradients: (
|
||||
webkit-image: -webkit- + $prefix + $pos + $suffix,
|
||||
spec-image: $image
|
||||
)
|
||||
}
|
||||
|
||||
@else if $is-spec-syntax == 1 {
|
||||
$pos: str-slice($first-val, $is-spec-syntax + 3, str-length($first-val));
|
||||
|
||||
$gradients: (
|
||||
webkit-image: -webkit- + $prefix + $pos + $suffix,
|
||||
spec-image: $image
|
||||
)
|
||||
}
|
||||
|
||||
@else if str-index($image, "cover") or str-index($image, "contain") {
|
||||
@warn "Radial-gradient needs to be updated to conform to latest spec.";
|
||||
|
||||
$gradients: (
|
||||
webkit-image: null,
|
||||
spec-image: $image
|
||||
)
|
||||
}
|
||||
|
||||
@else {
|
||||
$gradients: (
|
||||
webkit-image: -webkit- + $image,
|
||||
spec-image: $image
|
||||
)
|
||||
}
|
||||
|
||||
@return $gradients;
|
||||
}
|
18
docker-persist/html/css/bourbon/helpers/_radial-positions-parser.scss
vendored
Executable file
18
docker-persist/html/css/bourbon/helpers/_radial-positions-parser.scss
vendored
Executable file
@@ -0,0 +1,18 @@
|
||||
@function _radial-positions-parser($gradient-pos) {
|
||||
$shape-size: nth($gradient-pos, 1);
|
||||
$pos: nth($gradient-pos, 2);
|
||||
$shape-size-spec: _shape-size-stripper($shape-size);
|
||||
|
||||
$pre-spec: unquote(if($pos, "#{$pos}, ", null))
|
||||
unquote(if($shape-size, "#{$shape-size},", null));
|
||||
$pos-spec: if($pos, "at #{$pos}", null);
|
||||
|
||||
$spec: "#{$shape-size-spec} #{$pos-spec}";
|
||||
|
||||
// Add comma
|
||||
@if ($spec != ' ') {
|
||||
$spec: "#{$spec},"
|
||||
}
|
||||
|
||||
@return $pre-spec $spec;
|
||||
}
|
26
docker-persist/html/css/bourbon/helpers/_render-gradients.scss
vendored
Executable file
26
docker-persist/html/css/bourbon/helpers/_render-gradients.scss
vendored
Executable file
@@ -0,0 +1,26 @@
|
||||
// User for linear and radial gradients within background-image or border-image properties
|
||||
|
||||
@function _render-gradients($gradient-positions, $gradients, $gradient-type, $vendor: false) {
|
||||
$pre-spec: null;
|
||||
$spec: null;
|
||||
$vendor-gradients: null;
|
||||
@if $gradient-type == linear {
|
||||
@if $gradient-positions {
|
||||
$pre-spec: nth($gradient-positions, 1);
|
||||
$spec: nth($gradient-positions, 2);
|
||||
}
|
||||
}
|
||||
@else if $gradient-type == radial {
|
||||
$pre-spec: nth($gradient-positions, 1);
|
||||
$spec: nth($gradient-positions, 2);
|
||||
}
|
||||
|
||||
@if $vendor {
|
||||
$vendor-gradients: -#{$vendor}-#{$gradient-type}-gradient(#{$pre-spec} $gradients);
|
||||
}
|
||||
@else if $vendor == false {
|
||||
$vendor-gradients: "#{$gradient-type}-gradient(#{$spec} #{$gradients})";
|
||||
$vendor-gradients: unquote($vendor-gradients);
|
||||
}
|
||||
@return $vendor-gradients;
|
||||
}
|
10
docker-persist/html/css/bourbon/helpers/_shape-size-stripper.scss
vendored
Executable file
10
docker-persist/html/css/bourbon/helpers/_shape-size-stripper.scss
vendored
Executable file
@@ -0,0 +1,10 @@
|
||||
@function _shape-size-stripper($shape-size) {
|
||||
$shape-size-spec: null;
|
||||
@each $value in $shape-size {
|
||||
@if ($value == "cover") or ($value == "contain") {
|
||||
$value: null;
|
||||
}
|
||||
$shape-size-spec: "#{$shape-size-spec} #{$value}";
|
||||
}
|
||||
@return $shape-size-spec;
|
||||
}
|
50
docker-persist/html/css/bourbon/helpers/_str-to-num.scss
vendored
Executable file
50
docker-persist/html/css/bourbon/helpers/_str-to-num.scss
vendored
Executable file
@@ -0,0 +1,50 @@
|
||||
//************************************************************************//
|
||||
// Helper function for linear/radial-gradient-parsers.
|
||||
// Source: http://sassmeister.com/gist/9647408
|
||||
//************************************************************************//
|
||||
@function _str-to-num($string) {
|
||||
// Matrices
|
||||
$strings: '0' '1' '2' '3' '4' '5' '6' '7' '8' '9';
|
||||
$numbers: 0 1 2 3 4 5 6 7 8 9;
|
||||
|
||||
// Result
|
||||
$result: 0;
|
||||
$divider: 0;
|
||||
$minus: false;
|
||||
|
||||
// Looping through all characters
|
||||
@for $i from 1 through str-length($string) {
|
||||
$character: str-slice($string, $i, $i);
|
||||
$index: index($strings, $character);
|
||||
|
||||
@if $character == '-' {
|
||||
$minus: true;
|
||||
}
|
||||
|
||||
@else if $character == '.' {
|
||||
$divider: 1;
|
||||
}
|
||||
|
||||
@else {
|
||||
@if not $index {
|
||||
$result: if($minus, $result * -1, $result);
|
||||
@return _convert-units($result, str-slice($string, $i));
|
||||
}
|
||||
|
||||
$number: nth($numbers, $index);
|
||||
|
||||
@if $divider == 0 {
|
||||
$result: $result * 10;
|
||||
}
|
||||
|
||||
@else {
|
||||
// Move the decimal dot to the left
|
||||
$divider: $divider * 10;
|
||||
$number: $number / $divider;
|
||||
}
|
||||
|
||||
$result: $result + $number;
|
||||
}
|
||||
}
|
||||
@return if($minus, $result * -1, $result);
|
||||
}
|
1
docker-persist/html/css/bourbon/settings/_asset-pipeline.scss
vendored
Executable file
1
docker-persist/html/css/bourbon/settings/_asset-pipeline.scss
vendored
Executable file
@@ -0,0 +1 @@
|
||||
$asset-pipeline: false !default;
|
6
docker-persist/html/css/bourbon/settings/_prefixer.scss
vendored
Executable file
6
docker-persist/html/css/bourbon/settings/_prefixer.scss
vendored
Executable file
@@ -0,0 +1,6 @@
|
||||
// Variable settings for /addons/prefixer.scss
|
||||
$prefix-for-webkit: true !default;
|
||||
$prefix-for-mozilla: true !default;
|
||||
$prefix-for-microsoft: true !default;
|
||||
$prefix-for-opera: true !default;
|
||||
$prefix-for-spec: true !default; // required for keyframe mixin
|
1
docker-persist/html/css/bourbon/settings/_px-to-em.scss
vendored
Executable file
1
docker-persist/html/css/bourbon/settings/_px-to-em.scss
vendored
Executable file
@@ -0,0 +1 @@
|
||||
$em-base: 16px !default;
|
122
docker-persist/html/css/enlarge.css
Executable file
122
docker-persist/html/css/enlarge.css
Executable file
@@ -0,0 +1,122 @@
|
||||
/*Eliminates padding, centers the thumbnail */
|
||||
|
||||
body, html {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Styles the thumbnail */
|
||||
|
||||
a.lightbox img {
|
||||
height: 150px;
|
||||
border: 3px solid white;
|
||||
box-shadow: 0px 0px 8px rgba(0,0,0,.3);
|
||||
margin: 94px 20px 20px 20px;
|
||||
}
|
||||
|
||||
/* Styles the lightbox, removes it from sight and adds the fade-in transition */
|
||||
|
||||
.lightbox-target {
|
||||
position: fixed;
|
||||
top: -100%;
|
||||
width: 100%;
|
||||
background: rgba(0,0,0,.7);
|
||||
width: 100%;
|
||||
opacity: 0;
|
||||
-webkit-transition: opacity .5s ease-in-out;
|
||||
-moz-transition: opacity .5s ease-in-out;
|
||||
-o-transition: opacity .5s ease-in-out;
|
||||
transition: opacity .5s ease-in-out;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Styles the lightbox image, centers it vertically and horizontally, adds the zoom-in transition and makes it responsive using a combination of margin and absolute positioning */
|
||||
|
||||
.lightbox-target img {
|
||||
margin: auto;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left:0;
|
||||
right:0;
|
||||
bottom: 0;
|
||||
max-height: 0%;
|
||||
max-width: 0%;
|
||||
border: 3px solid white;
|
||||
box-shadow: 0px 0px 8px rgba(0,0,0,.3);
|
||||
box-sizing: border-box;
|
||||
-webkit-transition: .5s ease-in-out;
|
||||
-moz-transition: .5s ease-in-out;
|
||||
-o-transition: .5s ease-in-out;
|
||||
transition: .5s ease-in-out;
|
||||
}
|
||||
|
||||
/* Styles the close link, adds the slide down transition */
|
||||
|
||||
a.lightbox-close {
|
||||
display: block;
|
||||
width:50px;
|
||||
height:50px;
|
||||
box-sizing: border-box;
|
||||
background: white;
|
||||
color: black;
|
||||
text-decoration: none;
|
||||
position: absolute;
|
||||
top: -80px;
|
||||
right: 0;
|
||||
-webkit-transition: .5s ease-in-out;
|
||||
-moz-transition: .5s ease-in-out;
|
||||
-o-transition: .5s ease-in-out;
|
||||
transition: .5s ease-in-out;
|
||||
}
|
||||
|
||||
/* Provides part of the "X" to eliminate an image from the close link */
|
||||
|
||||
a.lightbox-close:before {
|
||||
content: "";
|
||||
display: block;
|
||||
height: 30px;
|
||||
width: 1px;
|
||||
background: black;
|
||||
position: absolute;
|
||||
left: 26px;
|
||||
top:10px;
|
||||
-webkit-transform:rotate(45deg);
|
||||
-moz-transform:rotate(45deg);
|
||||
-o-transform:rotate(45deg);
|
||||
transform:rotate(45deg);
|
||||
}
|
||||
|
||||
/* Provides part of the "X" to eliminate an image from the close link */
|
||||
|
||||
a.lightbox-close:after {
|
||||
content: "";
|
||||
display: block;
|
||||
height: 30px;
|
||||
width: 1px;
|
||||
background: black;
|
||||
position: absolute;
|
||||
left: 26px;
|
||||
top:10px;
|
||||
-webkit-transform:rotate(-45deg);
|
||||
-moz-transform:rotate(-45deg);
|
||||
-o-transform:rotate(-45deg);
|
||||
transform:rotate(-45deg);
|
||||
}
|
||||
|
||||
/* Uses the :target pseudo-class to perform the animations upon clicking the .lightbox-target anchor */
|
||||
|
||||
.lightbox-target:target {
|
||||
opacity: 1;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
.lightbox-target:target img {
|
||||
max-height: 100%;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.lightbox-target:target a.lightbox-close {
|
||||
top: 0px;
|
||||
}
|
651
docker-persist/html/css/main.css
Executable file
651
docker-persist/html/css/main.css
Executable file
@@ -0,0 +1,651 @@
|
||||
html, body, div, span, object, iframe,
|
||||
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
||||
abbr, address, cite, code,
|
||||
del, dfn, em, img, ins, kbd, q, samp,
|
||||
small, strong, sub, sup, var,
|
||||
b, i,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td,
|
||||
article, aside, canvas, details, figcaption, figure,
|
||||
footer, header, hgroup, menu, nav, section, summary,
|
||||
time, mark, audio, video {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
vertical-align: baseline;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
html, body {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
audio, canvas, video {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
[hidden] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
|
||||
html, button, input, select, textarea {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
a:focus {
|
||||
outline: thin dotted;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
a:hover, a:active {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: 1px dotted;
|
||||
}
|
||||
|
||||
b, strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin: 1em 40px;
|
||||
}
|
||||
|
||||
dfn {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
mark {
|
||||
background: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
pre, code, kbd, samp {
|
||||
font-family: monospace, serif;
|
||||
_font-family: 'courier new', monospace;
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
pre {
|
||||
white-space: pre;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
blockquote, q {
|
||||
quotes: none;
|
||||
}
|
||||
blockquote:before, blockquote:after, q:before, q:after {
|
||||
content: '';
|
||||
content: none;
|
||||
}
|
||||
|
||||
small {
|
||||
font-size: 75%;
|
||||
}
|
||||
|
||||
sub, sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
nav ul, nav ol {
|
||||
list-style: none;
|
||||
list-style-image: none;
|
||||
}
|
||||
|
||||
img {
|
||||
border: 0;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
-ms-interpolation-mode: bicubic;
|
||||
}
|
||||
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border: 1px solid #c0c0c0;
|
||||
margin: 0 2px;
|
||||
padding: 0.35em 0.625em 0.75em;
|
||||
}
|
||||
|
||||
legend {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
button, input, select, textarea {
|
||||
font-size: 100%;
|
||||
margin: 0;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
button, input {
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
button, input[type="button"], input[type="reset"], input[type="submit"] {
|
||||
cursor: pointer;
|
||||
-webkit-appearance: button;
|
||||
}
|
||||
|
||||
button[disabled], input[disabled] {
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
input[type="checkbox"], input[type="radio"] {
|
||||
box-sizing: border-box;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
-webkit-appearance: textfield;
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
}
|
||||
|
||||
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
button::-moz-focus-inner, input::-moz-focus-inner {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
textarea {
|
||||
overflow: auto;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
/* Neat 1.7.0
|
||||
* http://neat.bourbon.io
|
||||
* Copyright 2012-2014 thoughtbot, inc.
|
||||
* MIT License */
|
||||
html {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
*, *:before, *:after {
|
||||
-webkit-box-sizing: inherit;
|
||||
-moz-box-sizing: inherit;
|
||||
box-sizing: inherit;
|
||||
}
|
||||
|
||||
body {
|
||||
-webkit-font-feature-settings: "kern", "liga" ,"pnum";
|
||||
-moz-font-feature-settings: "kern", "liga","pnum";
|
||||
-ms-font-feature-settings: "kern", "liga", "pnum";
|
||||
font-feature-settings: "kern", "liga", "pnum";
|
||||
-webkit-font-smoothing: antialiased;
|
||||
text-rendering: optimizeLegibility;
|
||||
background-color: #22272a;
|
||||
color: #ced9e0;
|
||||
font-family: "font-family: " Helvetica Neue ",Helvetica,Arial,sans-serif";
|
||||
font-size: 1em;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-family: "font-family: " Helvetica Neue ",Helvetica,Arial,sans-serif";
|
||||
line-height: 1.25;
|
||||
margin: 0;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.25em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 2em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.75em;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 1.25em;
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0 0 0.75em;
|
||||
font-family: "font-family: " Helvetica Neue ",Helvetica,Arial,sans-serif";
|
||||
}
|
||||
|
||||
a {
|
||||
-webkit-transition: color 0.1s linear;
|
||||
-moz-transition: color 0.1s linear;
|
||||
transition: color 0.1s linear;
|
||||
color: #ced9e0;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
color: #9fb5c2;
|
||||
border-color: #9fb5c2;
|
||||
}
|
||||
a:active, a:focus {
|
||||
color: #9fb5c2;
|
||||
border-color: #9fb5c2;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
header {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
hr {
|
||||
border-bottom: 1px solid #ddd;
|
||||
border-left: none;
|
||||
border-right: none;
|
||||
border-top: none;
|
||||
margin: 1.5em 0;
|
||||
}
|
||||
|
||||
img,
|
||||
picture {
|
||||
margin: 0;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-left: 2px solid #ddd;
|
||||
color: #fdfdfe;
|
||||
margin: 1.5em 0;
|
||||
padding-left: 0.75em;
|
||||
}
|
||||
|
||||
cite {
|
||||
color: white;
|
||||
font-style: italic;
|
||||
}
|
||||
cite:before {
|
||||
content: "\2014 \00A0";
|
||||
}
|
||||
|
||||
body {
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
}
|
||||
|
||||
a {
|
||||
border-bottom: 1px solid #ced9e0;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #e85151;
|
||||
}
|
||||
|
||||
header {
|
||||
max-width: 68em;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-top: 4em;
|
||||
border-top: 2px solid #e85151;
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(50px);
|
||||
-moz-transform: translateY(50px);
|
||||
-ms-transform: translateY(50px);
|
||||
-o-transform: translateY(50px);
|
||||
transform: translateY(50px);
|
||||
-webkit-transition: all 1200ms ease;
|
||||
-moz-transition: all 1200ms ease;
|
||||
transition: all 1200ms ease;
|
||||
-webkit-transition-delay: 50ms;
|
||||
-moz-transition-delay: 50ms;
|
||||
transition-delay: 50ms;
|
||||
}
|
||||
header:after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
header {
|
||||
margin-top: 2em;
|
||||
}
|
||||
}
|
||||
header #logo-container {
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 2.35765%;
|
||||
width: 48.82117%;
|
||||
}
|
||||
header #logo-container:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
header #logo-container {
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 7.42297%;
|
||||
width: 100%;
|
||||
}
|
||||
header #logo-container:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
header #logo-container #logo {
|
||||
padding-top: 0.5em;
|
||||
font-weight: bold;
|
||||
font-size: 48px;
|
||||
line-height: 60px;
|
||||
letter-spacing: -0.05em;
|
||||
float: none;
|
||||
}
|
||||
header #logo-container #subtitle {
|
||||
color: #e85151;
|
||||
font-weight: bold;
|
||||
font-size: 18px;
|
||||
}
|
||||
header a {
|
||||
color: #e85151;
|
||||
text-decoration: none;
|
||||
border: none;
|
||||
}
|
||||
header a:hover {
|
||||
color: #d11c1c;
|
||||
border-color: #d11c1c;
|
||||
}
|
||||
header a:active, header a:focus {
|
||||
color: #d11c1c;
|
||||
border-color: #d11c1c;
|
||||
}
|
||||
header nav {
|
||||
text-align: right;
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 2.35765%;
|
||||
width: 74.41059%;
|
||||
}
|
||||
header nav:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
header nav {
|
||||
text-align: left;
|
||||
margin-top: 1em;
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 7.42297%;
|
||||
width: 100%;
|
||||
}
|
||||
header nav:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
header nav ul {
|
||||
padding-top: 0.5em;
|
||||
line-height: 60px;
|
||||
}
|
||||
header nav ul li {
|
||||
display: inline-block;
|
||||
margin-left: 1em;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
header nav ul li {
|
||||
margin-left: 0;
|
||||
margin-right: 1em;
|
||||
}
|
||||
}
|
||||
header nav ul li a {
|
||||
font-weight: bold;
|
||||
}
|
||||
header nav ul li a.bordered {
|
||||
border-radius: 0.2em;
|
||||
padding: 0.4em;
|
||||
padding-left: 0.8em;
|
||||
padding-right: 0.8em;
|
||||
border: 2px solid #e85151;
|
||||
}
|
||||
|
||||
#content {
|
||||
max-width: 68em;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
padding-bottom: 2em;
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(50px);
|
||||
-moz-transform: translateY(50px);
|
||||
-ms-transform: translateY(50px);
|
||||
-o-transform: translateY(50px);
|
||||
transform: translateY(50px);
|
||||
-webkit-transition: all 1200ms ease;
|
||||
-moz-transition: all 1200ms ease;
|
||||
transition: all 1200ms ease;
|
||||
-webkit-transition-delay: 350ms;
|
||||
-moz-transition-delay: 350ms;
|
||||
transition-delay: 350ms;
|
||||
}
|
||||
#content:after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
#content section.intro {
|
||||
max-width: 68em;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-bottom: 5em;
|
||||
}
|
||||
#content section.intro:after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
#content section.intro {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
}
|
||||
#content section.intro h1 {
|
||||
font-size: 8em;
|
||||
border-top: 2px solid #fff;
|
||||
letter-spacing: -0.05em;
|
||||
margin-top: 1.2em;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
#content section.intro h1 {
|
||||
font-size: 4em;
|
||||
line-height: 1.2em;
|
||||
padding-top: 0.4em;
|
||||
}
|
||||
}
|
||||
#content section.intro h1 span.nl {
|
||||
display: none;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
#content section.intro h1 span.nl {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
#content section.intro p {
|
||||
font-size: 2.0em;
|
||||
line-height: 1.5em;
|
||||
letter-spacing: 0.02em;
|
||||
}
|
||||
#content section.row {
|
||||
max-width: 68em;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
padding-top: 2em;
|
||||
padding-bottom: 5em;
|
||||
}
|
||||
#content section.row:after {
|
||||
content: "";
|
||||
display: table;
|
||||
clear: both;
|
||||
}
|
||||
#content section.row h2 {
|
||||
text-transform: uppercase;
|
||||
font-size: 1.0em;
|
||||
font-weight: bold;
|
||||
color: #e85151;
|
||||
margin-bottom: 0.05em;
|
||||
}
|
||||
#content section.row p {
|
||||
font-size: 1.2em;
|
||||
line-height: 1.6em;
|
||||
}
|
||||
#content section.row .col, #content section.row .col-full {
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 2.35765%;
|
||||
width: 48.82117%;
|
||||
border-top: 2px solid #ced9e0;
|
||||
padding-top: 1em;
|
||||
padding-bottom: 3em;
|
||||
}
|
||||
#content section.row .col:last-child, #content section.row .col-full:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
#content section.row .col, #content section.row .col-full {
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 7.42297%;
|
||||
width: 100%;
|
||||
}
|
||||
#content section.row .col:last-child, #content section.row .col-full:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
#content section.row .col-full {
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 2.35765%;
|
||||
width: 100%;
|
||||
}
|
||||
#content section.row .col-full:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
#content section.row .col-full {
|
||||
float: left;
|
||||
display: block;
|
||||
margin-right: 7.42297%;
|
||||
width: 100%;
|
||||
}
|
||||
#content section.row .col-full:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
#content .photo-grid {
|
||||
display: -webkit-box;
|
||||
display: -moz-box;
|
||||
display: box;
|
||||
display: -webkit-flex;
|
||||
display: -moz-flex;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-flex-flow: row wrap;
|
||||
-moz-flex-flow: row wrap;
|
||||
flex-flow: row wrap;
|
||||
-webkit-box-pack: justify;
|
||||
-moz-box-pack: justify;
|
||||
box-pack: justify;
|
||||
-webkit-justify-content: space-between;
|
||||
-moz-justify-content: space-between;
|
||||
-ms-justify-content: space-between;
|
||||
-o-justify-content: space-between;
|
||||
justify-content: space-between;
|
||||
-ms-flex-pack: justify;
|
||||
}
|
||||
#content .photo-grid a {
|
||||
margin-bottom: 20px;
|
||||
border: none;
|
||||
text-decoration: none;
|
||||
}
|
||||
#content .photo-grid a.col-1 {
|
||||
width: 100%;
|
||||
}
|
||||
#content .photo-grid a.col-2 {
|
||||
width: 49%;
|
||||
width: calc(50% - 12px);
|
||||
}
|
||||
#content .photo-grid a.col-3 {
|
||||
width: 32%;
|
||||
width: calc(33.33333% - 16px);
|
||||
}
|
||||
@media screen and (max-width: 540px) {
|
||||
#content .photo-grid a {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
#content .photo-grid a.col-2 {
|
||||
width: 49%;
|
||||
width: calc(50% - 7px);
|
||||
}
|
||||
}
|
||||
|
||||
.loaded header {
|
||||
-webkit-transform: none;
|
||||
-moz-transform: none;
|
||||
-ms-transform: none;
|
||||
-o-transform: none;
|
||||
transform: none;
|
||||
opacity: 1;
|
||||
}
|
||||
.loaded #content {
|
||||
-webkit-transform: none;
|
||||
-moz-transform: none;
|
||||
-ms-transform: none;
|
||||
-o-transform: none;
|
||||
transform: none;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=main.css.map */
|
7
docker-persist/html/css/main.css.map
Executable file
7
docker-persist/html/css/main.css.map
Executable file
File diff suppressed because one or more lines are too long
256
docker-persist/html/css/main.scss
Executable file
256
docker-persist/html/css/main.scss
Executable file
@@ -0,0 +1,256 @@
|
||||
@import "reset";
|
||||
@import "config";
|
||||
@import "bourbon/bourbon";
|
||||
@import "neat/neat";
|
||||
@import "grid-settings";
|
||||
@import "typography";
|
||||
|
||||
body {
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
}
|
||||
|
||||
a {
|
||||
border-bottom: 1px solid $base-font-color;
|
||||
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: $base-accent-color;
|
||||
}
|
||||
|
||||
header {
|
||||
|
||||
@include outer-container;
|
||||
|
||||
margin-top: 4em;
|
||||
border-top: $header-border;
|
||||
|
||||
@include media($mobile) {
|
||||
margin-top: 2em;
|
||||
}
|
||||
|
||||
opacity: 0;
|
||||
@include transform(translateY(50px));
|
||||
@include transition(all 1200ms ease);
|
||||
@include transition-delay(50ms);
|
||||
|
||||
#logo-container {
|
||||
@include span-columns(6);
|
||||
|
||||
@include media($mobile) {
|
||||
@include span-columns(4);
|
||||
}
|
||||
|
||||
#logo {
|
||||
|
||||
padding-top: 0.5em;
|
||||
font-weight: bold;
|
||||
font-size: 48px;
|
||||
line-height: 60px;
|
||||
letter-spacing: -0.05em;
|
||||
float: none;
|
||||
}
|
||||
|
||||
#subtitle {
|
||||
color: $base-accent-color;
|
||||
font-weight: bold;
|
||||
font-size: 18px;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
color: $base-logo-link-color;
|
||||
text-decoration: none;
|
||||
border: none;
|
||||
|
||||
&:hover {
|
||||
color: $base-logo-hover-link-color;
|
||||
border-color: $base-logo-hover-link-color;
|
||||
}
|
||||
|
||||
&:active, &:focus {
|
||||
color: $base-logo-hover-link-color;
|
||||
border-color: $base-logo-hover-link-color;
|
||||
}
|
||||
}
|
||||
|
||||
nav {
|
||||
|
||||
text-align: right;
|
||||
@include span-columns(9);
|
||||
|
||||
@include media($mobile) {
|
||||
text-align: left;
|
||||
margin-top: 1em;
|
||||
@include span-columns(4);
|
||||
}
|
||||
ul {
|
||||
|
||||
padding-top: 0.5em;
|
||||
line-height: 60px;
|
||||
|
||||
li {
|
||||
display: inline-block;
|
||||
margin-left: 1em;
|
||||
|
||||
@include media($mobile) {
|
||||
margin-left: 0;
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
a {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
a.bordered {
|
||||
border-radius: 0.2em;
|
||||
padding: 0.4em;
|
||||
padding-left: 0.8em;
|
||||
padding-right: 0.8em;
|
||||
border: $header-border;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#content {
|
||||
|
||||
@include outer-container;
|
||||
padding-bottom: 2em;
|
||||
|
||||
opacity: 0;
|
||||
@include transform(translateY(50px));
|
||||
@include transition(all 1200ms ease);
|
||||
@include transition-delay(350ms);
|
||||
|
||||
section.intro {
|
||||
|
||||
@include outer-container;
|
||||
margin-bottom: 5em;
|
||||
|
||||
@include media($mobile) {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 8em;
|
||||
border-top: $heading-border;
|
||||
letter-spacing: -0.05em;
|
||||
margin-top: 1.2em;
|
||||
margin-bottom: 1em;
|
||||
|
||||
@include media($mobile) {
|
||||
font-size: 4em;
|
||||
line-height: 1.2em;
|
||||
padding-top: 0.4em;
|
||||
}
|
||||
|
||||
span.nl {
|
||||
display: none;
|
||||
|
||||
@include media($mobile) {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 2.0em;
|
||||
line-height: 1.5em;
|
||||
letter-spacing: 0.02em;
|
||||
}
|
||||
}
|
||||
|
||||
section.row {
|
||||
|
||||
@include outer-container;
|
||||
padding-top: 2em;
|
||||
padding-bottom: 5em;
|
||||
|
||||
h2 {
|
||||
text-transform: uppercase;
|
||||
font-size: 1.0em;
|
||||
font-weight: bold;
|
||||
color: $base-accent-color;
|
||||
margin-bottom: 0.05em;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1.2em;
|
||||
line-height: 1.6em;
|
||||
}
|
||||
|
||||
.col,.col-full {
|
||||
@include span-columns(6);
|
||||
border-top: $section-border;
|
||||
padding-top: 1em;
|
||||
padding-bottom: 3em;
|
||||
|
||||
@include media($mobile) {
|
||||
@include span-columns(4);
|
||||
}
|
||||
}
|
||||
|
||||
.col-full {
|
||||
@include span-columns(12);
|
||||
@include media($mobile) {
|
||||
@include span-columns(4);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.photo-grid {
|
||||
|
||||
@include display(flex);
|
||||
@include flex-flow(row wrap);
|
||||
@include justify-content(space-between);
|
||||
|
||||
a {
|
||||
margin-bottom: 20px;
|
||||
border: none;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a.col-1 {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
a.col-2 {
|
||||
width: 49%; width: calc(50% - 12px);
|
||||
}
|
||||
|
||||
a.col-3 {
|
||||
width: 32%; width: calc(33.33333% - 16px);
|
||||
}
|
||||
|
||||
@include media($mobile) {
|
||||
a {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
a.col-2 {
|
||||
width: 49%; width: calc(50% - 7px);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.loaded {
|
||||
|
||||
header {
|
||||
|
||||
@include transform(none);
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
#content {
|
||||
|
||||
|
||||
@include transform(none);
|
||||
opacity: 1;
|
||||
|
||||
}
|
||||
}
|
8
docker-persist/html/css/neat/_neat-helpers.scss
Executable file
8
docker-persist/html/css/neat/_neat-helpers.scss
Executable file
@@ -0,0 +1,8 @@
|
||||
// Functions
|
||||
@import "functions/private";
|
||||
@import "functions/new-breakpoint";
|
||||
|
||||
// Settings
|
||||
@import "settings/grid";
|
||||
@import "settings/visual-grid";
|
||||
@import "settings/disable-warnings";
|
23
docker-persist/html/css/neat/_neat.scss
Executable file
23
docker-persist/html/css/neat/_neat.scss
Executable file
@@ -0,0 +1,23 @@
|
||||
/* Neat 1.7.0
|
||||
* http://neat.bourbon.io
|
||||
* Copyright 2012-2014 thoughtbot, inc.
|
||||
* MIT License */
|
||||
|
||||
// Helpers
|
||||
@import "neat-helpers";
|
||||
|
||||
// Grid
|
||||
@import "grid/private";
|
||||
@import "grid/box-sizing";
|
||||
@import "grid/omega";
|
||||
@import "grid/outer-container";
|
||||
@import "grid/span-columns";
|
||||
@import "grid/row";
|
||||
@import "grid/shift";
|
||||
@import "grid/pad";
|
||||
@import "grid/fill-parent";
|
||||
@import "grid/media";
|
||||
@import "grid/to-deprecate";
|
||||
@import "grid/visual-grid";
|
||||
@import "grid/display-context";
|
||||
@import "grid/direction-context";
|
49
docker-persist/html/css/neat/functions/_new-breakpoint.scss
Executable file
49
docker-persist/html/css/neat/functions/_new-breakpoint.scss
Executable file
@@ -0,0 +1,49 @@
|
||||
/// Returns a media context (media query / grid context) that can be stored in a variable and passed to `media()` as a single-keyword argument. Media contexts defined using `new-breakpoint` are used by the visual grid, as long as they are defined before importing Neat.
|
||||
///
|
||||
/// @param {List} $query
|
||||
/// A list of media query features and values. Each `$feature` should have a corresponding `$value`.
|
||||
///
|
||||
/// If there is only a single `$value` in `$query`, `$default-feature` is going to be used.
|
||||
///
|
||||
/// The number of total columns in the grid can be set by passing `$columns` at the end of the list (overrides `$total-columns`). For a list of valid values for `$feature`, click [here](http://www.w3.org/TR/css3-mediaqueries/#media1).
|
||||
///
|
||||
/// @param {Number (unitless)} $total-columns ($grid-columns)
|
||||
/// - Number of columns to use in the new grid context. Can be set as a shorthand in the first parameter.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// $mobile: new-breakpoint(max-width 480px 4);
|
||||
///
|
||||
/// .element {
|
||||
/// @include media($mobile) {
|
||||
/// @include span-columns(4);
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// @media screen and (max-width: 480px) {
|
||||
/// .element {
|
||||
/// display: block;
|
||||
/// float: left;
|
||||
/// margin-right: 7.42297%;
|
||||
/// width: 100%;
|
||||
/// }
|
||||
/// .element:last-child {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
/// }
|
||||
|
||||
@function new-breakpoint($query: $feature $value $columns, $total-columns: $grid-columns) {
|
||||
@if length($query) == 1 {
|
||||
$query: $default-feature nth($query, 1) $total-columns;
|
||||
}
|
||||
|
||||
@else if is-even(length($query)) {
|
||||
$query: append($query, $total-columns);
|
||||
}
|
||||
|
||||
@if not belongs-to($query, $visual-grid-breakpoints) {
|
||||
$visual-grid-breakpoints: append($visual-grid-breakpoints, $query, comma) !global;
|
||||
}
|
||||
|
||||
@return $query;
|
||||
}
|
108
docker-persist/html/css/neat/functions/_private.scss
Executable file
108
docker-persist/html/css/neat/functions/_private.scss
Executable file
@@ -0,0 +1,108 @@
|
||||
// Checks if a number is even
|
||||
@function is-even($int) {
|
||||
@return $int % 2 == 0
|
||||
}
|
||||
|
||||
// Checks if an element belongs to a list or not
|
||||
@function belongs-to($tested-item, $list) {
|
||||
@return not not-belongs-to($tested-item, $list);
|
||||
}
|
||||
|
||||
@function not-belongs-to($tested-item, $list) {
|
||||
@return not index($list, $tested-item);
|
||||
}
|
||||
|
||||
// Contains display value
|
||||
@function contains-display-value($query) {
|
||||
@return belongs-to(table, $query)
|
||||
or belongs-to(block, $query)
|
||||
or belongs-to(inline-block, $query)
|
||||
or belongs-to(inline, $query);
|
||||
}
|
||||
|
||||
// Parses the first argument of span-columns()
|
||||
@function container-span($span: $span) {
|
||||
@if length($span) == 3 {
|
||||
$container-columns: nth($span, 3);
|
||||
@return $container-columns;
|
||||
} @else if length($span) == 2 {
|
||||
$container-columns: nth($span, 2);
|
||||
@return $container-columns;
|
||||
}
|
||||
|
||||
@return $grid-columns;
|
||||
}
|
||||
|
||||
@function container-shift($shift: $shift) {
|
||||
$parent-columns: $grid-columns !default !global;
|
||||
|
||||
@if length($shift) == 3 {
|
||||
$container-columns: nth($shift, 3);
|
||||
@return $container-columns;
|
||||
} @else if length($shift) == 2 {
|
||||
$container-columns: nth($shift, 2);
|
||||
@return $container-columns;
|
||||
}
|
||||
|
||||
@return $parent-columns;
|
||||
}
|
||||
|
||||
// Generates a striped background
|
||||
@function gradient-stops($grid-columns, $color: $visual-grid-color) {
|
||||
$transparent: rgba(0,0,0,0);
|
||||
|
||||
$column-width: flex-grid(1, $grid-columns);
|
||||
$gutter-width: flex-gutter($grid-columns);
|
||||
$column-offset: $column-width;
|
||||
|
||||
$values: ($transparent 0, $color 0);
|
||||
|
||||
@for $i from 1 to $grid-columns*2 {
|
||||
@if is-even($i) {
|
||||
$values: append($values, $transparent $column-offset, comma);
|
||||
$values: append($values, $color $column-offset, comma);
|
||||
$column-offset: $column-offset + $column-width;
|
||||
} @else {
|
||||
$values: append($values, $color $column-offset, comma);
|
||||
$values: append($values, $transparent $column-offset, comma);
|
||||
$column-offset: $column-offset + $gutter-width;
|
||||
}
|
||||
}
|
||||
|
||||
@return $values;
|
||||
}
|
||||
|
||||
// Layout direction
|
||||
@function get-direction($layout, $default) {
|
||||
$direction: null;
|
||||
|
||||
@if to-upper-case($layout) == "LTR" or to-upper-case($layout) == "RTL" {
|
||||
$direction: direction-from-layout($layout);
|
||||
} @else {
|
||||
$direction: direction-from-layout($default);
|
||||
}
|
||||
|
||||
@return $direction;
|
||||
}
|
||||
|
||||
@function direction-from-layout($layout) {
|
||||
$direction: null;
|
||||
|
||||
@if to-upper-case($layout) == "LTR" {
|
||||
$direction: right;
|
||||
} @else {
|
||||
$direction: left;
|
||||
}
|
||||
|
||||
@return $direction;
|
||||
}
|
||||
|
||||
@function get-opposite-direction($direction) {
|
||||
$opposite-direction: left;
|
||||
|
||||
@if $direction == "left" {
|
||||
$opposite-direction: right;
|
||||
}
|
||||
|
||||
@return $opposite-direction;
|
||||
}
|
11
docker-persist/html/css/neat/grid/_box-sizing.scss
Executable file
11
docker-persist/html/css/neat/grid/_box-sizing.scss
Executable file
@@ -0,0 +1,11 @@
|
||||
@if $border-box-sizing == true {
|
||||
html { // http://bit.ly/1qk2tVR
|
||||
@include box-sizing(border-box);
|
||||
}
|
||||
|
||||
* {
|
||||
&, &:before, &:after {
|
||||
@include box-sizing(inherit);
|
||||
}
|
||||
}
|
||||
}
|
31
docker-persist/html/css/neat/grid/_direction-context.scss
Executable file
31
docker-persist/html/css/neat/grid/_direction-context.scss
Executable file
@@ -0,0 +1,31 @@
|
||||
/// Changes the direction property used by other mixins called in the code block argument.
|
||||
///
|
||||
/// @param {String} $direction (left-to-right)
|
||||
/// Layout direction to be used within the block. Can be `left-to-right` or `right-to-left`.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// @include direction(right-to-left) {
|
||||
/// .right-to-left-block {
|
||||
/// @include span-columns(6);
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .right-to-left-block {
|
||||
/// float: right;
|
||||
/// ...
|
||||
/// }
|
||||
|
||||
@mixin direction-context($direction: left-to-right) {
|
||||
$scope-direction: $layout-direction;
|
||||
|
||||
@if to-lower-case($direction) == "left-to-right" {
|
||||
$layout-direction: LTR !global;
|
||||
} @else if to-lower-case($direction) == "right-to-left" {
|
||||
$layout-direction: RTL !global;
|
||||
}
|
||||
|
||||
@content;
|
||||
|
||||
$layout-direction: $scope-direction !global;
|
||||
}
|
26
docker-persist/html/css/neat/grid/_display-context.scss
Executable file
26
docker-persist/html/css/neat/grid/_display-context.scss
Executable file
@@ -0,0 +1,26 @@
|
||||
/// Changes the display property used by other mixins called in the code block argument.
|
||||
///
|
||||
/// @param {String} $display (block)
|
||||
/// Display value to be used within the block. Can be `table` or `block`.
|
||||
///
|
||||
/// @example scss
|
||||
/// @include display(table) {
|
||||
/// .display-table {
|
||||
/// @include span-columns(6);
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// @example css
|
||||
/// .display-table {
|
||||
/// display: table-cell;
|
||||
/// ...
|
||||
/// }
|
||||
|
||||
@mixin display-context($display: block) {
|
||||
$scope-display: $container-display-table;
|
||||
$container-display-table: $display == table !global;
|
||||
|
||||
@content;
|
||||
|
||||
$container-display-table: $scope-display !global;
|
||||
}
|
22
docker-persist/html/css/neat/grid/_fill-parent.scss
Executable file
22
docker-persist/html/css/neat/grid/_fill-parent.scss
Executable file
@@ -0,0 +1,22 @@
|
||||
/// Forces the element to fill its parent container.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include fill-parent;
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .element {
|
||||
/// width: 100%;
|
||||
/// -webkit-box-sizing: border-box;
|
||||
/// -moz-box-sizing: border-box;
|
||||
/// box-sizing: border-box;
|
||||
/// }
|
||||
|
||||
@mixin fill-parent() {
|
||||
width: 100%;
|
||||
|
||||
@if $border-box-sizing == false {
|
||||
@include box-sizing(border-box);
|
||||
}
|
||||
}
|
92
docker-persist/html/css/neat/grid/_media.scss
Executable file
92
docker-persist/html/css/neat/grid/_media.scss
Executable file
@@ -0,0 +1,92 @@
|
||||
/// Outputs a media-query block with an optional grid context (the total number of columns used in the grid).
|
||||
///
|
||||
/// @param {List} $query
|
||||
/// A list of media query features and values, where each `$feature` should have a corresponding `$value`.
|
||||
/// For a list of valid values for `$feature`, click [here](http://www.w3.org/TR/css3-mediaqueries/#media1).
|
||||
///
|
||||
/// If there is only a single `$value` in `$query`, `$default-feature` is going to be used.
|
||||
///
|
||||
/// The number of total columns in the grid can be set by passing `$columns` at the end of the list (overrides `$total-columns`).
|
||||
///
|
||||
///
|
||||
/// @param {Number (unitless)} $total-columns ($grid-columns)
|
||||
/// - Number of columns to use in the new grid context. Can be set as a shorthand in the first parameter.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .responsive-element {
|
||||
/// @include media(769px) {
|
||||
/// @include span-columns(6);
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// .new-context-element {
|
||||
/// @include media(min-width 320px max-width 480px, 6) {
|
||||
/// @include span-columns(6);
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// @media screen and (min-width: 769px) {
|
||||
/// .responsive-element {
|
||||
/// display: block;
|
||||
/// float: left;
|
||||
/// margin-right: 2.35765%;
|
||||
/// width: 48.82117%;
|
||||
/// }
|
||||
///
|
||||
/// .responsive-element:last-child {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// @media screen and (min-width: 320px) and (max-width: 480px) {
|
||||
/// .new-context-element {
|
||||
/// display: block;
|
||||
/// float: left;
|
||||
/// margin-right: 4.82916%;
|
||||
/// width: 100%;
|
||||
/// }
|
||||
///
|
||||
/// .new-context-element:last-child {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
/// }
|
||||
|
||||
@mixin media($query: $feature $value $columns, $total-columns: $grid-columns) {
|
||||
@if length($query) == 1 {
|
||||
@media screen and ($default-feature: nth($query, 1)) {
|
||||
$default-grid-columns: $grid-columns;
|
||||
$grid-columns: $total-columns !global;
|
||||
@content;
|
||||
$grid-columns: $default-grid-columns !global;
|
||||
}
|
||||
}
|
||||
|
||||
@else {
|
||||
$loop-to: length($query);
|
||||
$media-query: 'screen and ';
|
||||
$default-grid-columns: $grid-columns;
|
||||
$grid-columns: $total-columns !global;
|
||||
|
||||
@if not is-even(length($query)) {
|
||||
$grid-columns: nth($query, $loop-to) !global;
|
||||
$loop-to: $loop-to - 1;
|
||||
}
|
||||
|
||||
$i: 1;
|
||||
@while $i <= $loop-to {
|
||||
$media-query: $media-query + '(' + nth($query, $i) + ': ' + nth($query, $i + 1) + ') ';
|
||||
|
||||
@if ($i + 1) != $loop-to {
|
||||
$media-query: $media-query + 'and ';
|
||||
}
|
||||
|
||||
$i: $i + 2;
|
||||
}
|
||||
|
||||
@media #{$media-query} {
|
||||
@content;
|
||||
$grid-columns: $default-grid-columns !global;
|
||||
}
|
||||
}
|
||||
}
|
91
docker-persist/html/css/neat/grid/_omega.scss
Executable file
91
docker-persist/html/css/neat/grid/_omega.scss
Executable file
@@ -0,0 +1,91 @@
|
||||
/// Removes the element's gutter margin, regardless of its position in the grid hierarchy or display property. It can target a specific element, or every `nth-child` occurrence. Works only with `block` layouts.
|
||||
///
|
||||
/// @param {List} $query (block)
|
||||
/// List of arguments. Supported arguments are `nth-child` selectors (targets a specific pseudo element) and `auto` (targets `last-child`).
|
||||
///
|
||||
/// When passed an `nth-child` argument of type `*n` with `block` display, the omega mixin automatically adds a clear to the `*n+1` th element. Note that composite arguments such as `2n+1` do not support this feature.
|
||||
///
|
||||
/// **Deprecation warning**: The omega mixin will no longer take a `$direction` argument. To change the layout direction, use `row($direction)` or set `$default-layout-direction` instead.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include omega;
|
||||
/// }
|
||||
///
|
||||
/// .nth-element {
|
||||
/// @include omega(4n);
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .element {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
///
|
||||
/// .nth-element:nth-child(4n) {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
///
|
||||
/// .nth-element:nth-child(4n+1) {
|
||||
/// clear: left;
|
||||
/// }
|
||||
|
||||
@mixin omega($query: block, $direction: default) {
|
||||
$table: belongs-to(table, $query);
|
||||
$auto: belongs-to(auto, $query);
|
||||
|
||||
@if $direction != default {
|
||||
@include -neat-warn("The omega mixin will no longer take a $direction argument. To change the layout direction, use the direction(){...} mixin.");
|
||||
} @else {
|
||||
$direction: get-direction($layout-direction, $default-layout-direction);
|
||||
}
|
||||
|
||||
@if $table {
|
||||
@include -neat-warn("The omega mixin no longer removes padding in table layouts.");
|
||||
}
|
||||
|
||||
@if length($query) == 1 {
|
||||
@if $auto {
|
||||
&:last-child {
|
||||
margin-#{$direction}: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@else if contains-display-value($query) and $table == false {
|
||||
margin-#{$direction}: 0;
|
||||
}
|
||||
|
||||
@else {
|
||||
@include nth-child($query, $direction);
|
||||
}
|
||||
}
|
||||
|
||||
@else if length($query) == 2 {
|
||||
@if $auto {
|
||||
&:last-child {
|
||||
margin-#{$direction}: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@else {
|
||||
@include nth-child(nth($query, 1), $direction);
|
||||
}
|
||||
}
|
||||
|
||||
@else {
|
||||
@include -neat-warn("Too many arguments passed to the omega() mixin.");
|
||||
}
|
||||
}
|
||||
|
||||
@mixin nth-child($query, $direction) {
|
||||
$opposite-direction: get-opposite-direction($direction);
|
||||
|
||||
&:nth-child(#{$query}) {
|
||||
margin-#{$direction}: 0;
|
||||
}
|
||||
|
||||
@if type-of($query) == number {
|
||||
&:nth-child(#{$query}+1) {
|
||||
clear: $opposite-direction;
|
||||
}
|
||||
}
|
||||
}
|
36
docker-persist/html/css/neat/grid/_outer-container.scss
Executable file
36
docker-persist/html/css/neat/grid/_outer-container.scss
Executable file
@@ -0,0 +1,36 @@
|
||||
/// Makes an element a outer container by centring it in the viewport, clearing its floats, and setting its `max-width`.
|
||||
/// Although optional, using `outer-container` is recommended. The mixin can be called on more than one element per page, as long as they are not nested.
|
||||
///
|
||||
/// @param {Number (unit)} $local-max-width ($max-width)
|
||||
/// Max width to be applied to the element. Can be a percentage or a measure.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include outer-container(100%);
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .element {
|
||||
/// *zoom: 1;
|
||||
/// max-width: 100%;
|
||||
/// margin-left: auto;
|
||||
/// margin-right: auto;
|
||||
/// }
|
||||
///
|
||||
/// .element:before, .element:after {
|
||||
/// content: " ";
|
||||
/// display: table;
|
||||
/// }
|
||||
///
|
||||
/// .element:after {
|
||||
/// clear: both;
|
||||
/// }
|
||||
|
||||
@mixin outer-container($local-max-width: $max-width) {
|
||||
@include clearfix;
|
||||
max-width: $local-max-width;
|
||||
margin: {
|
||||
left: auto;
|
||||
right: auto;
|
||||
}
|
||||
}
|
23
docker-persist/html/css/neat/grid/_pad.scss
Executable file
23
docker-persist/html/css/neat/grid/_pad.scss
Executable file
@@ -0,0 +1,23 @@
|
||||
/// Adds padding to the element.
|
||||
///
|
||||
/// @param {List} $padding (flex-gutter())
|
||||
/// A list of padding value(s) to use. Passing `default` in the list will result in using the gutter width as a padding value.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include pad(30px -20px 10px default);
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .element {
|
||||
/// padding: 30px -20px 10px 2.35765%;
|
||||
/// }
|
||||
|
||||
@mixin pad($padding: flex-gutter()) {
|
||||
$padding-list: null;
|
||||
@each $value in $padding {
|
||||
$value: if($value == 'default', flex-gutter(), $value);
|
||||
$padding-list: join($padding-list, $value);
|
||||
}
|
||||
padding: $padding-list;
|
||||
}
|
35
docker-persist/html/css/neat/grid/_private.scss
Executable file
35
docker-persist/html/css/neat/grid/_private.scss
Executable file
@@ -0,0 +1,35 @@
|
||||
$parent-columns: $grid-columns !default;
|
||||
$fg-column: $column;
|
||||
$fg-gutter: $gutter;
|
||||
$fg-max-columns: $grid-columns;
|
||||
$container-display-table: false !default;
|
||||
$layout-direction: LTR !default;
|
||||
|
||||
@function flex-grid($columns, $container-columns: $fg-max-columns) {
|
||||
$width: $columns * $fg-column + ($columns - 1) * $fg-gutter;
|
||||
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
|
||||
@return percentage($width / $container-width);
|
||||
}
|
||||
|
||||
@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) {
|
||||
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
|
||||
@return percentage($gutter / $container-width);
|
||||
}
|
||||
|
||||
@function grid-width($n) {
|
||||
@return $n * $gw-column + ($n - 1) * $gw-gutter;
|
||||
}
|
||||
|
||||
@function get-parent-columns($columns) {
|
||||
@if $columns != $grid-columns {
|
||||
$parent-columns: $columns !global;
|
||||
} @else {
|
||||
$parent-columns: $grid-columns !global;
|
||||
}
|
||||
|
||||
@return $parent-columns;
|
||||
}
|
||||
|
||||
@function is-display-table($container-is-display-table, $display) {
|
||||
@return $container-is-display-table == true or $display == table;
|
||||
}
|
53
docker-persist/html/css/neat/grid/_row.scss
Executable file
53
docker-persist/html/css/neat/grid/_row.scss
Executable file
@@ -0,0 +1,53 @@
|
||||
/// Designates the element as a row of columns in the grid layout. It clears the floats on the element and sets its display property. Rows can't be nested, but there can be more than one row element—with different display properties—per layout.
|
||||
///
|
||||
/// @param {String} $display (default)
|
||||
/// Sets the display property of the element and the display context that will be used by its children. Can be `block` or `table`.
|
||||
///
|
||||
/// @param {String} $direction ($default-layout-direction)
|
||||
/// Sets the layout direction. Can be `LTR` (left-to-right) or `RTL` (right-to-left).
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include row();
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .element {
|
||||
/// *zoom: 1;
|
||||
/// display: block;
|
||||
/// }
|
||||
///
|
||||
/// .element:before, .element:after {
|
||||
/// content: " ";
|
||||
/// display: table;
|
||||
/// }
|
||||
///
|
||||
/// .element:after {
|
||||
/// clear: both;
|
||||
/// }
|
||||
|
||||
@mixin row($display: default, $direction: $default-layout-direction) {
|
||||
@if $direction != $default-layout-direction {
|
||||
@include -neat-warn("The $direction argument will be deprecated in future versions in favor of the direction(){...} mixin.");
|
||||
}
|
||||
|
||||
$layout-direction: $direction !global;
|
||||
|
||||
@if $display != default {
|
||||
@include -neat-warn("The $display argument will be deprecated in future versions in favor of the display(){...} mixin.");
|
||||
}
|
||||
|
||||
@if $display == table {
|
||||
display: table;
|
||||
@include fill-parent;
|
||||
table-layout: fixed;
|
||||
$container-display-table: true !global;
|
||||
}
|
||||
|
||||
@else {
|
||||
@include clearfix;
|
||||
display: block;
|
||||
$container-display-table: false !global;
|
||||
}
|
||||
}
|
||||
|
48
docker-persist/html/css/neat/grid/_shift.scss
Executable file
48
docker-persist/html/css/neat/grid/_shift.scss
Executable file
@@ -0,0 +1,48 @@
|
||||
/// Translates an element horizontally by a number of columns. Positive arguments shift the element to the active layout direction, while negative ones shift it to the opposite direction.
|
||||
///
|
||||
/// @param {Number (unitless)} $n-columns (1)
|
||||
/// Number of columns by which the element shifts.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include shift(-3);
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS output
|
||||
/// .element {
|
||||
/// margin-left: -25.58941%;
|
||||
/// }
|
||||
|
||||
@mixin shift($n-columns: 1) {
|
||||
@include shift-in-context($n-columns);
|
||||
}
|
||||
|
||||
/// Translates an element horizontally by a number of columns, in a specific nesting context.
|
||||
///
|
||||
/// @param {List} $shift
|
||||
/// A list containing the number of columns to shift (`$columns`) and the number of columns of the parent element (`$container-columns`).
|
||||
///
|
||||
/// The two values can be separated with any string such as `of`, `/`, etc.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include shift(-3 of 6);
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS output
|
||||
/// .element {
|
||||
/// margin-left: -52.41458%;
|
||||
/// }
|
||||
|
||||
@mixin shift-in-context($shift: $columns of $container-columns) {
|
||||
$n-columns: nth($shift, 1);
|
||||
$parent-columns: container-shift($shift) !global;
|
||||
|
||||
$direction: get-direction($layout-direction, $default-layout-direction);
|
||||
$opposite-direction: get-opposite-direction($direction);
|
||||
|
||||
margin-#{$opposite-direction}: $n-columns * flex-grid(1, $parent-columns) + $n-columns * flex-gutter($parent-columns);
|
||||
|
||||
// Reset nesting context
|
||||
$parent-columns: $grid-columns !global;
|
||||
}
|
90
docker-persist/html/css/neat/grid/_span-columns.scss
Executable file
90
docker-persist/html/css/neat/grid/_span-columns.scss
Executable file
@@ -0,0 +1,90 @@
|
||||
/// Specifies the number of columns an element should span. If the selector is nested the number of columns of its parent element should be passed as an argument as well.
|
||||
///
|
||||
/// @param {List} $span
|
||||
/// A list containing `$columns`, the unitless number of columns the element spans (required), and `$container-columns`, the number of columns the parent element spans (optional).
|
||||
///
|
||||
/// If only one value is passed, it is assumed that it's `$columns` and that that `$container-columns` is equal to `$grid-columns`, the total number of columns in the grid.
|
||||
///
|
||||
/// The values can be separated with any string such as `of`, `/`, etc.
|
||||
///
|
||||
/// @param {String} $display (block)
|
||||
/// Sets the display property of the element. By default it sets the display propert of the element to `block`.
|
||||
///
|
||||
/// If passed `block-collapse`, it also removes the margin gutter by adding it to the element width.
|
||||
///
|
||||
/// If passed `table`, it sets the display property to `table-cell` and calculates the width of the element without taking gutters into consideration. The result does not align with the block-based grid.
|
||||
///
|
||||
/// @example scss - Usage
|
||||
/// .element {
|
||||
/// @include span-columns(6);
|
||||
///
|
||||
/// .nested-element {
|
||||
/// @include span-columns(2 of 6);
|
||||
/// }
|
||||
/// }
|
||||
///
|
||||
/// @example css - CSS Output
|
||||
/// .element {
|
||||
/// display: block;
|
||||
/// float: left;
|
||||
/// margin-right: 2.35765%;
|
||||
/// width: 48.82117%;
|
||||
/// }
|
||||
///
|
||||
/// .element:last-child {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
///
|
||||
/// .element .nested-element {
|
||||
/// display: block;
|
||||
/// float: left;
|
||||
/// margin-right: 4.82916%;
|
||||
/// width: 30.11389%;
|
||||
/// }
|
||||
///
|
||||
/// .element .nested-element:last-child {
|
||||
/// margin-right: 0;
|
||||
/// }
|
||||
|
||||
@mixin span-columns($span: $columns of $container-columns, $display: block) {
|
||||
$columns: nth($span, 1);
|
||||
$container-columns: container-span($span);
|
||||
|
||||
$parent-columns: get-parent-columns($container-columns) !global;
|
||||
|
||||
$direction: get-direction($layout-direction, $default-layout-direction);
|
||||
$opposite-direction: get-opposite-direction($direction);
|
||||
|
||||
$display-table: is-display-table($container-display-table, $display);
|
||||
|
||||
@if $display-table {
|
||||
display: table-cell;
|
||||
width: percentage($columns / $container-columns);
|
||||
} @else {
|
||||
float: #{$opposite-direction};
|
||||
|
||||
@if $display != no-display {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@if $display == collapse {
|
||||
@include -neat-warn("The 'collapse' argument will be deprecated. Use 'block-collapse' instead.");
|
||||
}
|
||||
|
||||
@if $display == collapse or $display == block-collapse {
|
||||
width: flex-grid($columns, $container-columns) + flex-gutter($container-columns);
|
||||
|
||||
&:last-child {
|
||||
width: flex-grid($columns, $container-columns);
|
||||
}
|
||||
|
||||
} @else {
|
||||
margin-#{$direction}: flex-gutter($container-columns);
|
||||
width: flex-grid($columns, $container-columns);
|
||||
|
||||
&:last-child {
|
||||
margin-#{$direction}: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user