doc-msp-theme 0.1.0
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.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +52 -0
- data/_includes/footer.html +16 -0
- data/_includes/header.html +55 -0
- data/_layouts/article.html +46 -0
- data/_layouts/chapter.html +39 -0
- data/_layouts/default.html +75 -0
- data/_sass/.csslintrc +20 -0
- data/_sass/.scss-lint.yml +212 -0
- data/_sass/_accessibility-seo.md +233 -0
- data/_sass/_accessibility.md +17 -0
- data/_sass/_accessibility.scss +30 -0
- data/_sass/_animation.scss +17 -0
- data/_sass/_badges.md +39 -0
- data/_sass/_badges.scss +50 -0
- data/_sass/_brandbar.scss +34 -0
- data/_sass/_brandcolor.md +92 -0
- data/_sass/_brandcolor.scss +24 -0
- data/_sass/_brandheader.scss +35 -0
- data/_sass/_brandnav.scss +224 -0
- data/_sass/_breadcrumb.md +39 -0
- data/_sass/_breadcrumb.scss +44 -0
- data/_sass/_button.md +218 -0
- data/_sass/_button.scss +146 -0
- data/_sass/_cancel.scss +13 -0
- data/_sass/_checkbox.md +55 -0
- data/_sass/_checkbox.scss +124 -0
- data/_sass/_close.scss +16 -0
- data/_sass/_collapse.scss +30 -0
- data/_sass/_content-list.md +375 -0
- data/_sass/_content-list.scss +49 -0
- data/_sass/_doc-msp-theme.md +106 -0
- data/_sass/_doc-msp-theme.scss +59 -0
- data/_sass/_expandable.md +141 -0
- data/_sass/_expandable.scss +21 -0
- data/_sass/_font-faces.md +83 -0
- data/_sass/_font-faces.scss +15 -0
- data/_sass/_footer.md +392 -0
- data/_sass/_footer.scss +147 -0
- data/_sass/_forms.md +139 -0
- data/_sass/_forms.scss +199 -0
- data/_sass/_functions.md +251 -0
- data/_sass/_functions.scss +389 -0
- data/_sass/_grid.md +449 -0
- data/_sass/_grid.scss +314 -0
- data/_sass/_header.md +1042 -0
- data/_sass/_helper.md +212 -0
- data/_sass/_helper.scss +150 -0
- data/_sass/_icons.md +153 -0
- data/_sass/_icons.scss +154 -0
- data/_sass/_images.md +21 -0
- data/_sass/_images.scss +54 -0
- data/_sass/_jsbutton.md +171 -0
- data/_sass/_media.scss +48 -0
- data/_sass/_mixins.scss +430 -0
- data/_sass/_modal.md +329 -0
- data/_sass/_modal.scss +117 -0
- data/_sass/_nav.scss +40 -0
- data/_sass/_navbar.scss +250 -0
- data/_sass/_normalize.md +7 -0
- data/_sass/_normalize.scss +423 -0
- data/_sass/_notifications.md +211 -0
- data/_sass/_notifications.scss +110 -0
- data/_sass/_pager.md +67 -0
- data/_sass/_pager.scss +138 -0
- data/_sass/_pagination.md +49 -0
- data/_sass/_pagination.scss +95 -0
- data/_sass/_qtip.md +74 -0
- data/_sass/_qtip.scss +175 -0
- data/_sass/_radio.md +53 -0
- data/_sass/_radio.scss +122 -0
- data/_sass/_scaffolding.scss +61 -0
- data/_sass/_search.md +0 -0
- data/_sass/_search.scss +90 -0
- data/_sass/_select.md +55 -0
- data/_sass/_select.scss +146 -0
- data/_sass/_tables.md +405 -0
- data/_sass/_tables.scss +131 -0
- data/_sass/_totop.md +126 -0
- data/_sass/_totop.scss +33 -0
- data/_sass/_type.md +817 -0
- data/_sass/_type.scss +450 -0
- data/_sass/_variables.scss +480 -0
- data/_sass/themes/bevel-theme/theme.scss +13 -0
- data/_sass/themes/dark-theme/_badges.scss +37 -0
- data/_sass/themes/dark-theme/_brandnav.scss +30 -0
- data/_sass/themes/dark-theme/_breadcrumb.scss +17 -0
- data/_sass/themes/dark-theme/_button.scss +86 -0
- data/_sass/themes/dark-theme/_checkbox.scss +9 -0
- data/_sass/themes/dark-theme/_content-list.scss +40 -0
- data/_sass/themes/dark-theme/_forms.scss +107 -0
- data/_sass/themes/dark-theme/_images.scss +30 -0
- data/_sass/themes/dark-theme/_mixins.scss +67 -0
- data/_sass/themes/dark-theme/_modal.scss +9 -0
- data/_sass/themes/dark-theme/_navbar.scss +15 -0
- data/_sass/themes/dark-theme/_notifications.scss +94 -0
- data/_sass/themes/dark-theme/_pager.scss +46 -0
- data/_sass/themes/dark-theme/_pagination.scss +81 -0
- data/_sass/themes/dark-theme/_qtip.scss +8 -0
- data/_sass/themes/dark-theme/_radio.scss +9 -0
- data/_sass/themes/dark-theme/_scaffolding.scss +29 -0
- data/_sass/themes/dark-theme/_select.scss +93 -0
- data/_sass/themes/dark-theme/_tables.scss +57 -0
- data/_sass/themes/dark-theme/_type.scss +70 -0
- data/_sass/themes/dark-theme/_variables.scss +171 -0
- data/_sass/themes/dark-theme/theme.scss +36 -0
- data/_sass/themes/debug-theme/theme.scss +415 -0
- metadata +179 -0
data/_sass/_button.scss
ADDED
@@ -0,0 +1,146 @@
|
|
1
|
+
//
|
2
|
+
// Buttons
|
3
|
+
// ----------------------------------------
|
4
|
+
|
5
|
+
.btn {
|
6
|
+
display: inline-block;
|
7
|
+
text-align: center;
|
8
|
+
vertical-align: middle;
|
9
|
+
cursor: pointer;
|
10
|
+
border: 1px solid transparent;
|
11
|
+
border-radius: $button-border-radius;
|
12
|
+
font-size: $font-size-regular; // prevent font-size inherit in other modules / scopes
|
13
|
+
line-height: $line-height-regular; // prevent line-height inherit in other modules / scopes
|
14
|
+
padding: $button-padding;
|
15
|
+
font-weight: normal;
|
16
|
+
white-space: nowrap;
|
17
|
+
background-image: none;
|
18
|
+
text-decoration: none;
|
19
|
+
@include transition(all $transition-time-out $transition-function);
|
20
|
+
|
21
|
+
> .icon {
|
22
|
+
margin-top: -1px;
|
23
|
+
padding-right: $button-icon-indent;
|
24
|
+
}
|
25
|
+
|
26
|
+
> .icon-right {
|
27
|
+
padding-left: $button-icon-indent;
|
28
|
+
padding-right: 0;
|
29
|
+
}
|
30
|
+
|
31
|
+
&.focus,
|
32
|
+
&:focus {
|
33
|
+
color: $font-color-regular;
|
34
|
+
text-decoration: none;
|
35
|
+
@include tab-focus();
|
36
|
+
}
|
37
|
+
|
38
|
+
&.hover,
|
39
|
+
&:hover {
|
40
|
+
text-decoration: none;
|
41
|
+
@include transition($transition-time-in, '-duration');
|
42
|
+
}
|
43
|
+
|
44
|
+
&.disabled,
|
45
|
+
&[disabled] {
|
46
|
+
cursor: not-allowed;
|
47
|
+
background: hsv-lighten($color-element-background, 5%, true);
|
48
|
+
border-color: hsv-lighten($color-element-border, 14%, true);
|
49
|
+
color: hsv-lighten($font-color-regular, 50%, true);
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
%btn-default,
|
54
|
+
.btn-default {
|
55
|
+
@include button-variant($font-color-regular, $color-element-background, $button-border-color-default);
|
56
|
+
}
|
57
|
+
|
58
|
+
.btn-brand {
|
59
|
+
@include button-variant($color-bright, $color-brand, $button-border-color-brand);
|
60
|
+
}
|
61
|
+
|
62
|
+
.btn-positive {
|
63
|
+
@include button-variant($font-color-regular, $color-positive, $button-border-color-positive);
|
64
|
+
}
|
65
|
+
|
66
|
+
.btn-negative {
|
67
|
+
@include button-variant($color-bright, $color-negative, $button-border-color-negative);
|
68
|
+
}
|
69
|
+
|
70
|
+
.btn-clean {
|
71
|
+
@extend %btn-default;
|
72
|
+
background-color: transparent;
|
73
|
+
|
74
|
+
&,
|
75
|
+
&.focus,
|
76
|
+
&:focus,
|
77
|
+
&.hover,
|
78
|
+
&:hover,
|
79
|
+
&.active,
|
80
|
+
&:active {
|
81
|
+
border-color: transparent;
|
82
|
+
}
|
83
|
+
}
|
84
|
+
|
85
|
+
.btn-small {
|
86
|
+
font-size: $font-size-small;
|
87
|
+
padding: $button-padding-small;
|
88
|
+
}
|
89
|
+
|
90
|
+
.btn-large {
|
91
|
+
font-size: $font-size-large;
|
92
|
+
padding: $button-padding-large;
|
93
|
+
}
|
94
|
+
|
95
|
+
.btn-icon {
|
96
|
+
padding: $button-padding-minimal;
|
97
|
+
|
98
|
+
.icon {
|
99
|
+
padding: 0;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
.btn-minimal {
|
104
|
+
padding: $bu-padding-minimal;
|
105
|
+
}
|
106
|
+
|
107
|
+
.btn-block {
|
108
|
+
width: 100%;
|
109
|
+
}
|
110
|
+
|
111
|
+
.btn-sectioned {
|
112
|
+
display: block;
|
113
|
+
@include clearfix();
|
114
|
+
|
115
|
+
> .btn,
|
116
|
+
> .pager,
|
117
|
+
> .pager + .pager {
|
118
|
+
margin-left: -1px;
|
119
|
+
margin-right: 0;
|
120
|
+
float: left;
|
121
|
+
position: relative;
|
122
|
+
|
123
|
+
&:hover {
|
124
|
+
z-index: 2;
|
125
|
+
}
|
126
|
+
|
127
|
+
&:focus,
|
128
|
+
&:active {
|
129
|
+
z-index: 3;
|
130
|
+
}
|
131
|
+
|
132
|
+
&:first-child {
|
133
|
+
margin-left: 0;
|
134
|
+
}
|
135
|
+
|
136
|
+
&:not(:last-child) {
|
137
|
+
@include border-right-radius(0);
|
138
|
+
}
|
139
|
+
|
140
|
+
&:not(:first-child) {
|
141
|
+
@include border-left-radius(0);
|
142
|
+
}
|
143
|
+
}
|
144
|
+
}
|
145
|
+
|
146
|
+
|
data/_sass/_cancel.scss
ADDED
data/_sass/_checkbox.md
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
# Checkbox
|
2
|
+
|
3
|
+
Für Checkboxen ist in HTML das Tag `<input type="checkbox">` vorgesehen. Da es für Checkboxen bisher keine Möglichkeit gibt, ihnen mit einfachen CSS-Mitteln ein angemessenes Aussehen zu verleihen kommt Javascript zum Einsatz. Zunächst sollte über die Klasse `.form-checkbox` der Checkbox das Grundgerüst verliehen werden. Ein jQuery-Plugin sorgt nun für die nötige Modifikation:
|
4
|
+
|
5
|
+
```javascript
|
6
|
+
$('.form-checkbox').checkbox()
|
7
|
+
```
|
8
|
+
|
9
|
+
<div class="tc-example" role="application">
|
10
|
+
<fieldset class="form-fieldset">
|
11
|
+
<legend>Gruppen Beschriftung</legend>
|
12
|
+
<div class="form-checkbox-set">
|
13
|
+
<label>
|
14
|
+
<input type="checkbox" name="cb0" value="0" class="form-checkbox">foo
|
15
|
+
</label>
|
16
|
+
</div>
|
17
|
+
<div class="form-checkbox-set">
|
18
|
+
<label>
|
19
|
+
<input type="checkbox" name="cb1" value="1" class="form-checkbox" checked>bar
|
20
|
+
</label>
|
21
|
+
</div>
|
22
|
+
<div class="form-checkbox-set">
|
23
|
+
<label>
|
24
|
+
<input type="checkbox" name="cb2" value="2" class="form-checkbox" disabled>Inaktiv
|
25
|
+
</label>
|
26
|
+
</div>
|
27
|
+
</fieldset>
|
28
|
+
</div>
|
29
|
+
|
30
|
+
```html
|
31
|
+
<fieldset class="form-fieldset">
|
32
|
+
<legend>Gruppen Beschriftung</legend>
|
33
|
+
<div class="form-checkbox-set">
|
34
|
+
<label>
|
35
|
+
<input type="checkbox" name="cb0" value="0" class="form-checkbox">foo
|
36
|
+
</label>
|
37
|
+
</div>
|
38
|
+
<div class="form-checkbox-set">
|
39
|
+
<label>
|
40
|
+
<input type="checkbox" name="cb1" value="1" class="form-checkbox" selected>bar
|
41
|
+
</label>
|
42
|
+
</div>
|
43
|
+
<div class="form-checkbox-set">
|
44
|
+
<label>
|
45
|
+
<input type="checkbox" name="cb2" value="2" class="form-checkbox" checked>Inaktiv
|
46
|
+
</label>
|
47
|
+
</div>
|
48
|
+
</fieldset>
|
49
|
+
```
|
50
|
+
|
51
|
+
<div class="tc-note">
|
52
|
+
**Anmerkung:**
|
53
|
+
Werden Checkboxen dynamisch via Javascript oder über einen Ajax-Call
|
54
|
+
hinzugefügt, muss das Plugin explizit auf die neuen Elemente angewand werden.
|
55
|
+
</div>
|
@@ -0,0 +1,124 @@
|
|
1
|
+
//
|
2
|
+
// Checkbox - JS
|
3
|
+
// ----------------------------------------
|
4
|
+
|
5
|
+
.form-checkbox-js {
|
6
|
+
width: 22px;
|
7
|
+
height: 22px;
|
8
|
+
font-size: 24px;
|
9
|
+
padding: 0;
|
10
|
+
border: 0;
|
11
|
+
background-color: $checkbox-bgr-color;
|
12
|
+
border-radius: (12px / 3);
|
13
|
+
font-family: 'TeleIconUi';
|
14
|
+
line-height: 1px;
|
15
|
+
position: relative;
|
16
|
+
-webkit-font-smoothing: antialiased; // reduce font weight
|
17
|
+
-moz-osx-font-smoothing: grayscale; // reduce font weight
|
18
|
+
@include user-select(none);
|
19
|
+
@include transition(all $transition-time-out $transition-function);
|
20
|
+
|
21
|
+
&.focus,
|
22
|
+
&:focus {
|
23
|
+
outline: 0;
|
24
|
+
}
|
25
|
+
|
26
|
+
&.focus { // since we simulate the focus behavior, we need a real class
|
27
|
+
background-color: hsv-darken($checkbox-bgr-color, 21%, true);
|
28
|
+
}
|
29
|
+
|
30
|
+
&.hover,
|
31
|
+
&:hover {
|
32
|
+
background-color: hsv-darken($checkbox-bgr-color, 7%, true);
|
33
|
+
@include transition($transition-time-in, '-duration');
|
34
|
+
}
|
35
|
+
|
36
|
+
&.active,
|
37
|
+
&:active {
|
38
|
+
background-color: hsv-darken($checkbox-bgr-color, 15%, true);
|
39
|
+
}
|
40
|
+
|
41
|
+
// outline
|
42
|
+
> .border {
|
43
|
+
color: $checkbox-border-color;
|
44
|
+
position: absolute;
|
45
|
+
top: 9px;
|
46
|
+
left: -1px;
|
47
|
+
|
48
|
+
&:before {
|
49
|
+
content: 'A';
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
> .check {
|
54
|
+
font-size: 24px;
|
55
|
+
position: absolute;
|
56
|
+
top: 9px;
|
57
|
+
left: -1px;
|
58
|
+
color: $checkbox-check-color;
|
59
|
+
|
60
|
+
&:before {
|
61
|
+
content: '';
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
65
|
+
&.checked > .check:before {
|
66
|
+
content: 'B';
|
67
|
+
}
|
68
|
+
|
69
|
+
fieldset[disabled] &,
|
70
|
+
&[disabled],
|
71
|
+
&.disabled {
|
72
|
+
cursor: not-allowed;
|
73
|
+
background-color: $checkbox-disabled-bgr-color;
|
74
|
+
|
75
|
+
> .border:before {
|
76
|
+
color: $checkbox-disabled-border-color;
|
77
|
+
}
|
78
|
+
|
79
|
+
> .check:before {
|
80
|
+
color: $checkbox-disabled-check-color;
|
81
|
+
}
|
82
|
+
}
|
83
|
+
|
84
|
+
.form-checkbox-set & {
|
85
|
+
vertical-align: middle;
|
86
|
+
float: left;
|
87
|
+
margin-left: -36px;
|
88
|
+
margin-right: 12px;
|
89
|
+
}
|
90
|
+
}
|
91
|
+
|
92
|
+
// <= IE8
|
93
|
+
|
94
|
+
.lte-ie8 {
|
95
|
+
.form-checkbox-js {
|
96
|
+
background-color: transparent !important;
|
97
|
+
background-repeat: no-repeat;
|
98
|
+
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAAYCAYAAAAxkDmIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozNzdDRDJBNDk3RTFFMzExODA1Q0VBNjZFMjk1MzI2MiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxRDA0Mjc4MUUxQTcxMUUzOUIxMEY2RkFFQTZEM0FCMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxRDA0Mjc4MEUxQTcxMUUzOUIxMEY2RkFFQTZEM0FCMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjM4N0NEMkE0OTdFMUUzMTE4MDVDRUE2NkUyOTUzMjYyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjM3N0NEMkE0OTdFMUUzMTE4MDVDRUE2NkUyOTUzMjYyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+HYcNygAAAP5JREFUeNrsmjFqwzAAReWQsRDImgNk8wlaqiUn6pqxa27SGxQ6lR7BNzAEhAWCroF8geZ2SD6C8B58Izw8Yx7ePCzLEsROO2nP7XwLs/atveWc53bP4k8pWf2lFKs/xmj11/OgwHsdfrRtuC9Ze1Hki9OvyFa/Ilv9imz1r3V5N8hDc1b3BX8/fw18CD4O7QXwd/LXwBvjA56CF/z/+FcBHhoCExgIDAQGAgOBgcBAYAIDgYHAQGAgMBAY/g5cjP5f/H39NfCX8QGf+Pv66x8dR+01eH76OrYz/k7++gVP2qh9aOc7iM/NNeacJ6c/pWT1l1Ks/hij1V/dVwEGAJDahM+tVIFSAAAAAElFTkSuQmCC');
|
99
|
+
|
100
|
+
&.focus,
|
101
|
+
&:focus {
|
102
|
+
background-position: -72px 0;
|
103
|
+
}
|
104
|
+
|
105
|
+
&.hover,
|
106
|
+
&:hover {
|
107
|
+
background-position: -24px 0;
|
108
|
+
}
|
109
|
+
|
110
|
+
&.active,
|
111
|
+
&:active {
|
112
|
+
background-position: -47px 1px; // -48px 0 -3d click fx ie
|
113
|
+
}
|
114
|
+
|
115
|
+
&[disabled],
|
116
|
+
&.disabled {
|
117
|
+
background-position: -96px 0;
|
118
|
+
}
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
122
|
+
.lte-ie8 fieldset[disabled] .form-checkbox-js {
|
123
|
+
background-position: -96px 0;
|
124
|
+
}
|
data/_sass/_close.scss
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
//
|
2
|
+
// Close
|
3
|
+
// ----------------------------------------
|
4
|
+
|
5
|
+
.close {
|
6
|
+
color: inherit;
|
7
|
+
border: 0;
|
8
|
+
padding: 0;
|
9
|
+
cursor: pointer;
|
10
|
+
font-size: 24px;
|
11
|
+
line-height: 1;
|
12
|
+
font-family: 'TeleIconUi';
|
13
|
+
float: right;
|
14
|
+
background: none;
|
15
|
+
margin-top: -1px; // fix icon top padding
|
16
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
//
|
2
|
+
// Collapse
|
3
|
+
// --------------------------------------------------
|
4
|
+
|
5
|
+
.collapse {
|
6
|
+
display: none;
|
7
|
+
|
8
|
+
&.in { display: block; }
|
9
|
+
}
|
10
|
+
|
11
|
+
.collapsing {
|
12
|
+
position: relative;
|
13
|
+
height: 0;
|
14
|
+
overflow: hidden;
|
15
|
+
transition-property: height, visibility;
|
16
|
+
transition-duration: .35s;
|
17
|
+
transition-timing-function: ease;
|
18
|
+
}
|
19
|
+
|
20
|
+
.collapse-open {
|
21
|
+
margin-top: building-units(-4);
|
22
|
+
margin-left: building-units(1);
|
23
|
+
display: block;
|
24
|
+
opacity: 0;
|
25
|
+
@include transition(opacity $transition-time-out $transition-function);
|
26
|
+
|
27
|
+
&.collapsed {
|
28
|
+
opacity: 1;
|
29
|
+
}
|
30
|
+
}
|
@@ -0,0 +1,375 @@
|
|
1
|
+
<!--
|
2
|
+
//
|
3
|
+
//
|
4
|
+
// Content-Listen
|
5
|
+
-->
|
6
|
+
|
7
|
+
Die Content-Liste schließt die Lücke zwischen Textlisten und Tabellen.
|
8
|
+
Sie kommt überall dort zum Einsatz, wo mehr als eine textuelle
|
9
|
+
Aufzählung gefragt ist, aber es sich nicht um tabellarische Inhalte
|
10
|
+
dreht.
|
11
|
+
|
12
|
+
Da die Content-Liste eine unsorierte Liste ist, wird die CSS-Klasse
|
13
|
+
`.content-list` auch auf das `<ul>`-Tag angewendet. Listen-Elemente `<li>`
|
14
|
+
erhalten die CSS-Klasse `.content-list-item`.
|
15
|
+
|
16
|
+
<div class="tc-example">
|
17
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
18
|
+
<h2 class="underline">Headline</h2>
|
19
|
+
<ul class="content-list">
|
20
|
+
<li class="content-list-item">Entry</li>
|
21
|
+
<li class="content-list-item">Entry</li>
|
22
|
+
<li class="content-list-item">Entry</li>
|
23
|
+
<li class="content-list-item">
|
24
|
+
<div class="text-ellipsis">Entry One with Example Content Ellipsed Ellipsed</div>
|
25
|
+
</li>
|
26
|
+
</ul>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
|
30
|
+
```html
|
31
|
+
<ul class="content-list">
|
32
|
+
<li class="content-list-item">Entry</li>
|
33
|
+
...
|
34
|
+
<! -- einzeilige Darstellung -->
|
35
|
+
<li class="content-list-item">
|
36
|
+
<div class="text-ellipsis">Entry One with Example Content Ellipsed Ellipsed</div>
|
37
|
+
</li>
|
38
|
+
</ul>
|
39
|
+
```
|
40
|
+
|
41
|
+
## Content-Liste mit Beschreibung
|
42
|
+
|
43
|
+
Für die Formatierung eines Listeneintrags kommt eine sog. Mikrokomponente
|
44
|
+
zum Einsatz. Die CSS-Klasse `.media` fungiert dabei als Kontainerklasse
|
45
|
+
für die Mikrokomponente. Die Media-Komponente besteht dabei mindestens
|
46
|
+
aus einem `.media-body` und einem `.media-heading`.
|
47
|
+
Beschreibungen werden innerhalb des `.media-body` mit der CSS-Klasse
|
48
|
+
`.media-hint` versehen:
|
49
|
+
|
50
|
+
<div class="tc-example">
|
51
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
52
|
+
<h2 class="underline">Headline</h2>
|
53
|
+
<ul class="content-list">
|
54
|
+
<li class="media">
|
55
|
+
<div class="media-body">
|
56
|
+
<div class="media-heading">Entry One</div>
|
57
|
+
<div class="media-hint">Additional information</div>
|
58
|
+
</div>
|
59
|
+
</li>
|
60
|
+
<li class="media">
|
61
|
+
<div class="media-body">
|
62
|
+
<div class="media-heading">Entry Two</div>
|
63
|
+
<div class="media-hint">
|
64
|
+
Lorem ipsum dolor sit amet, consetetur sadipscing elitr,
|
65
|
+
sed diam nonumy eirmod tempor invidunt ut labore et dolore
|
66
|
+
magna aliquyam erat, sed diam voluptua. At vero eos et
|
67
|
+
accusam et justo duo dolores et ea rebum. Stet clita
|
68
|
+
kasd gubergren, no sea takimata
|
69
|
+
</div>
|
70
|
+
</div>
|
71
|
+
</li>
|
72
|
+
<li class="media">
|
73
|
+
<div class="media-body">
|
74
|
+
<div class="media-heading">Entry Three</div>
|
75
|
+
<div class="media-hint">Additional information</div>
|
76
|
+
</div>
|
77
|
+
</li>
|
78
|
+
<li class="media">
|
79
|
+
<div class="media-body">
|
80
|
+
<div class="media-heading text-ellipsis">Entry Four</div>
|
81
|
+
<div class="media-hint">Additional information</div>
|
82
|
+
</div>
|
83
|
+
</li>
|
84
|
+
</ul>
|
85
|
+
</div>
|
86
|
+
</div>
|
87
|
+
|
88
|
+
```html
|
89
|
+
<ul class="content-list">
|
90
|
+
...
|
91
|
+
<li class="media">
|
92
|
+
<div class="media-body">
|
93
|
+
<div class="media-heading">...</div>
|
94
|
+
<div class="media-hint">...</div>
|
95
|
+
</div>
|
96
|
+
</li>
|
97
|
+
...
|
98
|
+
</div>
|
99
|
+
```
|
100
|
+
|
101
|
+
## Content-Liste mit Bild
|
102
|
+
|
103
|
+
Zusätzliche Informationen können links von Listeneinträgen mit der CSS-Klasse
|
104
|
+
`.media-left` oder rechts von Listeneinträgen mit der CSS-Klasse `.media-right`
|
105
|
+
eingefügt werden. Für die vertikale Positionierung stehen die CSS-Klassen
|
106
|
+
`.media-top`, `.media-bottom` zur Verfügung. Standard ist `middle`, also zentriert.
|
107
|
+
|
108
|
+
Soll ein Listeneintrag mit einem Thumbnail versehen werden so wird ein
|
109
|
+
`.img-frame` benötigt das das `.img-thumbnail` enthält.
|
110
|
+
Bei Listen mit Bild aber ohne Beschreibung sieht der Styleguide vor eine
|
111
|
+
kleinere Bild-Variante `.img-frame-small` zu wählen:
|
112
|
+
|
113
|
+
<div class="tc-note">
|
114
|
+
**Anmerkung:**
|
115
|
+
Innerhalb der CSS-Klasse `.img-frame` dürfen keine Leerzeichen oder
|
116
|
+
Zeilenumbrüche verwendet werden, da es sonst zu Problemen im Layout führen kann.
|
117
|
+
</div>
|
118
|
+
|
119
|
+
<div class="tc-example">
|
120
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
121
|
+
<h2 class="underline">Headline</h2>
|
122
|
+
<ul class="content-list">
|
123
|
+
<li class="media">
|
124
|
+
<div class="media-left media-top">
|
125
|
+
<div class="img-frame img-frame-small"><img src="assets/play.jpg" class="img-thumbnail" width="38" height="28" alt="Junge mit Hut horizontal"></div>
|
126
|
+
</div>
|
127
|
+
<div class="media-body">
|
128
|
+
<div class="media-heading">Entry One</div>
|
129
|
+
</div>
|
130
|
+
</li>
|
131
|
+
<li class="media">
|
132
|
+
<div class="media-left media-top">
|
133
|
+
<div class="img-frame img-frame-small"><img src="assets/play_square.jpg" class="img-thumbnail" width="38" height="38" alt="Junge mit Hut quadratisch"></div>
|
134
|
+
</div>
|
135
|
+
<div class="media-body">
|
136
|
+
<div class="media-heading">Entry Two</div>
|
137
|
+
</div>
|
138
|
+
</li>
|
139
|
+
<li class="media">
|
140
|
+
<div class="media-left media-top">
|
141
|
+
<div class="img-frame img-frame-small"><img src="assets/play_vert.jpg" class="img-thumbnail" width="28" height="38" alt="Junge mit Hut vertikal"></div>
|
142
|
+
</div>
|
143
|
+
<div class="media-body">
|
144
|
+
<div class="media-heading">Entry Three</div>
|
145
|
+
</div>
|
146
|
+
</li>
|
147
|
+
</ul>
|
148
|
+
</div>
|
149
|
+
</div>
|
150
|
+
|
151
|
+
```html
|
152
|
+
<ul class="content-list">
|
153
|
+
...
|
154
|
+
<li class="media">
|
155
|
+
<div class="media-left media-top">
|
156
|
+
<div class="img-frame img-frame-small"><img class="img-thumbnail" ...></div>
|
157
|
+
</div>
|
158
|
+
<div class="media-body">
|
159
|
+
<div class="media-heading">...</div>
|
160
|
+
</div>
|
161
|
+
</li>
|
162
|
+
...
|
163
|
+
</div>
|
164
|
+
```
|
165
|
+
|
166
|
+
## Content-Liste mit Bild und Beschreibung
|
167
|
+
|
168
|
+
Zuletzt noch die Content-Liste in der "Vollversion" mit Thumbnail und
|
169
|
+
Beschreibung:
|
170
|
+
|
171
|
+
<div class="tc-example">
|
172
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
173
|
+
<h2 class="underline">Headline</h2>
|
174
|
+
<ul class="content-list">
|
175
|
+
<li class="media">
|
176
|
+
<div class="media-left media-top">
|
177
|
+
<div class="img-frame"><img src="assets/play.jpg" width="48" height="36" class="img-thumbnail" alt="Junge mit Hut horizontal"></div>
|
178
|
+
</div>
|
179
|
+
<div class="media-body">
|
180
|
+
<div class="media-heading">Entry One</div>
|
181
|
+
<div class="media-hint">Additional information</div>
|
182
|
+
</div>
|
183
|
+
</li>
|
184
|
+
<li class="media">
|
185
|
+
<div class="media-left media-top">
|
186
|
+
<div class="img-frame"><img src="assets/play_square.jpg" width="48" height="48" class="img-thumbnail" alt="Junge mit Hut quadratisch"></div>
|
187
|
+
</div>
|
188
|
+
<div class="media-body">
|
189
|
+
<div class="media-heading">Entry Two</div>
|
190
|
+
<div class="media-hint">Additional information</div>
|
191
|
+
</div>
|
192
|
+
</li>
|
193
|
+
<li class="media">
|
194
|
+
<div class="media-left media-top">
|
195
|
+
<div class="img-frame"><img src="assets/play_vert.jpg" width="36" height="48" class="img-thumbnail" alt="Junge mit Hut vertikal"></div>
|
196
|
+
</div>
|
197
|
+
<div class="media-body">
|
198
|
+
<div class="media-heading">Entry Three</div>
|
199
|
+
<div class="media-hint">
|
200
|
+
Lorem ipsum dolor sit amet, consetetur sadipscing elitr,
|
201
|
+
sed diam nonumy eirmod tempor invidunt ut labore et dolore
|
202
|
+
magna aliquyam erat, sed diam voluptua. At vero eos et accusam
|
203
|
+
et justo duo dolores et ea rebum. Stet clita kasd gubergren,
|
204
|
+
no sea takimata
|
205
|
+
</div>
|
206
|
+
</div>
|
207
|
+
</li>
|
208
|
+
</ul>
|
209
|
+
</div>
|
210
|
+
</div>
|
211
|
+
|
212
|
+
```html
|
213
|
+
<ul class="content-list">
|
214
|
+
...
|
215
|
+
<li class="media">
|
216
|
+
<div class="media-left media-top">
|
217
|
+
<div class="img-frame"><img class="img-thumbnail" ...></div>
|
218
|
+
</div>
|
219
|
+
<div class="media-body">
|
220
|
+
<div class="media-heading">...</div>
|
221
|
+
<div class="media-hint">...</div>
|
222
|
+
</div>
|
223
|
+
</li>
|
224
|
+
...
|
225
|
+
</div>
|
226
|
+
```
|
227
|
+
|
228
|
+
## Anwählbare Content-Liste
|
229
|
+
|
230
|
+
Eine alternative stellt die anwählbare Content-Liste dar.
|
231
|
+
Sie wird von der Syntax her jedoch anders aufgebaut.
|
232
|
+
Da es sich bei einer wählbaren Liste um eine aneinanderreihung von Links
|
233
|
+
handelt wird diese ebenso dargestellt:
|
234
|
+
|
235
|
+
<div class="tc-example">
|
236
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
237
|
+
<h2 class="underline">Headline</h2>
|
238
|
+
<div class="content-list">
|
239
|
+
<a class="content-list-item" href="javascript: void(0);"><span class="badge badge-dark">1</span>Inbox</a>
|
240
|
+
<a class="content-list-item" href="javascript: void(0);"><span class="badge">1001</span>Outbox</a>
|
241
|
+
<a class="content-list-item" href="javascript: void(0);">Drafts</a>
|
242
|
+
<a class="content-list-item" href="javascript: void(0);">Deleted</a>
|
243
|
+
</div>
|
244
|
+
</div>
|
245
|
+
</div>
|
246
|
+
|
247
|
+
```html
|
248
|
+
<div class="content-list">
|
249
|
+
<a class="content-list-item">...</a>
|
250
|
+
</div>
|
251
|
+
```
|
252
|
+
|
253
|
+
in Kombination mit dem Media-Modul:
|
254
|
+
|
255
|
+
<div class="tc-example">
|
256
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
257
|
+
<h2 class="underline">Headline</h2>
|
258
|
+
<div class="content-list">
|
259
|
+
<a class="content-list-item media" href="javascript: void(0);">
|
260
|
+
<div class="media-left media-top">
|
261
|
+
<div class="img-frame img-frame-small"><img src="assets/play.jpg" class="img-thumbnail" width="38" height="28" alt="Junge mit Hut horizontal"></div>
|
262
|
+
</div>
|
263
|
+
<div class="media-body">
|
264
|
+
<div class="media-heading">Entry One</div>
|
265
|
+
</div>
|
266
|
+
</a>
|
267
|
+
<a class="content-list-item media" href="javascript: void(0);">
|
268
|
+
<div class="media-left media-top">
|
269
|
+
<div class="img-frame img-frame-small"><img src="assets/play_square.jpg" class="img-thumbnail" width="38" height="38" alt="Junge mit Hut quadratisch"></div>
|
270
|
+
</div>
|
271
|
+
<div class="media-body">
|
272
|
+
<div class="media-heading">Entry</div>
|
273
|
+
</div>
|
274
|
+
</a>
|
275
|
+
<a class="content-list-item media" href="javascript: void(0);">
|
276
|
+
<div class="media-left media-top">
|
277
|
+
<div class="img-frame img-frame-small"><img src="assets/play_vert.jpg" class="img-thumbnail" width="28" height="38" alt="Junge mit Hut vertikal"></div>
|
278
|
+
</div>
|
279
|
+
<div class="media-body">
|
280
|
+
<div class="media-heading">Entry</div>
|
281
|
+
</div>
|
282
|
+
</a>
|
283
|
+
<a class="content-list-item media" href="javascript: void(0);">
|
284
|
+
<div class="media-left media-top">
|
285
|
+
<div class="img-frame img-frame-small"><img src="assets/play.jpg" class="img-thumbnail" width="38" height="28" alt="Junge mit Hut horizontal"></div>
|
286
|
+
</div>
|
287
|
+
<div class="media-body">
|
288
|
+
<div class="media-heading">Entry</div>
|
289
|
+
</div>
|
290
|
+
</a>
|
291
|
+
</div>
|
292
|
+
</div>
|
293
|
+
</div>
|
294
|
+
|
295
|
+
```html
|
296
|
+
<div class="content-list">
|
297
|
+
<a class="content-list-item media">
|
298
|
+
<div class="media-left media-top">
|
299
|
+
<div class="img-frame img-frame-small"><img class="img-thumbnail" ...></div>
|
300
|
+
</div>
|
301
|
+
<div class="media-body">
|
302
|
+
<div class="media-heading">Entry One</div>
|
303
|
+
</div>
|
304
|
+
</a>
|
305
|
+
...
|
306
|
+
</div>
|
307
|
+
```
|
308
|
+
|
309
|
+
## Funktionale Betonungen
|
310
|
+
|
311
|
+
Mit der CSS-Klasse `.selected` kann ein Eintrag einer Content-Liste vormarkiert werden:
|
312
|
+
|
313
|
+
<div class="tc-example">
|
314
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
315
|
+
<h2 class="underline">Headline</h2>
|
316
|
+
<div class="content-list">
|
317
|
+
<a class="content-list-item selected" href="javascript: void(0);">
|
318
|
+
Menüpunkt 1<span class="sr-only">aktiv</span>
|
319
|
+
</a>
|
320
|
+
<a class="content-list-item" href="javascript: void(0);">Menüpunkt 2</a>
|
321
|
+
<a class="content-list-item" href="javascript: void(0);">Menüpunkt 3</a>
|
322
|
+
<a class="content-list-item" href="javascript: void(0);">Menüpunkt 4</a>
|
323
|
+
</div>
|
324
|
+
</div>
|
325
|
+
</div>
|
326
|
+
|
327
|
+
```html
|
328
|
+
<div class="content-list">
|
329
|
+
<a class="content-list-item selected">
|
330
|
+
Menüpunkt 1<span class="sr-only">aktiv</span>
|
331
|
+
</a>
|
332
|
+
...
|
333
|
+
</div>
|
334
|
+
```
|
335
|
+
|
336
|
+
Für Sonderfälle gibt es daneben auch noch die Brand-Variante `.content-list-item-brand`
|
337
|
+
eines Content-Listen-Eintrags:
|
338
|
+
|
339
|
+
<div class="tc-note tc-note-warning">
|
340
|
+
**Achtung:**
|
341
|
+
Die Brand-Variante darf nie in Kombination mit `.selected` auftreten,
|
342
|
+
da die Schrift scheinbar verschwinden würde.
|
343
|
+
</div>
|
344
|
+
|
345
|
+
<div class="tc-example">
|
346
|
+
<div style="width: 270px; margin: 0 auto 20px auto;">
|
347
|
+
<h2 class="underline">Headline</h2>
|
348
|
+
<div class="content-list">
|
349
|
+
<a class="content-list-item" href="javascript: void(0);">Menüpunkt 1</a>
|
350
|
+
<a class="content-list-item" href="javascript: void(0);">Menüpunkt 2</a>
|
351
|
+
<a class="content-list-item content-list-item-brand" href="javascript: void(0);">Menüpunkt 3</a>
|
352
|
+
<a class="content-list-item" href="javascript: void(0);">Menüpunkt 4</a>
|
353
|
+
</div>
|
354
|
+
</div>
|
355
|
+
</div>
|
356
|
+
|
357
|
+
```html
|
358
|
+
<div class="content-list">
|
359
|
+
...
|
360
|
+
<a class="content-list-item content-list-item-brand">
|
361
|
+
Menüpunkt 3
|
362
|
+
</a>
|
363
|
+
...
|
364
|
+
</div>
|
365
|
+
```
|
366
|
+
|
367
|
+
<div class="tc-note">
|
368
|
+
**Anmerkung Barrierefreiheit:**
|
369
|
+
Die eingesetzten Farben haben meist eine Bedeutung. Um diese Bedeutung auch
|
370
|
+
beim Einsatz von Unterstützungstechnologien zu untermauern sollte der Text
|
371
|
+
in den Content-Listen auch entsprechende Aussage haben. Alternativ kann
|
372
|
+
zusätzlicher versteckter Text mit entsprechender Aussage durch
|
373
|
+
die CSS-Klasse `.sr-only` hinterlegt werden.
|
374
|
+
</div>
|
375
|
+
|