@tacc/core-styles 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.postcssrc.base.yml +48 -0
- package/README.md +244 -0
- package/bin/build.js +40 -0
- package/bin/config.js +90 -0
- package/bin/version.js +24 -0
- package/cli.js +77 -0
- package/dist/branding_logos.css +2 -0
- package/dist/components/README.css +1 -0
- package/dist/components/bootstrap.container.css +2 -0
- package/dist/components/bootstrap.figure.css +2 -0
- package/dist/components/bootstrap.pagination.css +2 -0
- package/dist/components/c-button.css +2 -0
- package/dist/components/c-callout.css +2 -0
- package/dist/components/c-card.css +2 -0
- package/dist/components/c-data-list.css +2 -0
- package/dist/components/c-footer.css +2 -0
- package/dist/components/c-image-map.css +2 -0
- package/dist/components/c-image-map.skin.css +1 -0
- package/dist/components/c-image-map.structure.css +2 -0
- package/dist/components/c-nav.css +2 -0
- package/dist/components/c-page.css +2 -0
- package/dist/components/c-recognition.css +2 -0
- package/dist/components/c-see-all-link.css +2 -0
- package/dist/components/c-show-more.css +2 -0
- package/dist/elements/README.css +1 -0
- package/dist/elements/figure.css +2 -0
- package/dist/elements/html-elements.css +2 -0
- package/dist/elements/tacc-search-bar.css +2 -0
- package/dist/generics/README.css +1 -0
- package/dist/objects/README.css +1 -0
- package/dist/objects/o-flex-item-table-wrap.css +2 -0
- package/dist/objects/o-grid.css +2 -0
- package/dist/objects/o-offset-content.css +2 -0
- package/dist/objects/o-section.css +2 -0
- package/dist/objects/o-site.css +2 -0
- package/dist/settings/README.css +1 -0
- package/dist/settings/border.css +2 -0
- package/dist/settings/color.css +2 -0
- package/dist/settings/font.css +2 -0
- package/dist/settings/max-width.css +2 -0
- package/dist/settings/space.css +2 -0
- package/dist/tools/README.css +1 -0
- package/dist/tools/media-queries.css +1 -0
- package/dist/tools/x-article-link.css +2 -0
- package/dist/tools/x-center.css +2 -0
- package/dist/tools/x-fake-border.css +2 -0
- package/dist/tools/x-grid.css +1 -0
- package/dist/tools/x-layout.css +2 -0
- package/dist/tools/x-overlay.css +1 -0
- package/dist/tools/x-truncate.css +2 -0
- package/dist/trumps/README.css +1 -0
- package/dist/trumps/icon.css +2 -0
- package/dist/trumps/icon.fonts.css +2 -0
- package/dist/trumps/s-article-list.css +2 -0
- package/dist/trumps/s-article-preview.css +2 -0
- package/dist/trumps/s-blockquote.css +2 -0
- package/dist/trumps/s-breadcrumbs.css +2 -0
- package/dist/trumps/s-cms-nav.css +1 -0
- package/dist/trumps/s-document.css +2 -0
- package/dist/trumps/s-footer.css +2 -0
- package/dist/trumps/s-guide-doc.css +2 -0
- package/dist/trumps/s-header.css +2 -0
- package/dist/trumps/s-inline-dl.css +2 -0
- package/dist/trumps/s-portal-nav.css +2 -0
- package/dist/trumps/s-style-guide.css +2 -0
- package/dist/trumps/s-system-specs.css +2 -0
- package/dist/trumps/tacc-search-bar.css +2 -0
- package/dist/trumps/u-empty.css +1 -0
- package/dist/trumps/u-hide.css +2 -0
- package/dist/trumps/u-nested-text-content.css +2 -0
- package/index.js +45 -0
- package/package.json +49 -0
- package/source/README.md +8 -0
- package/source/_imports/README.md +47 -0
- package/source/_imports/branding_logos.css +73 -0
- package/source/_imports/components/README.css +26 -0
- package/source/_imports/components/bootstrap.container.css +23 -0
- package/source/_imports/components/bootstrap.figure.css +17 -0
- package/source/_imports/components/bootstrap.pagination.css +29 -0
- package/source/_imports/components/c-button.css +210 -0
- package/source/_imports/components/c-button.html +31 -0
- package/source/_imports/components/c-callout.css +183 -0
- package/source/_imports/components/c-callout.html +52 -0
- package/source/_imports/components/c-card.css +57 -0
- package/source/_imports/components/c-card.html +32 -0
- package/source/_imports/components/c-data-list.css +222 -0
- package/source/_imports/components/c-data-list.html +145 -0
- package/source/_imports/components/c-footer.css +67 -0
- package/source/_imports/components/c-footer.html +3 -0
- package/source/_imports/components/c-image-map.css +26 -0
- package/source/_imports/components/c-image-map.html +4 -0
- package/source/_imports/components/c-image-map.skin.css +1 -0
- package/source/_imports/components/c-image-map.structure.css +285 -0
- package/source/_imports/components/c-nav.css +164 -0
- package/source/_imports/components/c-nav.html +45 -0
- package/source/_imports/components/c-page.css +95 -0
- package/source/_imports/components/c-page.html +192 -0
- package/source/_imports/components/c-recognition.css +102 -0
- package/source/_imports/components/c-see-all-link.css +52 -0
- package/source/_imports/components/c-show-more.css +50 -0
- package/source/_imports/elements/README.css +47 -0
- package/source/_imports/elements/figure.css +23 -0
- package/source/_imports/elements/html-elements.css +386 -0
- package/source/_imports/elements/tacc-search-bar.css +19 -0
- package/source/_imports/elements/tacc-search-bar.md +20 -0
- package/source/_imports/generics/README.css +24 -0
- package/source/_imports/generics/README.md +9 -0
- package/source/_imports/objects/README.css +22 -0
- package/source/_imports/objects/o-flex-item-table-wrap.css +50 -0
- package/source/_imports/objects/o-grid.css +131 -0
- package/source/_imports/objects/o-grid.html +64 -0
- package/source/_imports/objects/o-offset-content.css +51 -0
- package/source/_imports/objects/o-section.css +270 -0
- package/source/_imports/objects/o-section.html +73 -0
- package/source/_imports/objects/o-site.css +26 -0
- package/source/_imports/objects/o-site.html +11 -0
- package/source/_imports/settings/README.css +65 -0
- package/source/_imports/settings/border.css +15 -0
- package/source/_imports/settings/color.css +30 -0
- package/source/_imports/settings/font.css +49 -0
- package/source/_imports/settings/max-width.css +31 -0
- package/source/_imports/settings/space.css +36 -0
- package/source/_imports/tools/README.css +17 -0
- package/source/_imports/tools/media-queries.css +48 -0
- package/source/_imports/tools/x-article-link.css +62 -0
- package/source/_imports/tools/x-center.css +60 -0
- package/source/_imports/tools/x-fake-border.css +72 -0
- package/source/_imports/tools/x-grid.css +116 -0
- package/source/_imports/tools/x-layout.css +86 -0
- package/source/_imports/tools/x-overlay.css +28 -0
- package/source/_imports/tools/x-truncate.css +47 -0
- package/source/_imports/trumps/README.css +79 -0
- package/source/_imports/trumps/icon.css +31 -0
- package/source/_imports/trumps/icon.fonts.css +316 -0
- package/source/_imports/trumps/s-article-list.css +240 -0
- package/source/_imports/trumps/s-article-list.html +20 -0
- package/source/_imports/trumps/s-article-preview.css +253 -0
- package/source/_imports/trumps/s-article-preview.html +30 -0
- package/source/_imports/trumps/s-blockquote.css +45 -0
- package/source/_imports/trumps/s-breadcrumbs.css +69 -0
- package/source/_imports/trumps/s-cms-nav.css +11 -0
- package/source/_imports/trumps/s-cms-nav.html +41 -0
- package/source/_imports/trumps/s-document.css +142 -0
- package/source/_imports/trumps/s-footer.css +16 -0
- package/source/_imports/trumps/s-footer.html +3 -0
- package/source/_imports/trumps/s-guide-doc.css +77 -0
- package/source/_imports/trumps/s-header.css +181 -0
- package/source/_imports/trumps/s-header.html +46 -0
- package/source/_imports/trumps/s-inline-dl.css +35 -0
- package/source/_imports/trumps/s-portal-nav.css +20 -0
- package/source/_imports/trumps/s-portal-nav.html +37 -0
- package/source/_imports/trumps/s-style-guide.css +52 -0
- package/source/_imports/trumps/s-system-specs.css +123 -0
- package/source/_imports/trumps/tacc-search-bar.css +108 -0
- package/source/_imports/trumps/tacc-search-bar.html +11 -0
- package/source/_imports/trumps/u-empty.css +18 -0
- package/source/_imports/trumps/u-hide.css +27 -0
- package/source/_imports/trumps/u-nested-text-content.css +14 -0
- package/source/_tests/README.md +33 -0
- package/source/_tests/postcss-extend.css +80 -0
- package/source/_tests/postcss-preset-env.css +75 -0
- package/source/_tests.css +12 -0
- package/source/_themes/README.md +5 -0
- package/source/_themes/TODO.md +4 -0
- package/source/_themes/default.json +21 -0
- package/source/_themes/has-dark-logo.json +21 -0
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Button
|
|
3
|
+
|
|
4
|
+
A button that may have icon(s) before and/or after its text.
|
|
5
|
+
|
|
6
|
+
.c-button--primary - A primary (expected) user action
|
|
7
|
+
.c-button--secondary - For an optional user action
|
|
8
|
+
.c-button--is-active - A button that represents the current state
|
|
9
|
+
.c-button--as-link - A button that visually resembles a link
|
|
10
|
+
.c-button--is-busy - A clicked button that started an incomplete process
|
|
11
|
+
|
|
12
|
+
Markup: c-button.html
|
|
13
|
+
|
|
14
|
+
Styleguide Components.Button
|
|
15
|
+
*/
|
|
16
|
+
@import url("_imports/tools/x-truncate.css");
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
/* Base */
|
|
23
|
+
|
|
24
|
+
[class*='c-button'] {
|
|
25
|
+
--min-width: 75px;
|
|
26
|
+
--mid-width: 110px;
|
|
27
|
+
--max-width: 130px;
|
|
28
|
+
}
|
|
29
|
+
.c-button {
|
|
30
|
+
display: inline-block;
|
|
31
|
+
|
|
32
|
+
border-width: var(--global-border-width--normal);
|
|
33
|
+
border-style: solid;
|
|
34
|
+
|
|
35
|
+
font-weight: 500;
|
|
36
|
+
font-size: 0.75rem; /* 12px (10px design * 1.2 design-to-app ratio) */
|
|
37
|
+
|
|
38
|
+
@extend %x-truncate--one-line;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.c-button:not(:disabled) {
|
|
42
|
+
cursor: pointer; /* WARNING: Opinionated */
|
|
43
|
+
}
|
|
44
|
+
.c-button:disabled:not(.c-button--is-busy) {
|
|
45
|
+
color: var(--global-color-primary--dark);
|
|
46
|
+
background-color: var(--global-color-primary--xx-light);
|
|
47
|
+
border-color: var(--global-color-primary--dark);
|
|
48
|
+
|
|
49
|
+
pointer-events: none;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.c-button:active:not(:disabled) {
|
|
53
|
+
transform: translateY(1px);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
/* Modifiers */
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
/* Modifiers: Types */
|
|
64
|
+
|
|
65
|
+
.c-button--primary,
|
|
66
|
+
.c-button--secondary {
|
|
67
|
+
padding: 6px 18px;
|
|
68
|
+
min-width: var(--min-width);
|
|
69
|
+
max-width: var(--max-width);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/* Modifiers: Types: Primary */
|
|
73
|
+
|
|
74
|
+
.c-button--primary:hover {
|
|
75
|
+
color: var(--global-color-primary--xx-light);
|
|
76
|
+
background-color: var(--global-color-accent--dark);
|
|
77
|
+
border-color: var(--global-color-accent--dark);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.c-button--primary:active {
|
|
81
|
+
color: var(--global-color-primary--xx-light);
|
|
82
|
+
background-color: var(--global-color-accent--x-dark);
|
|
83
|
+
border-color: var(--global-color-accent--dark);
|
|
84
|
+
|
|
85
|
+
border-width: var(--global-border-width--normal);
|
|
86
|
+
outline: var(--global-border-width--normal) solid
|
|
87
|
+
var(--global-color-accent--dark);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.c-button--primary:focus:not(:active) {
|
|
91
|
+
color: var(--global-color-primary--xx-light);
|
|
92
|
+
background-color: var(--global-color-accent--normal);
|
|
93
|
+
border-color: var(--global-color-primary--xx-light);
|
|
94
|
+
|
|
95
|
+
outline: var(--global-border-width--normal) solid
|
|
96
|
+
var(--global-color-accent--light);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.c-button--primary.c-button--is-busy,
|
|
100
|
+
.c-button--primary:not(
|
|
101
|
+
.c-button:hover,
|
|
102
|
+
.c-button:focus,
|
|
103
|
+
.c-button:active,
|
|
104
|
+
.c-button:disabled
|
|
105
|
+
) {
|
|
106
|
+
color: var(--global-color-primary--xx-light);
|
|
107
|
+
background-color: var(--global-color-accent--normal);
|
|
108
|
+
border-color: var(--global-color-accent--normal);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/* Modifiers: Types: Secondary */
|
|
112
|
+
|
|
113
|
+
.c-button--secondary:hover {
|
|
114
|
+
color: var(--global-color-primary--xx-dark);
|
|
115
|
+
background-color: var(--global-color-primary--light);
|
|
116
|
+
border-color: var(--global-color-accent--dark);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.c-button--secondary:active {
|
|
120
|
+
color: var(--global-color-primary--xx-dark);
|
|
121
|
+
background-color: var(--global-color-accent--x-light);
|
|
122
|
+
border-color: var(--global-color-accent--dark);
|
|
123
|
+
|
|
124
|
+
border-width: var(--global-border-width--normal);
|
|
125
|
+
outline: var(--global-border-width--normal) solid
|
|
126
|
+
var(--global-color-accent--dark);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.c-button--secondary:focus:not(:active) {
|
|
130
|
+
color: var(--global-color-primary--xx-dark);
|
|
131
|
+
background-color: var(--global-color-primary--light);
|
|
132
|
+
border-color: var(--global-color-primary--xx-dark);
|
|
133
|
+
|
|
134
|
+
outline: var(--global-border-width--thick) solid
|
|
135
|
+
var(--global-color-accent--light);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.c-button--secondary.c-button--is-busy,
|
|
139
|
+
.c-button--secondary:not(
|
|
140
|
+
.c-button:hover,
|
|
141
|
+
.c-button:focus,
|
|
142
|
+
.c-button:active,
|
|
143
|
+
.c-button:disabled
|
|
144
|
+
) {
|
|
145
|
+
color: var(--global-color-primary--xx-dark);
|
|
146
|
+
background-color: var(--global-color-primary--xx-light);
|
|
147
|
+
border-color: var(--global-color-primary--xx-dark);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/* Modifiers: Types: Is Active */
|
|
151
|
+
|
|
152
|
+
.c-button--is-active:not(
|
|
153
|
+
.c-button:hover,
|
|
154
|
+
.c-button:focus,
|
|
155
|
+
.c-button:active
|
|
156
|
+
) {
|
|
157
|
+
background-color: var(--global-color-accent--x-light);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/* Modifiers: Types: As Link */
|
|
161
|
+
|
|
162
|
+
.c-button--as-link {
|
|
163
|
+
color: var(--global-color-accent--normal);
|
|
164
|
+
|
|
165
|
+
background: unset;
|
|
166
|
+
border: unset;
|
|
167
|
+
padding-inline: unset;
|
|
168
|
+
}
|
|
169
|
+
.c-button--as-link:not(:disabled):hover {
|
|
170
|
+
text-decoration: underline;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/* Modifiers: Types: Is Busy */
|
|
174
|
+
|
|
175
|
+
.c-button--is-busy {
|
|
176
|
+
opacity: 0.5;
|
|
177
|
+
}
|
|
178
|
+
.c-button--is-busy .c-button__text {
|
|
179
|
+
opacity: 0.3;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/* Modifiers: Sizes */
|
|
183
|
+
|
|
184
|
+
.c-button--width-short {
|
|
185
|
+
width: var(--min-width);
|
|
186
|
+
}
|
|
187
|
+
.c-button--width-medium {
|
|
188
|
+
width: var(--mid-width);
|
|
189
|
+
}
|
|
190
|
+
.c-button--width-long {
|
|
191
|
+
width: var(--max-width);
|
|
192
|
+
}
|
|
193
|
+
.c-button--size-small {
|
|
194
|
+
min-width: 0;
|
|
195
|
+
padding: 3px 9px;
|
|
196
|
+
line-height: 1;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
/* Elements */
|
|
204
|
+
|
|
205
|
+
.c-button__icon--before {
|
|
206
|
+
margin-right: 0.5em;
|
|
207
|
+
}
|
|
208
|
+
.c-button__icon--after {
|
|
209
|
+
margin-left: 0.5em;
|
|
210
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<button class="c-button c-button--secondary">
|
|
2
|
+
<i class="c-button__icon--before" data-icon="X">(clear input)</i>
|
|
3
|
+
<span class="c-button__text">Cancel</span>
|
|
4
|
+
</button>
|
|
5
|
+
|
|
6
|
+
<button class="c-button c-button--primary">
|
|
7
|
+
<i class="c-button__icon" data-icon="✓">(check input)</i>
|
|
8
|
+
<span class="c-button__text">Confirm</span>
|
|
9
|
+
<i class="c-button__icon--after" data-icon="→">(and exit)</i>
|
|
10
|
+
</button>
|
|
11
|
+
|
|
12
|
+
<button class="c-button c-button--secondary">
|
|
13
|
+
<span class="c-button__text">Skip</span>
|
|
14
|
+
<i class="c-button__icon--after" data-icon="→">(and move to next form)</i>
|
|
15
|
+
</button>
|
|
16
|
+
|
|
17
|
+
<button class="c-button c-button--is-active">
|
|
18
|
+
<span class="c-button__text">Current Item</span>
|
|
19
|
+
</button>
|
|
20
|
+
|
|
21
|
+
<button class="c-button c-button--as-link">
|
|
22
|
+
Return to Previous Screen
|
|
23
|
+
</button>
|
|
24
|
+
|
|
25
|
+
<button class="c-button c-button--secondary c-button--is-busy">
|
|
26
|
+
<span class="c-button__text">Submit (Secondary)</span>
|
|
27
|
+
</button>
|
|
28
|
+
|
|
29
|
+
<button class="c-button c-button--primary c-button--is-busy">
|
|
30
|
+
<span class="c-button__text">Submit (Primary)</span>
|
|
31
|
+
</button>
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Callout
|
|
3
|
+
|
|
4
|
+
Interrupt or end Sections with a "call to action".
|
|
5
|
+
|
|
6
|
+
Markup: c-callout.html
|
|
7
|
+
|
|
8
|
+
Styleguide Components.Callout
|
|
9
|
+
*/
|
|
10
|
+
@import url("_imports/tools/media-queries.css");
|
|
11
|
+
@import url("_imports/tools/x-article-link.css");
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
/* Layout */
|
|
18
|
+
|
|
19
|
+
.c-callout {
|
|
20
|
+
--figure-width--no-units: 310;
|
|
21
|
+
--figure-height--no-units: 130;
|
|
22
|
+
|
|
23
|
+
display: grid;
|
|
24
|
+
}
|
|
25
|
+
.c-callout > :is(img, figure) { grid-area: figure; }
|
|
26
|
+
.c-callout > :is(h1, h2, h3, h4, h5, h6) { grid-area: title; }
|
|
27
|
+
.c-callout > p { grid-area: desc; }
|
|
28
|
+
|
|
29
|
+
/* Let title `margin-top` and desc `margin-bottom` manage gap between them */
|
|
30
|
+
/* FAQ: Bootstrap does this too but auto. pattern library has no Bootstrap */
|
|
31
|
+
.c-callout > p { margin-top: 0; }
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
/* Layout: Figure / Image */
|
|
36
|
+
|
|
37
|
+
/* Ensure title and desc determine height of figure and callout */
|
|
38
|
+
/* FAQ: Options that use `min-height: 0` have bug (narrow cell) on Firefox:
|
|
39
|
+
- https://stackoverflow.com/a/48943583/11817077
|
|
40
|
+
- https://stackoverflow.com/a/61297418/11817077 */
|
|
41
|
+
.c-callout > img,
|
|
42
|
+
.c-callout > figure > img {
|
|
43
|
+
object-fit: cover;
|
|
44
|
+
|
|
45
|
+
aspect-ratio: var(--figure-width--no-units) / var(--figure-height--no-units);
|
|
46
|
+
/* NOTE: The required height or width property is set within media queries */
|
|
47
|
+
/* CAVEAT: If using `aspect-ratio`:
|
|
48
|
+
- image can grow beyond intrinsic size
|
|
49
|
+
- `max-width|height` appears ineffectual
|
|
50
|
+
- `width|height` breaks `aspect-ratio` */
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* Wrap figcaption at figure width */
|
|
54
|
+
.c-callout > figure { width: min-content; }
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
/* Layout: Wide Screen */
|
|
59
|
+
|
|
60
|
+
@media only screen and (--narrow-and-above) {
|
|
61
|
+
.c-callout {
|
|
62
|
+
padding: 20px;
|
|
63
|
+
text-align: left;
|
|
64
|
+
|
|
65
|
+
grid-template-columns: min-content auto; /* prevent extra figure h. space */
|
|
66
|
+
grid-template-rows: auto min-content; /* prevent extra title v. space */
|
|
67
|
+
grid-template-areas:
|
|
68
|
+
'figure title'
|
|
69
|
+
'figure desc';
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/* Create gap without using `*-gap` property on container */
|
|
73
|
+
/* FAQ: Container does not know if it has figure but gap is only for figure */
|
|
74
|
+
.c-callout > figure { margin: 0; /* overwrite browser and Bootstrap */ }
|
|
75
|
+
.c-callout > :is(img, figure) { margin-right: 40px;}
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
/* Layout: Wide Screen: Figure / Image */
|
|
80
|
+
|
|
81
|
+
/* Trigger ratio, Limit stretch */
|
|
82
|
+
.c-callout > img,
|
|
83
|
+
.c-callout > figure > img {
|
|
84
|
+
width: calc( var(--figure-width--no-units) * 1px);
|
|
85
|
+
max-width: fit-content;
|
|
86
|
+
}
|
|
87
|
+
/* Let image grow tall */
|
|
88
|
+
.c-callout > img {
|
|
89
|
+
min-height: 100%;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
/* Layout: Narrow Screen */
|
|
96
|
+
|
|
97
|
+
@media only screen and (--narrow-and-below) {
|
|
98
|
+
.c-callout {
|
|
99
|
+
padding: 20px 40px;
|
|
100
|
+
text-align: center;
|
|
101
|
+
|
|
102
|
+
grid-template-areas:
|
|
103
|
+
'figure'
|
|
104
|
+
'title'
|
|
105
|
+
'desc';
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/* Create gap without using `*-gap` property on container */
|
|
109
|
+
/* FAQ: Container does not know if it has figure but gap is only for figure */
|
|
110
|
+
.c-callout > figure { margin: 0; /* overwrite browser and Bootstrap */ }
|
|
111
|
+
.c-callout > :is(img, figure) { margin-bottom: 20px;}
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
/* Layout: Narrow Screen: Figure / Image */
|
|
116
|
+
|
|
117
|
+
/* Trigger ratio, Limit stretch */
|
|
118
|
+
.c-callout > img,
|
|
119
|
+
.c-callout > figure > img {
|
|
120
|
+
height: calc( var(--figure-height--no-units) * 1px);
|
|
121
|
+
max-height: fit-content;
|
|
122
|
+
}
|
|
123
|
+
/* Let image grow wide */
|
|
124
|
+
.c-callout > img {
|
|
125
|
+
min-width: 100%;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/* Align figure to exact center (only relevant if content is smaller) */
|
|
130
|
+
.c-callout > :is(img, figure) { place-self: center; }
|
|
131
|
+
|
|
132
|
+
/* Force wrap before full width (to match design) */
|
|
133
|
+
/* NOTE: 1200px window, design has 15px but this was 7px (wraps the same) */
|
|
134
|
+
/* FAQ: Using a percentage so narrow screen wrap limit is not noticeable */
|
|
135
|
+
.c-callout > p { padding-right: 1%; }
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
/* Style */
|
|
142
|
+
|
|
143
|
+
.c-callout {
|
|
144
|
+
background-color: var(--global-color-link-on-light--normal);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/* Make all headings look the same */
|
|
148
|
+
.c-callout > :is(h1, h2, h3, h4, h5, h6) {
|
|
149
|
+
margin-top: 0;
|
|
150
|
+
padding-bottom: 12px;
|
|
151
|
+
margin-bottom: 12px;
|
|
152
|
+
border-bottom: 1px solid var(--global-color-primary--xx-light);
|
|
153
|
+
|
|
154
|
+
font-size: var(--global-font-size--x-large);
|
|
155
|
+
font-weight: var(--medium);
|
|
156
|
+
}
|
|
157
|
+
/* override html-elements.css */
|
|
158
|
+
.c-callout > :is(h1, h2, h3, h4, h5, h6),
|
|
159
|
+
/* override o-section.css */
|
|
160
|
+
[class*="o-section--style"] .c-callout > :is(h1, h2, h3, h4, h5, h6) {
|
|
161
|
+
color: var(--global-color-primary--xx-light); /* override h1–h6 styles */
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/* Style non-headings */
|
|
165
|
+
.c-callout > :not(h1, h2, h3, h4, h5, h6) {
|
|
166
|
+
color: var(--global-color-primary--xx-light);
|
|
167
|
+
}
|
|
168
|
+
/* FAQ: Ignore figures so figcaptions can be styled by other components */
|
|
169
|
+
/* FAQ: Do not ignore images, so alt text is visible if image load fails */
|
|
170
|
+
.c-callout > :not(h1, h2, h3, h4, h5, h6, figure) {
|
|
171
|
+
font-size: var(--global-font-size--large);
|
|
172
|
+
font-weight: var(--medium);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
/* As a Link */
|
|
180
|
+
|
|
181
|
+
a.c-callout:hover { @extend %x-article-link-hover; text-decoration: none; }
|
|
182
|
+
a.c-callout:active { @extend %x-article-link-active; }
|
|
183
|
+
a.c-callout:focus { text-decoration: none; }
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<style>
|
|
2
|
+
#c-callout { margin-inline: 3em; }
|
|
3
|
+
#c-callout > * + * { margin-top: 3em; }
|
|
4
|
+
</style>
|
|
5
|
+
<div id="c-callout">
|
|
6
|
+
<aside class="c-callout">
|
|
7
|
+
<h2>Style ▸ Text</h2>
|
|
8
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
9
|
+
</aside>
|
|
10
|
+
|
|
11
|
+
<aside class="c-callout">
|
|
12
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/5b/3b/5b3bbbf6-eb43-4853-b19e-9b7c67944648/spectrum-square-1024px.png__310x130_q85_crop_subject_location-171%2C166_subsampling-2_upscale.png" alt="">
|
|
13
|
+
<h2>Style ▸ Image (Thumbnail) + Text</h2>
|
|
14
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
15
|
+
</aside>
|
|
16
|
+
|
|
17
|
+
<aside class="c-callout">
|
|
18
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/69/85/698569d0-641f-4289-94c2-664389d626e8/spectrum-square-240px.png__240x240_q85_subject_location-152%2C186_subsampling-2.png" alt="">
|
|
19
|
+
<h2>Style ▸ Image (Square) + Text</h2>
|
|
20
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
21
|
+
</aside>
|
|
22
|
+
|
|
23
|
+
<a href="#" class="c-callout">
|
|
24
|
+
<h1>Link ▸ Image (Wide) + Text</h1>
|
|
25
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
26
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
27
|
+
</a>
|
|
28
|
+
|
|
29
|
+
<a href="#" class="c-callout">
|
|
30
|
+
<h1>Link ▸ Image (Tall) + Text</h1>
|
|
31
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
32
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/c9/eb/c9ebd744-14d3-43ed-bc2e-86ed96eeef8a/spectrum-tall-320px.png__160x320_q85_subject_location-76%2C160_subsampling-2.jpg" alt="">
|
|
33
|
+
</a>
|
|
34
|
+
|
|
35
|
+
<a href="#" class="c-callout">
|
|
36
|
+
<h1>Link ▸ Image w/ Caption (Wide) + Text</h1>
|
|
37
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
38
|
+
<figure>
|
|
39
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
40
|
+
<figcaption>Lorem ipsum dolor sit amet, et cetera.</figcaption>
|
|
41
|
+
</figure>
|
|
42
|
+
</a>
|
|
43
|
+
|
|
44
|
+
<a href="#" class="c-callout">
|
|
45
|
+
<h1>Link ▸ Image w/ Caption (Tall) + Text</h1>
|
|
46
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam ullamcorper, lacus eu vulputate eleifend, nibh sem finibus mi, eget vulputate eros nulla et arcu.</p>
|
|
47
|
+
<figure>
|
|
48
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/c9/eb/c9ebd744-14d3-43ed-bc2e-86ed96eeef8a/spectrum-tall-320px.png__160x320_q85_subject_location-76%2C160_subsampling-2.jpg" alt="">
|
|
49
|
+
<figcaption>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</figcaption>
|
|
50
|
+
</figure>
|
|
51
|
+
</a>
|
|
52
|
+
</div>
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Card
|
|
3
|
+
|
|
4
|
+
Container with content and action(s) about a single subject.
|
|
5
|
+
|
|
6
|
+
> __ℹ️ Notice__: No default styling.
|
|
7
|
+
|
|
8
|
+
.c-card--frontera-about-page - Container/Link with image and large heading below
|
|
9
|
+
|
|
10
|
+
Markup: c-card.html
|
|
11
|
+
|
|
12
|
+
Styleguide Components.Card
|
|
13
|
+
*/
|
|
14
|
+
@import url("_imports/tools/x-article-link.css");
|
|
15
|
+
|
|
16
|
+
/* Modifiers */
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
/* Modifiers: Frontera About Page */
|
|
21
|
+
|
|
22
|
+
.c-card--frontera-about-page {
|
|
23
|
+
width: fit-content;
|
|
24
|
+
|
|
25
|
+
border-bottom: var(--global-border-width--normal) solid var(--global-color-primary--dark);
|
|
26
|
+
margin-bottom: 4.6rem;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/* Plugins: Link / Image with Link */
|
|
30
|
+
a.c-card--frontera-about-page {
|
|
31
|
+
display: inline-block;
|
|
32
|
+
|
|
33
|
+
text-decoration: none;
|
|
34
|
+
}
|
|
35
|
+
a.c-card--frontera-about-page:hover { @extend %x-article-link-hover; }
|
|
36
|
+
a.c-card--frontera-about-page:active { @extend %x-article-link-active; }
|
|
37
|
+
|
|
38
|
+
/* Plugins: * > Image + Text */
|
|
39
|
+
.c-card--frontera-about-page img + h3 {
|
|
40
|
+
margin-top: 1.6rem;
|
|
41
|
+
}
|
|
42
|
+
.c-card--frontera-about-page img ~ :last-child {
|
|
43
|
+
margin-bottom: 1.25rem;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* Plugins: * > Image with Caption */
|
|
47
|
+
.c-card--frontera-about-page figure {
|
|
48
|
+
margin: 0;
|
|
49
|
+
}
|
|
50
|
+
.c-card--frontera-about-page figcaption {
|
|
51
|
+
color: var(--global-color-primary--xx-dark);
|
|
52
|
+
font-size: var(--global-font-size--x-large);
|
|
53
|
+
font-weight: var(--bold);
|
|
54
|
+
|
|
55
|
+
margin-top: 1.6rem;
|
|
56
|
+
margin-bottom: 1.25rem;
|
|
57
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<div class="o-grid o-grid--col-min-width" style="--width: 320px">
|
|
2
|
+
<a href="./" class="c-card {{modifier_class}}">
|
|
3
|
+
<figure>
|
|
4
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
5
|
+
<figcaption>Image w/ Caption & Link</figcaption>
|
|
6
|
+
</figure>
|
|
7
|
+
</a>
|
|
8
|
+
|
|
9
|
+
<a href="./" class="c-card {{modifier_class}}">
|
|
10
|
+
<figure>
|
|
11
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
12
|
+
<figcaption>Link ▸ Image w/ Caption</figcaption>
|
|
13
|
+
</figure>
|
|
14
|
+
</a>
|
|
15
|
+
|
|
16
|
+
<a href="./" class="c-card {{modifier_class}}">
|
|
17
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
18
|
+
<h3>Link ▸ Image + Text</h3>
|
|
19
|
+
</a>
|
|
20
|
+
|
|
21
|
+
<div class="c-card {{modifier_class}}" style="display: inline-block">
|
|
22
|
+
<figure>
|
|
23
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
24
|
+
<figcaption>Style ▸ Image w/ Caption</figcaption>
|
|
25
|
+
</figure>
|
|
26
|
+
</div>
|
|
27
|
+
|
|
28
|
+
<div class="c-card {{modifier_class}}" style="display: inline-block">
|
|
29
|
+
<img src="https://cep.tacc.utexas.edu/media/filer_public_thumbnails/filer_public/fb/3f/fb3fd4c3-6360-4759-b607-f393b84558c0/spectrum-wide-320px.png__320x160_q85_subject_location-157%2C78_subsampling-2.png" alt="">
|
|
30
|
+
<h3>Style ▸ Image + Text</h3>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|