Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision fb33dc99

Von Hans Peter Schlaepfer vor fast 4 Jahren hinzugefügt

  • ID fb33dc99c6416e01668fef4378d24727cfce181b
  • Vorgänger 8da20303
  • Nachfolger 9935f385

Neues kivitendo Design neues Verzeichnis css/less

Unterschiede anzeigen:

css/less/READ_ME.md
1
# About this less stuff
2

  
3
## What is LESS?
4
Read this excellent short german overview: http://www.lesscss.de<br>
5
It is recommended to install lessc/node-less server-side.
6
LESS contains mainly CSS/LESS statements, and yes!, also pure and
7
valid CSS-Code is also accepted and compiled. The compiler (lessc) creates
8
pure and valid css code with your LESS and CSS code.
9

  
10
## How to create a style.css for kivitendo
11
First set the cursor of your terminal to <code>/css/less/</code> (<code>cd /css/less</code>)<br>
12
Use following command: <code>lessc style.less ../style.css</code><br>
13
For minifiying the output css:  <code>lessc -x style.less ../style.css</code><br>
14
Then a new <code>/css/style.css</code> is created except when errors occurs.
15

  
16
## Developing kivitendo CSS (not customizing)
17
Read style.less.<br>
18
This is the comand center for the whole less stuff.<br>
19
Variables can be set or changed in variables.less.<br>
20
Variables are efficacious in the other less files.
21

  
22
## Overriding original stuff
23
There are several overriding LESS files. Some of the files are for
24
customizing the original kivitendo LESS stuff.
25

  
26
 * <b>jquery-ui-overrides.less</b> (overrides original jquery css)
27
 * <b>main-overrides</b> (overrides a lot of kivitendo less/css stuff)
28
 * <b>custom-variables.less</b> (overrides variables in variable.less)
29
 * <b>custom.less</b> (overrides all the original kivitendo LESS stuff)
30

  
31
Overriding is useful for occurences of standard elements in a special
32
context. For example: a standard table occurs in a toggle panel or in other
33
control panels.
34

  
35
## jQuery and overriding jQuery-CSS
36
The jQuery LESS stuff contains the original jQuery CSS stuff (pure CSS).
37
Overriding the jQuery stuff (you can call it customizing for kivitendo) is
38
the best way to preserve full functionality of the jQuery JS. It is intended
39
just to change colors, font-sizes & -families etc. with the override-file
40
(jquery-overrides.less).
41

  
42
If there's a new jQuery-Version just paste the whole CSS code into the
43
corresponding LESS file. That's (almost) all, folks.
44

  
45
## Customizing kivitendo CSS (not developing)
46
For customisation do not touch the original (developers) LESS files.<br>
47
Therefore it is recommended to edit only these two files:
48

  
49
 * <b>custom-variables.less</b> (overrides variables in variable.less)
50
 * <b>custom.less</b> (overrides all the original kivitendo LESS stuff)
51

  
52
These files can be empty if you do not want to customize the kivitendo CSS
53
stuff. The original custom files contains only comments and deactivated example
54
code.
55

  
56
Customization only with these two files gives you comfort in your GIT
57
habit.
58

  
css/less/admin.less
1
// ----------------------------------------------------------------------------
2
//
3
// ADMIN-Section
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION:
7
//
8
//
9
//
10
// CONTENTS:
11
// -
12
// -
13
// -
14
// -
15
// ----------------------------------------------------------------------------
16

  
17

  
18
// login and admin
19
// PENDENT: entfernen?!?!?!
20
a.no-underlined-links,
21
a.no-underlined-links:visited,
22
a.no-underlined-links:hover {
23
  text-decoration: none !important;
24
  background-color:transparent !important;
25
  border:none;
26
}
27
a.no-underlined-links:hover {
28
  background: none;
29
}
30

  
31

  
32

  
33

  
34
// Admin section: the menu itself doesn't occupy space. So make room
35
// at the top of the div covering the whole admin area.
36
body {
37

  
38
  & + #menuv3 {
39
    top: 0 important;
40
  }
41

  
42

  
43

  
44
  div.admin {
45
    margin: 60px 0 0 0 ;
46
    //top: 60px;
47

  
48
    h1 {
49
      background-color: #fe5f14 !important;
50
      color: #ffffff;
51
      top: 30px ;
52
      position: fixed;
53
      width: 100% ;
54
      padding: 0.6em 0.5em 0.5em 0.6em;
55
      z-index: 1000;
56

  
57
      & + .wrapper {
58
        padding-top: 1.2em;
59
      //margin-top: 1.0em ;
60
      //top: 1.0em;
61
      //&:first-child{
62
      //padding-top: 2.0em;
63
      //}
64
      }
65
    }
66

  
67
    .tabwidget {
68
      //top: 35px ;
69
      padding: 2.4em 0 0 0 !important;
70
      .ui-tabs-nav{
71
        top: 66px;
72
      }
73
      .ui-tabs-panel {
74
        padding: 2.0em 1.0em 1.0em 1.0em ;
75
        overflow: hidden;
76
        height: auto;
77
        min-height: 300px ;
78
      }
79
    }
80
    & > form{
81
      display: block ;
82
      margin-top: 1px ;
83
      padding-top: 1.2em ;
84
    }
85
    &> form {
86
      //padding-top: 3.8em ;
87
    }
88

  
89

  
90

  
91
    .message{
92
      &_error,
93
      &_hint,
94
      &_info,
95
      &_warning,
96
      &_ok{
97
        //margin-top: 70px ;
98

  
99
      }
100
    }
101

  
102

  
103

  
104
  }
105

  
106

  
107
}
108

  
109

  
110

  
111

  
112

  
113

  
114

  
115

  
css/less/buttons.less
1
// ----------------------------------------------------------------------------
2
//
3
// BUTTONS (FORM BUTTONS & LINKS AS BUTTONS)
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION: all kind of buttons
7
//
8
// CONTENTS:
9
// - FORM BUTTONS
10
//   - input, button
11
//     - .clear
12
//     - Dimensions
13
//   - button.icon
14
//   - Action STRONG (submission to server page)
15
//   - Action SOFT/NEUTRAL (no submission to server page)
16
//   - button
17
//     - .below
18
// - LINK AND LABELS DESIGNED AS BUTTONS
19
// - BUTTONS CONTAINER
20
// - IMAGE-BUTTONS
21
// ----------------------------------------------------------------------------
22

  
23

  
24

  
25
// --------------------------------------
26
// FORM BUTTONS
27
// --------------------------------------
28
// At first we tried to nest the buttons within the form element,
29
// but it is not possible because some forms do not have a form element
30
// (e.g. print dialog)
31
//form {
32

  
33
  // General
34
  input[type="button"],
35
  input[type="submit"],
36
  input[type="reset"],
37
  button {
38

  
39
    .mx-button ; // Mixin
40

  
41
    &.clear { clear: left; }
42

  
43
    // DIMENSIONS
44
    &.wi-verysmall   { min-width: @input-wi-verysmall   ; }
45
    &.wi-small       { min-width: @input-wi-small       ; }
46
    &.wi-mediumsmall { min-width: @input-wi-mediumsmall ; }
47
    &.wi-normal      { min-width: @input-wi-normal      ; }
48
    &.wi-lightwide   { width:     @input-wi-lightwide   ; }
49
    &.wi-wide        { width:     @input-wi-wide        ; }
50
    &.wi-wider       { width:     @input-wi-wider       ; }
51
    &.wi-verywide    { width:     @input-wi-verywide    ; }
52
    &.wi-tiny {
53
      width: auto ;
54
      padding: 0.16em 0.2em 0.1em 0.2em;
55
      margin: -0.3em 0 0 0.2em;
56
      //float: right;
57
      display: inline-block;
58
      font-size: 84% ;
59
      min-height: 23px;
60
      max-height: 23px;
61
    }
62
    &.wi-verytiny{
63
      font-size: 8pt !important;
64
      padding: 0.0em 0.3em 0.1em 0.3em;
65
      display: inline-block;
66
      min-height: 17px;
67
      max-height: 17px;
68
    }
69

  
70

  
71
  } // /input[type="button etc."] /button
72

  
73
  button.icon{
74
    padding:    0 ;
75
    margin:     0 ;
76
    background: none !important;
77
    border:     none;
78
    display: inline-block;
79
    img { vertical-align: middle ; }
80
  }
81

  
82
  // -------------------
83
  // Action STRONG (submission to server page)
84
  input[type="submit"],
85
  input[type="button"],
86
  input[type="button"].button,
87
  button[type="submit"],
88
  button[type="button"] {
89
    color:            @btn-default-color ;
90
    background-color: @btn-default-bg;
91
    border-color:     @btn-default-border ;
92
    &:hover{
93
      color:            @btn-default-hover-color ;
94
      background-color: @btn-default-hover-bg;
95
      border-color:     @btn-default-hover-border ;
96
    }
97
    &:active,
98
    &:focus{
99
      color:            @btn-default-active-color ;
100
      background-color: @btn-default-active-bg;
101
      border-color:     @btn-default-active-border ;
102
    }
103
  }
104

  
105
  // -------------------
106
  // Action SOFT/NEUTRAL (no submission to server page)
107
  input[type="button"].neutral,
108
  input[type="submit"].neutral,
109
  input[type="reset"],
110
  input[type="reset"].neutral,
111
  button.neutral,
112
  button[type="reset"] {
113
    color:              @btn-neutral-color ;
114
    background-color:   @btn-neutral-bg;
115
    border-color:       @btn-neutral-border ;
116
    &:hover {
117
      color:            @btn-neutral-hover-color ;
118
      background-color: @btn-neutral-hover-bg;
119
      border-color:     @btn-neutral-hover-border ;
120
    }
121
    &:active,
122
    &:focus {
123
      color:            @btn-neutral-active-color;
124
      background-color: @btn-neutral-active-bg;
125
      border-color:     @btn-neutral-active-border ;
126
    }
127
  }
128

  
129
  // PENDENT: Neu
130
  input[type="button"]{
131
    &.below{
132
      clear: both !important;
133
      float: none;
134
      margin-top: 0.3em;
135
      overflow: hidden ;
136
    }
137
  }
138
//} // /form
139

  
140

  
141

  
142

  
143
// --------------------------------------
144
// LINKS DESIGNED AS BUTTONS
145
// They may be placed inside or outside a form
146
// --------------------------------------
147
a {
148
  &.button {
149

  
150
    .mx-button ;
151

  
152
    &.below { clear: both !important; }
153

  
154
    // STANDARD colors
155
    .mx-button-standard ;
156
    .mx-button-standard-hover-focus ;
157

  
158
    // NEUTRAL (no Submission)
159
    &.neutral {
160
      &:link,
161
      &:visited{
162
        .mx-button-neutral ; // Mixin
163
      }
164
      .mx-button-neutral-hover-focus ; // Mixin
165
    } // /.neutral
166

  
167
    &.wi-smallest     { width:     @input-wi-smallest    ; }
168
    &.wi-verysmall    { width:     @input-wi-verysmall   ; }
169
    &.wi-small        { width:     @input-wi-small       ; }
170
    &.wi-mediumsmall  { width:     @input-wi-mediumsmall ; }
171
    &.wi-normal       { width:     @input-wi-normal      ; }
172
    &.wi-lightwide    { width:     @input-wi-lightwide   ; }
173
    &.wi-wide         { width:     @input-wi-wide        ; }
174
    &.wi-wider        { min-width: @input-wi-wider       ; }
175
    &.wi-verywide     { min-width: @input-wi-verywide    ; }
176
    // Tiny button (one letter button)
177
    &.wi-tiny {
178
      display:            inline-block;
179
      width:              auto ;
180
      padding:            0.16em 0.2em 0.1em 0.2em;
181
      margin:            -0.3em 0 0 0.2em;
182
      font-size:          84% ;
183
    }
184

  
185
    // Toggle (for filters e.g.)
186
    &.toggle {
187
      &.off::after{
188
        content:                    " ▸";
189
        padding-right:              1.0em;
190
      }
191
      &.on::after {
192
        content:                    " ▾";
193
        padding-right:              1.0em;
194
      }
195
      &.with-panel{
196
        margin-bottom:              0 ;
197
        border-bottom: none;
198
        border-bottom-left-radius:  0px ;
199
        border-bottom-right-radius: 0px ;
200
      }
201
      &:hover{
202
        background-color:           @btn-neutral-bg !important;
203
        border-color:               @btn-neutral-border  !important ;
204
        color:                      @btn-neutral-color;
205
        text-decoration:            none;
206
      }
207
    } // /.toggle
208
  } // /.button
209
}// /a
210

  
211

  
212

  
213
// --------------------------------------
214
// LABELS DESIGNED AS BUTTONS
215
// They may be placed inside or outside a form
216
// --------------------------------------
217
#content label.button {
218

  
219
  .mx-button ; // Mixin
220

  
221
  // STANDARD colors
222
  .mx-button-standard ; // Mixin
223

  
224
  .mx-button-standard-hover-focus ; // Mixin
225

  
226
  // NEUTRAL (no Submission)
227
  &.neutral {
228
    .mx-button-neutral ; // Mixin
229
    .mx-button-neutral-hover-focus ; // Mixin
230
  } // /.neutral
231

  
232
} // /.button
233

  
234

  
235

  
236
// --------------------------------------
237
// BUTTONS CONTAINER
238
// --------------------------------------
239
// Container fuer Buttons
240
div.buttons {
241
  padding:                1.0em ;
242
  clear:                  left ;
243
  display:                block;
244
  // PENDENT: anschauen, ist fuer Anzeige von Positionsdetails
245
  &.positions {
246
    margin:               0 0 -2.0em 26.0em;
247
    padding:              0em;
248
  }
249
  &.below {
250
    padding:              0 ;
251
    margin:               0 ;
252
  }
253
}
254
.col > .buttons,
255
.wrapper * .buttons {
256
  padding:                1.0em 1.0em 1.0em 0 !important;
257
}
258

  
259

  
260

  
261
// --------------------------------------
262
// IMAGE BUTTONS ()
263
// --------------------------------------
264
.button-image {
265
  display: inline-block ;
266
  // Info or details button
267
  &.info {  }
268
  // Delete (cross) button
269
  &.delete {  }
270
  // Edit (pencil) button
271
  &.edit {  }
272
  // Map (globus / planet earth) button
273
  &.map { }
274
}
275
td,
276
th {
277
  .button-image { vertical-align: middle; }
278
}
279
input[type="button"].button-image{
280
  &.delete {
281
  background-image: url("image/cross.png");
282
  background-repeat: no-repeat;
283
  background-position: 0 0;
284
  color: #fff;
285
  background-color:transparent;
286
  border-color: none;
287
  border-width: 0;
288
  }
289
}
290

  
css/less/common-OUT.less
1
// This file is not effacious. It is intended to delete it in the end.
2

  
3

  
4

  
5
input.grow_on_focus {
6
    width: 20px;
7
    transition:         width 0.1s;
8
    -moz-transition:    width 0.1s;
9
    -webkit-transition: width 0.1s;
10
    -o-transition:      width 0.1s;
11

  
12
    &:focus { width: 150px }
13

  
14
}
15

  
16
/* quirk to force certain constructs to block context  */
17
.block-context { overflow: hidden }
18

  
19

  
20
/* various oneshot decoration for legacy purpose. dont use  */
21
.small-text { font-size: @font-size-small; }
22
.bold       { font-weight: bold ;}
23

  
24
.float-left  { float: left;  }
25
.float-right { float: right; }
26

  
27

  
28
/* position  */
29
.position-relative { position: relative; }
30
.position-absolute { position: absolute; }
31

  
32

  
css/less/common.less
1
// ----------------------------------------------------------------------------
2
//
3
// COMMON PROPERTIES
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION:
7
//
8
//
9
//
10
// CONTENTS:
11
// - HTML
12
// - BODY
13
// - DIVs & BOX-SIZING
14
// - CLEARFIX
15
// - MEDIA
16
// - CTI
17
// - INTERACT
18
// - CURSOR
19
// - CKEDITOR
20
// - PENDENT: bereinigen, bitte!
21
// ----------------------------------------------------------------------------
22

  
23

  
24

  
25

  
26
// --------------------------------------
27
// HTML
28
// --------------------------------------
29

  
30
html {
31
  // show scrollbar every time
32
  overflow-y: scroll;
33
}
34

  
35

  
36

  
37

  
38
// --------------------------------------
39
// BODY
40
// --------------------------------------
41

  
42
body {
43
  // don't use this IE stuff anymore!!!
44
  //behavior:url("csshover.htc") ;
45
  padding: 0;
46
  margin: 0 ;
47
}
48

  
49

  
50

  
51

  
52
// --------------------------------------
53
// DIVS & BOX-SIZING
54
// --------------------------------------
55

  
56
div, 
57
p,
58
span, 
59
input, 
60
textarea,
61
select, 
62
button,
63
a.button,
64
table, 
65
col,
66
th,
67
td
68
{
69
  box-sizing: border-box;
70
}
71

  
72

  
73

  
74

  
75
// --------------------------------------
76
// CLEARFIX
77
// --------------------------------------
78

  
79
// class to fix container around floats
80
.clearfix:after {
81
  clear:both;
82
  content:".";
83
  display:block;
84
  height:0;
85
  visibility:hidden;
86
}
87

  
88

  
89

  
90

  
91
// --------------------------------------
92
// MEDIA
93
// --------------------------------------
94

  
95
@media screen   { .noscreen { display: none; } }
96
@media print    { .noprint  { display: none ;} }
97
@media handheld { .nomobile { display: none; } }
98

  
99

  
100

  
101

  
102
// --------------------------------------
103
// CTI
104
// --------------------------------------
105

  
106
a.cti_call_action {
107
  //display: inline-block;
108
  display: block;
109
  padding-left: 18px;
110
  top: 2px;
111
  vertical-align: middle;
112
  background-image: url(../image/icons/16x16/phone.png);
113
  background-repeat: no-repeat;
114
}
115

  
116

  
117

  
118

  
119
// --------------------------------------
120
// INTERACT
121
// --------------------------------------
122

  
123
// clickable text anchors, usually with attached javascript handlers
124
.interact { color: gray }
125
.interact:hover { color: black; }
126

  
127

  
128

  
129

  
130
// --------------------------------------
131
// CURSOR
132
// --------------------------------------
133

  
134
.cursor-default { cursor: default }
135
.cursor-pointer { cursor: pointer }
136
.cursor-help    { cursor: help }
137

  
138

  
139

  
140

  
141

  
142
// --------------------------------------
143
// CKEditor
144
// --------------------------------------
145

  
146
// PENDENT: schauen, wie man das am besten hinkriegt,
147
// ggf. in CKEditor-JS-Dateien anpassen, was aber nicht nachhaltig ist
148
// CKEditor: Padding reduziert
149
.cke_contents iframe html body.cke_editable{
150
  padding: 0;
151
  margin: 0;
152
}
153

  
154

  
155

  
156

  
157

  
158
// --------------------------------------
159
// PENDENT
160
// --------------------------------------
161

  
162

  
163

  
164
// PENDENT: OBSOLET diese Klassen entfernen
165
 //  Internals (waren im HTML-Code eingebaut)
166
 //  ersetzen bzw. Verlagern in Tabellen ggf. Paragrafen oder DIVs
167
.top_border {
168
  border-top: solid black;
169
  border-width: 4px;
170
}
171
 //  Internals (waren im HTML-Code eingebaut)
172
 //  ersetzen bzw. Verlagern in Tabellen ggf. Paragrafen oder DIVs
173
.bottom_border {
174
  border-bottom: solid black;
175
  border-width: 1px;
176
}
177

  
178

  
179

  
css/less/control_panels.less
1
// ----------------------------------------------------------------------------
2
//
3
// CONTROL PANELS
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION: all kind boxes/tools for selecting, including and entering data
7
//
8
// CONTENTS:
9
// - FORM-ADDITION
10
// - SELECT ITEM
11
// - FILTER-TOGGLE-PANEL
12
// - INPUT-PANEL
13
// - PAGINATE
14
// - JUMP-TO
15
// ----------------------------------------------------------------------------
16

  
17

  
18

  
19
// --------------------------------------
20
// CONTROL-PANEL
21
// --------------------------------------
22
// General Class for all control panels
23
.control-panel {
24
  border:           @controlpanel-border;
25
  background-color: @controlpanel-bg;
26
  border-radius:    @controlpanel-radius;
27
  color:            red ;
28
  overflow:         hidden ;
29
}
30

  
31
// --------------------------------------
32
// FORM-ADDITION
33
// --------------------------------------
34
// Settings for including fields in a report
35
.form-addition{
36
  padding:          @controlpanel-padding-bold ;
37
  margin:           @controlpanel-margin !important ;
38
  width:            auto !important ;
39
  display:          inline-block ;
40

  
41
  h3{
42
    color:          @controlpanel-h3-color  !important;
43
    font-size:      @controlpanel-h3-size   !important;
44
    font-weight:    @controlpanel-h3-weight !important;
45
    margin: 0.3em 0 0.1em 0 !important;
46
    padding: 0 ;
47
  }
48
  h4{
49
    color:        @controlpanel-h4-color !important;;
50
    font-size:    @controlpanel-h4-size;
51
    font-weight:  @controlpanel-h4-weight;
52
    font-style:   @controlpanel-h4-style;
53
  }
54

  
55
  div.list{
56
    margin-top: 0.2em !important ;
57
    &.col{
58
//       min-width: 130px ;
59
//       max-width: 240px ;
60
    }
61
  }
62
} // /.form-addition
63

  
64

  
65

  
66
// --------------------------------------
67
// SELECT ITEM
68
// --------------------------------------
69
// for selecting a hidden Record (e.g. Contacts, Delivery Address etc.)
70
.select-item{
71
  display:          inline-block ;
72
  width:            auto ;
73
  height:           auto;
74
  padding:          @controlpanel-select-item-padding ;
75
  margin:           @controlpanel-margin ;
76
  border:           @controlpanel-border ;
77
  border-radius:    @controlpanel-radius ;
78
  background-color: @controlpanel-bg ;
79
  color:            @controlpanel-color ;
80
  font-size:        @font-size-smaller ;
81
  input,
82
  select{
83
    margin-left:    0.6em ;
84
  }
85
  span.label{
86
    float:          left ;
87
    color:          @controlpanel-color ;
88
  }
89
  table{
90
    margin: 0 ;
91
    td, th{ color:  @controlpanel-color ; }
92
  }
93

  
94
  // see /controller.pl?action=FinancialOverview
95
  // PENDENT: anders loesen oder einfacher benennen
96
  .floating-boxes {
97
    display: table ;
98
    margin: 0.4em 0 0.8em 0 ;
99

  
100
    .floating-box {
101
      display: table-cell ;
102
      float: left ;
103
      font-size: @font-size-smaller ;
104
      height: 1.9em ;
105
      vertical-align: middle;
106
      padding: 0 2.0em 0 0 ;
107
      .button, button{
108
        margin: 0 ;
109
      }
110
      label,
111
      span.label{
112
        width: auto;
113
        display: inline-block;
114
        height: 160%;
115
      }
116
      input[type="checkbox"]{ margin: 0 0.4em 0 0 ; }
117
      select { margin: -0.3em 0 0 0; }
118
    }
119
  }
120
} // /.select-item
121
// Select function within standard wrapper
122
.ui-tabs-panel > .select-item {
123
  margin:     @contentbox-margin;
124
}
125
.wrapper > .select-item {
126
  margin:     0.8em 0 1.0em 0 ;
127
}
128

  
129

  
130

  
131
// --------------------------------------
132
// FILTER-TOGGLE-PANEL
133
// --------------------------------------
134
// for togglin a filter panel
135
// see inlcude file /templates/webpages/common/filter-toggle.html
136
.toggle_panel{
137
  & > a.button.toggle {
138
    padding: 0.2em 0 0.2em 1.4em;
139
    &:hover {
140
      background-color: @controlpanel-bg !important;
141
      text-decoration: underline ;
142
    }
143
  }
144
  span.summary {
145
    font-size: @font-size-small;
146
    padding-left: 2.0em;
147
    color: @gray-mediumdark;
148
  }
149
  .toggle_panel_block {
150
    display:  block;
151
    overflow: hidden;
152
    padding:          @controlpanel-padding ;
153
    margin:           2em 1em 0em 0; ;
154

  
155
    border-bottom-left-radius:  @controlpanel-radius ;
156
    border-bottom-right-radius: @controlpanel-radius ;
157
    border-top-right-radius:    @controlpanel-radius ;
158
    margin-top: -1px ;
159

  
160
    .buttons{
161
      clear: left ;
162
      padding: 0 !important;
163
      margin: 0;
164
    }
165
  }
166

  
167
  .tbl-horizontal {
168
    th{ color: @brand-darkest ; }
169
  }
170

  
171
}
172

  
173

  
174

  
175

  
176
// --------------------------------------
177
// INPUT-PANEL
178
// --------------------------------------
179
// Panel for entering data via jQuery-Scripts etc.
180
#content .input-panel {
181
  overflow: hidden;
182
  padding:                    @controlpanel-padding ;
183
  margin:                     @margin-from-wrapper ;
184
  background-color:           @controlpanel-bg;
185
  border:                     @controlpanel-border ;
186
  border-bottom-left-radius:  @controlpanel-radius ;
187
  border-bottom-right-radius: @controlpanel-radius ;
188
  border-top-right-radius:    @controlpanel-radius ;
189
  border-top-left-radius:     @controlpanel-radius ;
190
  width: auto ;
191
  min-width: 30% ;
192
  //max-width: 70% ;
193
  display: inline-block;
194

  
195
  & > h3 {
196
    margin-top: 0 ;
197
  }
198
  p      {
199
    font-size: @font-size-smaller ;
200
    margin: 0 0 0.4em 0 ;
201
  }
202
}
203

  
204

  
205

  
206
// --------------------------------------
207
// PAGINATE
208
// --------------------------------------
209
.paginate{
210
  display:          inline-block ;
211
  width:            auto ;
212
  height:           auto;
213
  padding:          0;
214
  margin:           @controlpanel-margin ;
215
  border:           @controlpanel-border;
216
  border-radius:    @controlpanel-radius ;
217
  background-color: @controlpanel-bg;
218
  color:            @controlpanel-color ;
219

  
220
  & > a,
221
  & > span {
222
    padding: 0.4em 0.6em !important;
223
    margin-top: -1px;
224
  }
225

  
226
  .paginate-prev {
227
    display:          inline-block ;
228
    &::before{ content: "◄"; }
229
    &:hover{
230
      border-bottom-left-radius: @controlpanel-radius;
231
      border-top-left-radius:    @controlpanel-radius;
232
    }
233
  }
234
  .paginate-next {
235
    display:          inline-block ;
236
    &::after{ content: "►"; }
237
    &:hover{
238
      border-bottom-right-radius: @controlpanel-radius;
239
      border-top-right-radius:    @controlpanel-radius;
240
    }
241
  }
242
  .paginate-page {
243
    display:          inline-block ;
244
    padding: 0 ;
245
  }
246
  span.paginate-page {
247
    background-color: @controlpanel-active-bg;
248
    color:            @controlpanel-active-text;
249
  }
250
  a:link, a:visited{  }
251
  a:hover,
252
  a:active{
253
    background-color: @controlpanel-bg-hover;
254
    color:            @controlpanel-bg-hover-text;
255
    text-decoration: none;
256
  }
257
}
258

  
259

  
260

  
261
// --------------------------------------
262
// JUMP-TO
263
// --------------------------------------
264
// for jumping e.g. to a address within a browser window
265
// PENDENT: anders und allgemein loesen
266
table.jump-to {
267
  &.right { float: right; }
268

  
269
  border: @controlpanel-border;
270
  border-radius: 0.2em ;
271
  background-color: @controlpanel-bg;
272
  margin: 0.8em 2.0em 0 1.2em !important;
273
}
274

  
275

  
276

  
277
// -------------------
278
// FLOAT-CELLS TABLE
279
// Table with left-floating cell
280
div.float-cells-table{
281
  display: block ;
282
  width: 100% ;
283
  overflow: hidden;
284
  font-size: 80% ;
285

  
286
  div.caption{
287
    float: left;
288
    display: block;
289
    width: auto:
290
    padding: 0 2.0em 0 0;
291
    margin: 0;
292

  
293
  }
294
  div.cells{
295
    float: left;
296
    display: block;
297
    overflow: hidden;
298
    width: 100%;
299
     background-color: #F66;
300

  
301
    div.cell{
302
      float: left;
303
      padding: 0 2.0em 0 0;
304
      border-right: 1px #fff solid;
305
      background-color: #FC6;
306
    }
307
  }
308
}
309

  
310

  
311

  
css/less/custom.less
1
// ----------------------------------------------------------------------------
2
//
3
// CUSTOM LESS STUFF (ONLY FOR OVERRIDES OF THE STANDARD-KIVITENDO-STUFF)
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION: Place your custom less/css stuff here
7
// Override the Kivitendo-Less-Stuff only in custom.less
8
//
9
//
10
//
11
// CONTENTS:
12
// - SUBJECT
13
// - - My special class
14
// - - My overridden class // PENDENT: bessere Beschreibung
15
// ----------------------------------------------------------------------------
16

  
17

  
18
//
19
// **********************************
20
// MY SPECIAL CLASS
21
// **********************************
22

  
23
//.my-class-padding: 0.2em ; // just an example
24

  
25
//
26
// **********************************
27
// MY OVERRIDDEN CLASSES // PENDENT: bessere Beschreibung
28
// **********************************
29

  
30
// You can delete or disable/enable the following CSS code
31
// This is just an exemple
32
// Do run "lessc style.less ../style.css" in your terminal session with cursor on the folder /css/less
33

  
34
/* Custom overrides */
35

  
36
/*
37
table.tbl-horizontal {
38
  display: table ;
39
  background-color: #ccc;
40
  border-bottom: 12px #ccc solid ;
41
  border-top-left-radius:   0 ;
42
  border-top-right-radius:  0 ;
43
  border-bottom-left-radius:   6px ;
44
  border-bottom-right-radius:  6px ;
45

  
46
  & > caption{
47
    color:                   #ffffff !important;
48
    background-color:        @gray-mediumdark;
49
    padding-left:            0.8em;
50
    border-top-left-radius:  6px ;
51
    border-top-right-radius: 6px ;
52
    //margin: -24px -12px 0.6em -12px ;
53
    & > a, & > a:link, & > a:visited { decoration: none; color: #fff !important; }
54
  }
55
  th{ padding-left: 0.3em; }
56
  td{ padding-right: 0.3em; }
57
  tbody { border-top: 8px #ccc solid; }
58
  &.checkered {
59
     tbody { border-top: none ; }
60
     border-bottom: none;
61
  }
62
  tbody > tr > td:first-child,
63
  tbody > tr > th:first-child,
64
  thead > tr > th:first-child{
65
    padding-left: 1.0em ;
66
  }
67
  tbody > tr:first-child {
68
    & > th { padding-top: 0.5em ; }
69
    & > td { padding-top: 0.5em ; }
70
  }
71
  th.caption{
72
    color:              #fff !important;
73
    background-color:   @gray-mediumdark;
74
    padding:            0.4em 0 0.3em 0.8em;
75
    border-top:         6px solid #ccc;
76
    border-bottom:      8px solid #ccc;
77
    margin-bottom: 0.6em ;
78
    //margin: -24px -12px 0.6em -18px ;
79
  }
80
}
81

  
82
.col{
83
  padding-bottom: 0.4em ;
84

  
85
  & > table.tbl-horizontal {
86
    margin-right: 0 !important;
87
    //border-top-left-radius:  0 ;
88
    //border-top-right-radius: 0 ;
89
    border-radius: 0 ;
90
    padding-bottom: 0 ;
91

  
92
    caption{
93
      border-top-left-radius:  0 ;
94
      border-top-right-radius: 0 ;
95
    }
96
  }
97
  & > table.tbl-horizontal:first-child{
98
    border-top-left-radius:     0 ;
99
    border-top-right-radius:    0 ;
100
    border-bottom-left-radius:  0 ;
101
    border-bottom-right-radius: 0 ;
102
    margin-bottom: 0 ;
103
    caption{
104
      border-top-left-radius:  6px ;
105
      border-top-right-radius: 6px ;
106
    }
107
  }
108
  & > table.tbl-horizontal:last-child{
109
    border-bottom-left-radius:  6px  ;
110
    border-bottom-right-radius: 6px ;
111
    margin-bottom: 0 ;
112
  }
113
}
114

  
115
.cke_editable{
116
  margin-left: 0.0em !important;
117
}
118
 */
119

  
120

  
css/less/custom_ tables.less
1
//  Benutzerdefinierte Tabellen-Angaben 
2
//  Diese uebersteuern alle Anweisungen aus tables.less 
3
//  Es dürfen nur Tabellen mit Zusatzklassen oder mit IDs uebersteuert werden. 
4
//  Uebersteuern Sie nur wenige, bestehende Elemente, um ein einheitliches 
5
//  Design zu gewaehrleisten 
6
//  Diese Datei wird am Schluss von tables.less includiert. 
7

  
8
table{
9

  
10
    //  Zusatzklasse zur Tabelle (Beispiel) 
11
    //  Betreff: xyz 
12
    //  Autor: hanspeter.schlaepfer@revamp-it.ch 
13
    &.meine-tabellen-klasse {
14

  
15
    }
16

  
17
    //  Tabelle mit spezieller ID (Beispiel) 
18
    //  Betreff: xyz 
19
    //  Autor: hanspeter.schlaepfer@revamp-it.ch 
20
    &#meine-spezielle-tabelle {
21

  
22
    }
23

  
24

  
25
    //  Tabelle mit Konten-Uebersicht (Kontoplan) 
26
    //  Betreff: Kontoplan 
27
    //  Autor: hanspeter.schlaepfer@revamp-it.ch 
28
    &#konten-plan {
29
        tbody tr{
30
            td:first-child {
31
                text-align: right !important;
32
            }
33
            &.heading td {
34
                font-size: @font-size-large;
35
                border-top: 1px #999 solid;
36
            }
37
        }
38
        tr:first-child {
39
             &.heading td {
40
                border: none;
41
            }
42
        }
43
    }
44

  
45

  
46
// PENDENT: genauer anschauen
47

  
48
  &#eurtable {
49
    border-collapse: collapse;
50
    width: 100%;
51
  }
52

  
53
  tr.category {
54
    //  background set via jquery 
55
  }
56

  
57
  tr.chart {
58
    border: 0;
59
  }
60

  
61
  td.chartname {
62
    padding-left: 50px;
63
  }
64

  
65
  tr.chartrow {
66
    font-size: 75%;
67
  }
68

  
69
  .guv_row_background {
70
    background:#f0f0f0;
71
  }
72

  
73
  .tr_error {
74
    background-color: #ffc9c9;
75
  }
76

  
77

  
78
}
css/less/custom_variables.less
1
// ----------------------------------------------------------------------------
2
//
3
// CUSTOM VARIABLES (ONLY FOR OVERRIDES IN CUSTOM.LESS)
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION: Place your custom variables here
7
// For more information about variables see variables.less
8
// Copy variables from variable.less into this files here
9
// Do not change variables and less stuff in the original source files
10
// then you will be happy with your git work
11
//
12
// CONTENTS:
13
// - SUBJECT
14
// - - My override variables
15
// - - My own variables
16
// ----------------------------------------------------------------------------
17

  
18

  
19
//
20
// **********************************
21
// MY OVERRIDE VARIABLES
22
// **********************************
23

  
24

  
25

  
26

  
27

  
28

  
29
//
30
// **********************************
31
// MY SPECIAL VARIABLES
32
// **********************************
33

  
34
//@my-class-padding: 0.2em ; // just an example
css/less/developing.less
1
// ----------------------------------------------------------------------------
2
//
3
// Developing-Section
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION:
7
// This LESS-file is just for us developers.
8
// Don't be ashamed to disable the rendering of the following LESS/CSS-Code
9
// in the file style.less.
10
//
11
//
12
// CONTENTS:
13
// -
14
// -
15
// -
16
// -
17
// ----------------------------------------------------------------------------
18

  
19

  
20
body.developing{
21

  
22
  &>header{
23
     background-color: @h1-bg;
24
     display: block;
25
     overflow: hidden;
26
    h1{
27
      float: left;
28
      color: @h1-color ;
29
      padding: 1.0em;
30
    }
31
    nav{
32
      float: right;
33
      padding: 1.0em;
34
      a:link,
35
      a:visited {
36
        color: white ;
37
      }
38
    }
39
  }
40
  .wrapper{
41
    p,
42
    ul,
43
    ol,
44
    li,
45
    h2,
46
    h3,
47
    h4{
48
      clear: both;
49
      width: 60.0em;
50
      max-width: 60em;
51
    }
52
  }
53
  & > p,
54
  & > h2,
55
  & > h3,
56
  & > h4 {
57
    margin-left: 0.8em ;
58
  }
59
  h2, h3, h4 { font-weight: bold ; color: #000 !important; clear: left; padding-left: 0 !important; }
60
  h2{ font-size: 130%;  }
61
  h3{ font-size: 120%;  }
62
  h4{ font-size: 110%;  }
63
  pre {
64
    margin: 0 0 1.0em 0 ;
65
    padding: 0.6em ;
66
    border: 1px #000 solid ;
67
    background-color: #ddd ;
68
    display: inline-block;
69
    clear: both;
70
    code{ padding: 0 ; }
71
  }
72
  div.code-highlighted{
73
    margin: 0 0 1.0em 0 ;
74
    padding: 0.6em ;
75
    border: 1px #000 solid ;
76
    background-color: #ddd ;
77
    display: inline-block;
78
  }
79

  
80
  p.picture{
81
    background-color: #fff;
82
    padding: 0.8em;
83
    border: 1px @gray-medium solid;
84
    display: inline-block;
85
    width: auto;
86
  }
87
  .wrapper{
88

  
89
    .tbl-horizontal{
90
      border: 1px black solid !important;
91
      border-collapse: collapse;
92
      tbody {
93
        border-top: none;
94
      }
95
      caption,th { padding-left: 0.6em ; }
96

  
97
      th.caption {
98
        border-top: none;
99
        border-bottom: none;
100

  
101
      }
102

  
103

  
104
      &.test,
105
      &.test-plain{
106
        th{
107
          //border: 1px black solid !important;
108
          padding-left: 0.3em;
109
        }
110
        td{
111
          //border: 1px black solid ;
112
          display: block;
113
          overflow: visible;
114
          border-bottom: 1px @gray-mediumdark solid ;
115
        }
116
        tr:last-child td { border: none ;}
117

  
118
      }
119
    }
120

  
121
    &.clear{
122
      .tbl-horizontal{
123
        clear: both ;
124
      }
125
    }
126

  
127
    table.tbl-list > thead > tr th:first-child, table.tbl-list > tbody > tr td:first-child {
128
        padding-left: 0 !important;
129
    }
130

  
131
    div.test-box{
132
      font-size: 80% ;
133
      overflow: visible;
134
      padding: 0.3em 0.5em ;
135
      background-color: #9D9E9D;
136
      float: left;
137
      border: 1px #000 dotted ;
138
    }
139

  
140
  } // /.wrapper
141

  
142
} // /body.developing
css/less/developing_demo.less
1
// ----------------------------------------------------------------------------
2
//
3
// DEVELOPERS DEMO
4
//
5
// ----------------------------------------------------------------------------
6
// DESCRIPTION: All colors for the demo color page in /css/developing/farben-demo.html
7
// use following statement for creating the demo-css-file:
8
//   lessc developing-demo.less ../css/developement/farben-demo.css
9
//
10
// For creating the HTML demo blocks from variables.less use following grep patterns
11
//   @([a-z-]+)[ ]*:[ ]*[@][0-9a-z-]+[ ]*;         replace with:
12
//   .\1 { background-color: @\1 } or .$1 { background-color: @$1 }
13
// ----------------------------------------------------------------------------
14

  
15

  
16
@import 'variables';
17

  
18
// --------------
19
// Grey shades
20
.gray-darker { background-color: @gray-darker }
21
.gray-dark { background-color: @gray-dark }
22
.gray-mediumdark { background-color: @gray-mediumdark }
23
.gray { background-color: @gray }
24
.gray-medium { background-color: @gray-medium }
25
.gray-light { background-color: @gray-light }
26
.gray-lighter { background-color: @gray-lighter }
27
.gray-morelighter { background-color: @gray-morelighter }
28
.gray-verylight { background-color: @gray-verylight }
29
.gray-superlight { background-color: @gray-superlight }
30
// --------------
31
// Divers Color Specications
32
// for message and other coloured stuff
33
// error
34
.color-red-strong { background-color: @color-red-strong }
35
.color-red-light { background-color: @color-red-light }
36
// ok
37
.color-green-strong { background-color: @color-green-strong }
38
.color-green-light { background-color: @color-green-light }
39
// info/hint
40
.color-blue-strong { background-color: @color-blue-strong }
41
.color-blue-light { background-color: @color-blue-light }
42
// warning
43
.color-orange-strong { background-color: @color-orange-strong } // more brown
44
.color-orange-light { background-color: @color-orange-light }
45
// divers
46
.rainbow-green { background-color: @rainbow-green }
47
.rainbow-blue { background-color: @rainbow-blue }
48
.rainbow-red { background-color: @rainbow-red }
49
.rainbow-yellow { background-color: @rainbow-yellow }
50

  
51
// --------------
52
// Brand colors
53

  
54
// Text (Label & data)
55
.brand-primary { background-color: @brand-primary }
56
.brand-label { background-color: @brand-label }
57
.brand-label-bg { background-color: @brand-label-bg }
58

  
59
// Messages & info types
60
.brand-info { background-color: @brand-info }
61
.brand-info-bg { background-color: @brand-info-bg }
62

  
63
.brand-ok { background-color: @brand-ok }
64
.brand-ok-bg { background-color: @brand-ok-bg }
65

  
66
.brand-warning { background-color: @brand-warning }
67
.brand-warning-bg { background-color: @brand-warning-bg }
68

  
69
.brand-error { background-color: @brand-error }
70
.brand-error-bg { background-color: @brand-error-bg }
... Dieser Diff wurde abgeschnitten, weil er die maximale Anzahl anzuzeigender Zeilen überschreitet.

Auch abrufbar als: Unified diff