aboutsummaryrefslogtreecommitdiffstats
path: root/WebContent/VAADIN/themes/base
diff options
context:
space:
mode:
Diffstat (limited to 'WebContent/VAADIN/themes/base')
-rw-r--r--WebContent/VAADIN/themes/base/base.scss4
-rw-r--r--WebContent/VAADIN/themes/base/escalator/escalator.scss120
-rw-r--r--WebContent/VAADIN/themes/base/grid/grid.scss3
3 files changed, 127 insertions, 0 deletions
diff --git a/WebContent/VAADIN/themes/base/base.scss b/WebContent/VAADIN/themes/base/base.scss
index fd3c5d067d..58274edacb 100644
--- a/WebContent/VAADIN/themes/base/base.scss
+++ b/WebContent/VAADIN/themes/base/base.scss
@@ -15,8 +15,10 @@
@import "inlinedatefield/inlinedatefield.scss";
@import "dragwrapper/dragwrapper.scss";
@import "embedded/embedded.scss";
+@import "escalator/escalator.scss";
@import "fonts/fonts.scss";
@import "formlayout/formlayout.scss";
+@import "grid/grid.scss";
@import "gridlayout/gridlayout.scss";
@import "label/label.scss";
@import "link/link.scss";
@@ -90,7 +92,9 @@ $line-height: normal;
@include base-inline-datefield;
@include base-dragwrapper;
@include base-embedded;
+ @include base-escalator;
@include base-formlayout;
+ @include base-grid;
@include base-gridlayout;
@include base-label;
@include base-link;
diff --git a/WebContent/VAADIN/themes/base/escalator/escalator.scss b/WebContent/VAADIN/themes/base/escalator/escalator.scss
new file mode 100644
index 0000000000..c6438ac9cc
--- /dev/null
+++ b/WebContent/VAADIN/themes/base/escalator/escalator.scss
@@ -0,0 +1,120 @@
+@mixin base-escalator($primaryStyleName : v-escalator) {
+
+$background-color: white;
+$border-color: #aaa;
+
+.#{$primaryStyleName} {
+ position: relative;
+ background-color: $background-color;
+}
+
+.#{$primaryStyleName}-scroller {
+ position: absolute;
+ overflow: auto;
+ z-index: 20;
+}
+
+.#{$primaryStyleName}-scroller-horizontal {
+ left: 0; /* Left position adjusted to align with frozen columns */
+ right: 0;
+ bottom: 0;
+ overflow-y: hidden;
+ -ms-overflow-y: hidden;
+}
+
+.#{$primaryStyleName}-scroller-vertical {
+ right: 0;
+ top: 0; /* this will be overridden by code, but it's a good default behavior */
+ bottom: 0; /* this will be overridden by code, but it's a good default behavior */
+ overflow-x: hidden;
+ -ms-overflow-x: hidden;
+}
+
+.#{$primaryStyleName}-tablewrapper {
+ position: absolute;
+ overflow: hidden;
+}
+
+.#{$primaryStyleName}-tablewrapper > table {
+ border-spacing: 0;
+ table-layout: fixed;
+ width: inherit; /* a decent default fallback */
+}
+
+.#{$primaryStyleName}-header,
+.#{$primaryStyleName}-body,
+.#{$primaryStyleName}-footer {
+ position: absolute;
+ left: 0;
+ width: inherit;
+ z-index: 10;
+}
+
+.#{$primaryStyleName}-header { top: 0; }
+.#{$primaryStyleName}-footer { bottom: 0; }
+
+.#{$primaryStyleName}-body {
+ z-index: 0;
+ top: 0;
+
+ .#{$primaryStyleName}-row {
+ position: absolute;
+ top: 0;
+ left: 0;
+ }
+}
+
+.#{$primaryStyleName}-row {
+ display: block;
+
+ .v-ie8 &, .v-ie9 & {
+ /*
+ * Neither IE8 nor IE9 let table rows be longer than tbody, with only
+ * "display: block". Moar hax.
+ */
+ float: left;
+ clear: left;
+
+ /*
+ * The inline style of margin-top from the <tbody> to offset the
+ * header's dimension is, for some strange reason, inherited into each
+ * contained <tr>. We need to cancel it:
+ */
+ margin-top: 0;
+ }
+
+ > td, > th {
+ /* IE8 likes the bgcolor here instead of on the row */
+ background-color: $background-color;
+ }
+}
+
+
+.#{$primaryStyleName}-row {
+ width: inherit;
+}
+
+.#{$primaryStyleName}-cell {
+ display: block;
+ float: left;
+ border: 1px solid $border-color;
+ padding: 2px;
+ white-space: nowrap;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ overflow:hidden;
+
+ /*
+ * Because Vaadin changes the font size after the initial render, we
+ * need to mention the font size here explicitly, otherwise automatic
+ * row height detection gets broken.
+ */
+ font-size: $font-size;
+}
+
+.#{$primaryStyleName}-cell.frozen {
+ position: relative;
+ z-index: 0;
+}
+
+}
diff --git a/WebContent/VAADIN/themes/base/grid/grid.scss b/WebContent/VAADIN/themes/base/grid/grid.scss
new file mode 100644
index 0000000000..9f7a2d8664
--- /dev/null
+++ b/WebContent/VAADIN/themes/base/grid/grid.scss
@@ -0,0 +1,3 @@
+@mixin base-grid($primaryStyleName : v-grid) {
+ @include base-escalator($primaryStyleName);
+} \ No newline at end of file