summaryrefslogtreecommitdiffstats
path: root/WebContent
diff options
context:
space:
mode:
authorJouni Koivuviita <jouni@vaadin.com>2012-08-17 12:36:52 +0300
committerJouni Koivuviita <jouni@vaadin.com>2012-08-17 12:36:52 +0300
commit0a7589856a0fa0867770eb1f37e26cd7c77678a2 (patch)
tree161edb1953f531e94fdbcc4c52c0a8b7b4b7f23b /WebContent
parent6031735017cd2fad28cdf64f4246e6d9914cc3ad (diff)
downloadvaadin-framework-0a7589856a0fa0867770eb1f37e26cd7c77678a2.tar.gz
vaadin-framework-0a7589856a0fa0867770eb1f37e26cd7c77678a2.zip
Added boxlayout.scss
Diffstat (limited to 'WebContent')
-rw-r--r--WebContent/VAADIN/themes/base/base.scss1
-rw-r--r--WebContent/VAADIN/themes/base/boxlayout/boxlayout.scss171
-rw-r--r--WebContent/VAADIN/themes/base/styles.scss1
3 files changed, 173 insertions, 0 deletions
diff --git a/WebContent/VAADIN/themes/base/base.scss b/WebContent/VAADIN/themes/base/base.scss
index 58f0c32af7..efe6e0cd05 100644
--- a/WebContent/VAADIN/themes/base/base.scss
+++ b/WebContent/VAADIN/themes/base/base.scss
@@ -1,6 +1,7 @@
@import "absolutelayout/absolutelayout.scss";
@import "accordion/accordion.scss";
@import "button/button.scss";
+@import "boxlayout/boxlayout.scss";
@import "caption/caption.scss";
@import "common/common.scss";
@import "csslayout/csslayout.scss";
diff --git a/WebContent/VAADIN/themes/base/boxlayout/boxlayout.scss b/WebContent/VAADIN/themes/base/boxlayout/boxlayout.scss
new file mode 100644
index 0000000000..ef0f021a0a
--- /dev/null
+++ b/WebContent/VAADIN/themes/base/boxlayout/boxlayout.scss
@@ -0,0 +1,171 @@
+/*
+TODO
+- separate styles to proper places
+- decide a good class name structure for core layouts (e.g. 'v-layout', 'v-vertical', 'v-grid' etc.)
+- use !important in carefully selected places to prevent accidental layout breakage by custom theming (e.g. alignments should be forced)
+
+*/
+
+@mixin base-boxlayout {
+
+.v-boxlayout.v-margin-top {padding-top: 12px;}
+.v-boxlayout.v-margin-right {padding-right: 12px;}
+.v-boxlayout.v-margin-bottom {padding-bottom: 12px;}
+.v-boxlayout.v-margin-left {padding-left: 12px;}
+
+.v-spacing {
+ width: 6px;
+ height: 6px;
+}
+
+.v-boxlayout {
+ display: inline-block;
+}
+
+div.v-boxlayout.v-horizontal.v {
+ white-space: nowrap;
+}
+
+.v-boxlayout > .v-expand {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 100%;
+ height: 100%;
+}
+
+.v-slot,
+.v-spacing {
+ display: inline-block;
+ white-space: normal;
+ vertical-align: top;
+}
+
+/* Clear any floats inside the slot, to prevent unwanted collapsing */
+.v-vertical > .v-slot:after {
+ content: "";
+ display: inline-block;
+ clear: both;
+ width: 0;
+ height: 0;
+ overflow: hidden;
+}
+
+.v-vertical > .v-slot,
+.v-vertical > .v-expand > .v-slot {
+ display: block;
+ clear: both;
+}
+
+.v-horizontal > .v-slot,
+.v-horizontal > .v-expand > .v-slot {
+ height: 100%;
+}
+
+.v-vertical > .v-spacing,
+.v-vertical > .v-expand > .v-spacing {
+ width: 0;
+ display: block;
+ clear: both;
+}
+
+.v-horizontal > .v-spacing,
+.v-horizontal > .v-expand > .v-spacing {
+ height: 0;
+}
+
+.v-align-middle:before,
+.v-align-bottom:before,
+.v-expand > .v-align-middle:before,
+.v-expand > .v-align-bottom:before {
+ content: "";
+ display: inline-block;
+ height: 100%;
+ vertical-align: middle;
+ width: 0;
+}
+
+.v-align-middle,
+.v-align-bottom {
+ white-space: nowrap;
+}
+
+.v-align-middle > .v,
+.v-align-bottom > .v {
+ display: inline-block;
+}
+
+.v-align-middle,
+.v-align-middle > .v {
+ vertical-align: middle;
+}
+
+.v-align-bottom,
+.v-align-bottom > .v {
+ vertical-align: bottom;
+}
+
+.v-align-center {
+ text-align: center;
+}
+
+.v-align-center > .v {
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.v-align-right {
+ text-align: right;
+}
+
+.v-align-right > .v {
+ margin-left: auto;
+}
+
+.v-has-caption,
+.v-has-caption > .v-caption {
+ display: inline-block; /* Force natural width to zero */
+}
+
+.v-caption {
+ overflow: visible;
+ vertical-align: middle;
+}
+
+.v-caption-on-left,
+.v-caption-on-right {
+ white-space: nowrap;
+}
+
+.v-caption-on-top > .v-caption,
+.v-caption-on-bottom > .v-caption {
+ display: block;
+}
+
+.v-caption-on-left > .v-caption {
+ padding-right: .5em;
+}
+
+.v-caption-on-right > .v-caption {
+ padding-left: .5em;
+}
+
+.v-caption-on-left > .v,
+.v-caption-on-right > .v {
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.v-has-caption.v-has-width > .v {
+ width: 100% !important;
+}
+
+.v-has-caption.v-has-height > .v {
+ height: 100% !important;
+}
+
+.v-errorindicator {
+ vertical-align: middle;
+}
+
+} \ No newline at end of file
diff --git a/WebContent/VAADIN/themes/base/styles.scss b/WebContent/VAADIN/themes/base/styles.scss
index a1bf1ec42c..7a650d0818 100644
--- a/WebContent/VAADIN/themes/base/styles.scss
+++ b/WebContent/VAADIN/themes/base/styles.scss
@@ -15,6 +15,7 @@
// here for now to preserve old semantics
@include base-common;
+@include base-boxlayout;
@include base-csslayout;
@include base-customcomponent;
@include base-customlayout;