diff --git a/components/layout/demo/flex-align.md b/components/layout/demo/flex-align.md new file mode 100644 index 0000000000000000000000000000000000000000..6d926613997280f7ed4978ef17afc3d9a7a9b50b --- /dev/null +++ b/components/layout/demo/flex-align.md @@ -0,0 +1,40 @@ +# Flex Align + +- order: 5 + +Flex 子元素垂直对齐 + + +--- + + +````html +
+
2
+
2
+
2
+
2
+
+

顶部对齐

+ +
+
2
+
2
+
2
+
2
+
+

居中对齐

+ +
+
2
+
2
+
2
+
2
+
+

底部对齐

+ +```` + + + + diff --git a/components/layout/demo/flex-order.md b/components/layout/demo/flex-order.md new file mode 100644 index 0000000000000000000000000000000000000000..e5911933314588aceb7339f02d3ed2eb04d72bdb --- /dev/null +++ b/components/layout/demo/flex-order.md @@ -0,0 +1,23 @@ +# Flex Order + +- order: 6 + +通过 Flex 布局的 Order 来改变元素的排序 + + +--- + + +````html +
+
1 col-order-4
+
2 col-order-3
+
3 col-order-2
+
4 col-order-1
+
+ +```` + + + + diff --git a/components/layout/demo/flex.md b/components/layout/demo/flex.md new file mode 100644 index 0000000000000000000000000000000000000000..ca6555ee16a1cef53eac7005e92ffcd42d142a6f --- /dev/null +++ b/components/layout/demo/flex.md @@ -0,0 +1,57 @@ +# Flex Basic + +- order: 4 + +Flex 布局基础 + +使用 `row-flex` 定义 `flex` 布局,其子元素根据不同的值 `start`,`center`,`end`,`space-between`,`space-around`,分别定义其在父节点里面的排版方式。 + +--- + +````html + +
+
2
+
2
+
2
+
2
+
+

子元素居左排列

+ +
+
2
+
2
+
2
+
2
+
+

子元素居中排列

+ +
+
2
+
2
+
2
+
2
+
+

子元素居右排列

+ +
+
2
+
2
+
2
+
2
+
+

子元素等宽排列

+ +
+
2
+
2
+
2
+
2
+
+

子元素分散对齐

+ +```` + + + + diff --git a/components/layout/index.md b/components/layout/index.md index 563a07c93779bd53286e1115e472d999498b6a6e..ff186f010389c816fd3af759aaf42e604cca051a 100644 --- a/components/layout/index.md +++ b/components/layout/index.md @@ -68,13 +68,19 @@ * 栅格系统中的列是指1到24的值来表示其跨越的范围。例如,三个等宽d的列可以使用`.col-8`来创建 * 如果一个`row`中的`col`总和超过24,那么多余的`col`会作为一个整体另起一行排列 +## Flex 布局 + +我们的栅格化系统支持 Flex 布局,允许子元素在父节点内的水平对齐方式 - 居左、居中、居右、等宽排列、分散排列。子元素与子元素之间,支持顶部对齐、垂直居中对齐、底部对齐的方式。同时,支持使用 order 来定义元素的排列顺序。 + \ No newline at end of file diff --git a/components/modal/index.jsx b/components/modal/index.jsx index 9795a60ad8cea3b430f3691e7a4efd63fc7f1a5b..872dfeabb0cb792fe8c569474ddbf2ad4ed0de51 100644 --- a/components/modal/index.jsx +++ b/components/modal/index.jsx @@ -50,6 +50,7 @@ module.exports = function (props) { props.visible = true; props.children = props.content; props.footer = footer; + props.renderToBody = false; var d; React.render(, div, function () { d = this; diff --git a/package.json b/package.json index e3df7ea3396c827e93f5436be3a35991c27d2ad2..2cac8800c965179534a1136f6b16ac5ab8d8973c 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "gregorian-calendar": "~3.0.0", "gregorian-calendar-format": "~3.0.1", "rc-calendar": "~3.8.0", - "rc-dialog": "~4.1.1", + "rc-dialog": "~4.2.0", "rc-dropdown": "~1.0.0", "rc-menu": "~3.3.0", "rc-progress": "~1.0.0", diff --git a/style/core/layouts.less b/style/core/layouts.less index 21d65d12c09543abf3cd13a3a9fd70d8f1c68852..2e41814ed979a66666a373579383956f008ad809 100644 --- a/style/core/layouts.less +++ b/style/core/layouts.less @@ -37,5 +37,79 @@ } } +// x轴原点 +.row-flex.start, +.row-flex.start.top, +.row-flex.start.middle, +.row-flex.start.bottom { + justify-content: flex-start; +} + +// x轴居中 +.row-flex.center, +.row-flex.center.top, +.row-flex.center.middle, +.row-flex.center.bottom { + justify-content: center; +} + +// x轴反方向 +.row-flex.end, +.row-flex.end.top, +.row-flex.end.middle, +.row-flex.end.bottom { + justify-content: flex-end; +} + +// x轴平分 +.row-flex.space-between, +.row-flex.space-between.top, +.row-flex.space-between.middle, +.row-flex.space-between.bottom { + justify-content: space-between; +} + +// x轴有间隔地平分 +.row-flex.space-around, +.row-flex.space-around.top, +.row-flex.space-around.middle, +.row-flex.space-around.bottom { + justify-content: space-around; +} + +// 顶部对齐 +.row-flex.center.top, +.row-flex.start.top, +.row-flex.end.top, +.row-flex.space-between.top, +.row-flex.space-around.top { + align-items: flex-start; +} + +// 居中对齐 +.row-flex.center.middle, +.row-flex.start.middle, +.row-flex.end.middle, +.row-flex.space-between.middle, +.row-flex.space-around.middle { + align-items: center; +} + +// 底部对齐 +.row-flex.center.bottom, +.row-flex.start.bottom, +.row-flex.end.bottom, +.row-flex.space-between.bottom, +.row-flex.space-around.bottom { + align-items: flex-end; +} + +.col { + position: relative; + display: block; + float: left; + flex: 0 0 auto; +} + .make-grid-columns(); .make-grid();