bi-element-ui 1.1.8 → 1.1.91

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.
Files changed (59) hide show
  1. package/.browserslistrc +3 -3
  2. package/.eslintignore +1 -1
  3. package/.prettierrc +8 -8
  4. package/.prettierrc.json +8 -8
  5. package/.vscode/extensions.json +3 -3
  6. package/.vscode/settings.json +2 -2
  7. package/README.md +148 -148
  8. package/cypress.json +3 -3
  9. package/dist/css/about.734427a8.css +1 -0
  10. package/dist/css/chunk-vendors.8b3b4be2.css +22 -0
  11. package/dist/css/index.9e71d803.css +1 -0
  12. package/dist/index.html +1 -1
  13. package/dist/js/about.4ff3d4f9.js +2 -0
  14. package/dist/js/chunk-vendors.d907e1f2.js +387 -0
  15. package/dist/js/index.66b4892a.js +11 -0
  16. package/lib/{bi-element-ui.common.js → Bi-element-ui.common.js} +190 -61
  17. package/lib/{bi-element-ui.umd.js → Bi-element-ui.umd.js} +190 -61
  18. package/lib/{bi-element-ui.umd.min.js → Bi-element-ui.umd.min.js} +5 -5
  19. package/lib/demo.html +10 -10
  20. package/package-lock2.json +17309 -17309
  21. package/package.json +1 -1
  22. package/src/components/BiDatePicker/datePickerOption.js +163 -163
  23. package/src/components/BiDatePicker/index.vue +59 -59
  24. package/src/components/BiTable/columu.vue +81 -81
  25. package/src/components/BiTable/forced.js +63 -63
  26. package/src/components/BiTable/index.js +6 -6
  27. package/src/components/BiTable/render.vue +13 -13
  28. package/src/components/BiTable/table.vue +179 -179
  29. package/src/components/BiTableColumn/Group.vue +275 -275
  30. package/src/components/BiTableColumn/api.js +16 -16
  31. package/src/components/BiTooltipIcon/index.vue +63 -63
  32. package/src/components/EditBtn.vue +15 -15
  33. package/src/components/FreeButton/index.vue +50 -50
  34. package/src/components/Pagination/index.vue +91 -91
  35. package/src/components/Pagination/scrollTo.js +65 -65
  36. package/src/router/index.js +44 -44
  37. package/src/store/index.js +11 -11
  38. package/src/table.js +86 -0
  39. package/src/views/Date.vue +96 -96
  40. package/src/views/Home.vue +11 -0
  41. package/src/views/Layout.vue +34 -34
  42. package/src/views/Scene.vue +111 -111
  43. package/src/views/Table.vue +190 -173
  44. package/src/views/showData.vue +2 -2
  45. package/tests/e2e/.eslintrc.js +10 -10
  46. package/tests/e2e/plugins/index.js +25 -25
  47. package/tests/e2e/specs/test.js +8 -8
  48. package/tests/e2e/support/commands.js +25 -25
  49. package/tests/e2e/support/index.js +20 -20
  50. package/tests/unit/example.spec.js +13 -13
  51. package//345/211/215/347/253/257ui/346/240/267/345/274/217/350/247/204/350/214/203.md +101 -101
  52. package/dist/css/about.f927ac1d.css +0 -1
  53. package/dist/css/chunk-vendors.bce393fb.css +0 -1
  54. package/dist/css/index.9da9fdde.css +0 -1
  55. package/dist/js/about.49a721d0.js +0 -2
  56. package/dist/js/chunk-vendors.008a0caf.js +0 -313
  57. package/dist/js/index.e9532c02.js +0 -11
  58. package/pnpm-lock.yaml +0 -13329
  59. /package/lib/{bi-element-ui.css → Bi-element-ui.css} +0 -0
@@ -1,11 +1,11 @@
1
- import Vue from 'vue'
2
- import Vuex from 'vuex'
3
-
4
- Vue.use(Vuex)
5
-
6
- export default new Vuex.Store({
7
- state: {},
8
- mutations: {},
9
- actions: {},
10
- modules: {}
11
- })
1
+ import Vue from 'vue'
2
+ import Vuex from 'vuex'
3
+
4
+ Vue.use(Vuex)
5
+
6
+ export default new Vuex.Store({
7
+ state: {},
8
+ mutations: {},
9
+ actions: {},
10
+ modules: {}
11
+ })
package/src/table.js CHANGED
@@ -91,6 +91,92 @@ export default {
91
91
  }
92
92
  }
93
93
  ],
94
+ duojibiaotou: [
95
+ {
96
+ label: '日期',
97
+ prop: 'date',
98
+ fixed: 'left',
99
+ minWidth: '100px',
100
+ renderHeader: (h) => {
101
+ return <span>日期456</span>
102
+ }
103
+ },
104
+ {
105
+ label: '组',
106
+ fixed: 'left',
107
+ children: [
108
+ {
109
+ label: '组2',
110
+ fixed: 'left',
111
+ children: [
112
+ {
113
+ label: '姓名',
114
+ prop: 'name',
115
+ fixed: 'left',
116
+ renderHeader: (h) => {
117
+ return <span>姓名456</span>
118
+ },
119
+ render: (h, scope) => {
120
+ const { row } = scope
121
+ return <span>{row.name}123</span>
122
+ }
123
+ },
124
+ {
125
+ label: '省份',
126
+ prop: 'province',
127
+ fixed: 'left',
128
+ renderHeader: (h) => {
129
+ return <span>省份456</span>
130
+ }
131
+ }
132
+ ]
133
+ },
134
+ {
135
+ label: '省份3',
136
+ fixed: 'left',
137
+ prop: 'province3',
138
+ renderHeader: (h) => {
139
+ return <span>省份456</span>
140
+ },
141
+ render: (h, { row }) => {
142
+ return <span>{row.province}123</span>
143
+ }
144
+ }
145
+ ]
146
+ },
147
+ { label: '市区', prop: 'city', minWidth: '100px' },
148
+ { label: '地址', prop: 'address', minWidth: '100px' },
149
+ { label: '邮编', prop: 'zip', minWidth: '200px' },
150
+ {
151
+ label: '组件',
152
+ prop: 'cmp',
153
+ minWidth: '400px',
154
+ component: EditBtn,
155
+ listeners: {
156
+ 'row-edit'(row) {
157
+ console.log('row-edit', row)
158
+ }
159
+ }
160
+ }
161
+ ],
162
+ duojibiaotou2: [
163
+ { label: '日期', prop: 'date' },
164
+ { label: '姓名', prop: 'name' },
165
+ { label: '省份', prop: 'province' },
166
+ { label: '市区', prop: 'city' },
167
+ { label: '地址', prop: 'address' },
168
+ { label: '邮编', prop: 'zip' },
169
+ {
170
+ label: '组件',
171
+ prop: 'cmp',
172
+ component: EditBtn,
173
+ listeners: {
174
+ 'row-edit'(row) {
175
+ console.log('row-edit', row)
176
+ }
177
+ }
178
+ }
179
+ ],
94
180
 
95
181
  typesColumn: [
96
182
  { label: '序号', prop: 'index', type: 'index' },
@@ -1,96 +1,96 @@
1
- <template>
2
- <div class="free-table">
3
- <div class="example-table-box">
4
- <p>基础日期-{{ date }}</p>
5
- <BiDatePicker v-model="date" type="date" placeholder="选择日期"></BiDatePicker>
6
- </div>
7
- <div class="example-table-box">
8
- <p>基础周-{{ date1 }}</p>
9
- <BiDatePicker v-model="date1" type="week" placeholder="选择周"></BiDatePicker>
10
- </div>
11
- <div class="example-table-box">
12
- <p>基础月-{{ date2 }}</p>
13
- <BiDatePicker v-model="date2" type="month" placeholder="选择周"></BiDatePicker>
14
- </div>
15
- <div class="example-table-box">
16
- <p>范围日期-{{ date3 }}</p>
17
- <BiDatePicker v-model="date3" type="daterange" placeholder="选择日期1" :picker-option="pickerOptions1"></BiDatePicker>
18
- <p>范围日期-{{ date7 }}</p>
19
- <BiDatePicker v-model="date7" type="daterange" placeholder="选择日期2" :picker-option="pickerOptions2"></BiDatePicker>
20
- </div>
21
- <div class="example-table-box">
22
- <p>范围月-{{ date5 }}</p>
23
- <BiDatePicker v-model="date5" type="monthrange" placeholder="选择日期" format="yyyy-MM"></BiDatePicker>
24
- </div>
25
- <div class="example-table-box">
26
- <p>范围日期时间-{{ date6 }}</p>
27
- <BiDatePicker v-model="date6" type="datetimerange" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" :default-time="['00:00:00', '23:59:59']" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></BiDatePicker>
28
- </div>
29
- </div>
30
- </template>
31
-
32
- <script>
33
- // import BiDatepicker from '@/components/BiDatePicker'
34
- import moment from 'moment'
35
-
36
- export default {
37
- components: {
38
- // BiDatepicker
39
- },
40
- data() {
41
- return {
42
- date: '',
43
- date1: '',
44
- date2: '',
45
- date3: [],
46
- date4: [],
47
- date5: [],
48
- date6: [],
49
- date7: [],
50
- columnsProps: {
51
- width: 'auto'
52
- },
53
- total: 0,
54
- listQuery: {
55
- page: 2,
56
- limit: 20
57
- },
58
- editForm: {},
59
- dialogVisible: false,
60
- pickerOptions1: {
61
- firstDayOfWeek: 1,
62
- onPick: ({ minDate, maxDate }) => {
63
- console.log(1, moment(minDate).format('YYYY-MM-DD'))
64
- }
65
- },
66
- pickerOptions2: {
67
- firstDayOfWeek: 1,
68
- onPick: ({ minDate, maxDate }) => {
69
- console.log(2, moment(minDate).format('YYYY-MM-DD'))
70
- }
71
- }
72
- }
73
- },
74
- methods: {
75
- selectionChange(rows) {
76
- console.log('selected', rows)
77
- },
78
- getList() {},
79
- openDialog({ row }) {
80
- this.editForm = Object.assign({}, row)
81
- this.dialogVisible = true
82
- }
83
- }
84
- }
85
- </script>
86
-
87
- <style lang="scss" scoped>
88
- .example-table-box {
89
- margin: 25px 50px;
90
-
91
- p {
92
- text-align: left;
93
- font-weight: 700;
94
- }
95
- }
96
- </style>
1
+ <template>
2
+ <div class="free-table">
3
+ <div class="example-table-box">
4
+ <p>基础日期-{{ date }}</p>
5
+ <BiDatePicker v-model="date" type="date" placeholder="选择日期"></BiDatePicker>
6
+ </div>
7
+ <div class="example-table-box">
8
+ <p>基础周-{{ date1 }}</p>
9
+ <BiDatePicker v-model="date1" type="week" placeholder="选择周"></BiDatePicker>
10
+ </div>
11
+ <div class="example-table-box">
12
+ <p>基础月-{{ date2 }}</p>
13
+ <BiDatePicker v-model="date2" type="month" placeholder="选择周"></BiDatePicker>
14
+ </div>
15
+ <div class="example-table-box">
16
+ <p>范围日期-{{ date3 }}</p>
17
+ <BiDatePicker v-model="date3" type="daterange" placeholder="选择日期1" :picker-option="pickerOptions1"></BiDatePicker>
18
+ <p>范围日期-{{ date7 }}</p>
19
+ <BiDatePicker v-model="date7" type="daterange" placeholder="选择日期2" :picker-option="pickerOptions2"></BiDatePicker>
20
+ </div>
21
+ <div class="example-table-box">
22
+ <p>范围月-{{ date5 }}</p>
23
+ <BiDatePicker v-model="date5" type="monthrange" placeholder="选择日期" format="yyyy-MM"></BiDatePicker>
24
+ </div>
25
+ <div class="example-table-box">
26
+ <p>范围日期时间-{{ date6 }}</p>
27
+ <BiDatePicker v-model="date6" type="datetimerange" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" :default-time="['00:00:00', '23:59:59']" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></BiDatePicker>
28
+ </div>
29
+ </div>
30
+ </template>
31
+
32
+ <script>
33
+ // import BiDatepicker from '@/components/BiDatePicker'
34
+ import moment from 'moment'
35
+
36
+ export default {
37
+ components: {
38
+ // BiDatepicker
39
+ },
40
+ data() {
41
+ return {
42
+ date: '',
43
+ date1: '',
44
+ date2: '',
45
+ date3: [],
46
+ date4: [],
47
+ date5: [],
48
+ date6: [],
49
+ date7: [],
50
+ columnsProps: {
51
+ width: 'auto'
52
+ },
53
+ total: 0,
54
+ listQuery: {
55
+ page: 2,
56
+ limit: 20
57
+ },
58
+ editForm: {},
59
+ dialogVisible: false,
60
+ pickerOptions1: {
61
+ firstDayOfWeek: 1,
62
+ onPick: ({ minDate, maxDate }) => {
63
+ console.log(1, moment(minDate).format('YYYY-MM-DD'))
64
+ }
65
+ },
66
+ pickerOptions2: {
67
+ firstDayOfWeek: 1,
68
+ onPick: ({ minDate, maxDate }) => {
69
+ console.log(2, moment(minDate).format('YYYY-MM-DD'))
70
+ }
71
+ }
72
+ }
73
+ },
74
+ methods: {
75
+ selectionChange(rows) {
76
+ console.log('selected', rows)
77
+ },
78
+ getList() {},
79
+ openDialog({ row }) {
80
+ this.editForm = Object.assign({}, row)
81
+ this.dialogVisible = true
82
+ }
83
+ }
84
+ }
85
+ </script>
86
+
87
+ <style lang="scss" scoped>
88
+ .example-table-box {
89
+ margin: 25px 50px;
90
+
91
+ p {
92
+ text-align: left;
93
+ font-weight: 700;
94
+ }
95
+ }
96
+ </style>
@@ -384,6 +384,17 @@ export default {
384
384
  label: 'v-model',
385
385
  prop: 'other',
386
386
  fixed: 'right',
387
+
388
+ renderHeader: (h) => {
389
+ return (
390
+ <div>
391
+ <el-input />
392
+ <el-tooltip effect={'dark'} content={'首日付费金额/消耗2222'} placement={'top'}>
393
+ <span style={{ textAlign: 'right', width: '100%', display: 'inline-block' }}>ROI</span>
394
+ </el-tooltip>
395
+ </div>
396
+ )
397
+ },
387
398
  render: (h, scope) => {
388
399
  return h('input', {
389
400
  on: {
@@ -1,35 +1,35 @@
1
- <template>
2
- <div class="box">
3
- <header>
4
-
5
- <BiNavbarTool
6
- :token="token"
7
- :avatar="avatar"
8
- />
9
- </header>
10
- </div>
11
- </template>
12
-
13
- <script>
14
- export default {
15
- data() {
16
- return {
17
- token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIxNTc1NzE4NTMyMiIsImxvZ2luX2VudiI6IiIsImlhdCI6MTcwODMzNTUyNywiZXhwIjoxNzA4OTQwMzI3LCJuYmYiOjE3MDgzMzU1MjcsInN1YiI6InRva2Vu6K6k6K-BIiwianRpIjoiOWEzYWNkYTBkZDhlYmRjNzM3NTAwYzc2MGU0MWQ5N2YifQ.5XzkjXWgiNpA0yUYbNTT8TjPttdlnPWQzggcDNZEB20',
18
- avatar: 'https://static-legacy.dingtalk.com/media/lADPBbCc1SE7SD7NAuzNAug_744_748.jpg?imageView2/1/w/80/h/80'
19
- }
20
- },
21
- methods: {}
22
- }
23
- </script>
24
-
25
- <style scoped>
26
- .box {
27
- background: #ccc;
28
- height: 200px;
29
- padding: 10px 50px;
30
- }
31
- header {
32
- height: 50px;
33
- background: #fff;
34
- }
1
+ <template>
2
+ <div class="box">
3
+ <header>
4
+
5
+ <BiNavbarTool
6
+ :token="token"
7
+ :avatar="avatar"
8
+ />
9
+ </header>
10
+ </div>
11
+ </template>
12
+
13
+ <script>
14
+ export default {
15
+ data() {
16
+ return {
17
+ token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIxNTc1NzE4NTMyMiIsImxvZ2luX2VudiI6IiIsImlhdCI6MTcwODMzNTUyNywiZXhwIjoxNzA4OTQwMzI3LCJuYmYiOjE3MDgzMzU1MjcsInN1YiI6InRva2Vu6K6k6K-BIiwianRpIjoiOWEzYWNkYTBkZDhlYmRjNzM3NTAwYzc2MGU0MWQ5N2YifQ.5XzkjXWgiNpA0yUYbNTT8TjPttdlnPWQzggcDNZEB20',
18
+ avatar: 'https://static-legacy.dingtalk.com/media/lADPBbCc1SE7SD7NAuzNAug_744_748.jpg?imageView2/1/w/80/h/80'
19
+ }
20
+ },
21
+ methods: {}
22
+ }
23
+ </script>
24
+
25
+ <style scoped>
26
+ .box {
27
+ background: #ccc;
28
+ height: 200px;
29
+ padding: 10px 50px;
30
+ }
31
+ header {
32
+ height: 50px;
33
+ background: #fff;
34
+ }
35
35
  </style>
@@ -1,111 +1,111 @@
1
- <template>
2
- <div class="free-table-container">
3
- <free-button @search="search"></free-button>
4
-
5
- <free-table v-loading="loading" style="min-height: 50vh" border pagination :data="data" :column="column" :total="total" :page.sync="params.page" :limit.sync="params.limit" @pagination="getList"></free-table>
6
-
7
- <el-dialog title="收货地址" :visible.sync="dialogVisible">
8
- <el-form :model="editForm" label-width="100px">
9
- <el-form-item label="名称">
10
- <el-input v-model="editForm.title" autocomplete="off"></el-input>
11
- </el-form-item>
12
- <el-form-item v-if="editForm.author" label="作者">
13
- <el-input v-model="editForm.author.loginname"></el-input>
14
- </el-form-item>
15
- </el-form>
16
- <div slot="footer" class="dialog-footer">
17
- <el-button @click="dialogVisible = false">取 消</el-button>
18
- <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
19
- </div>
20
- </el-dialog>
21
- </div>
22
- </template>
23
-
24
- <script>
25
- import FreeButton from '@/components/FreeButton'
26
- import FreeTable from '@/components/FreeTable'
27
- import axios from 'axios'
28
-
29
- export default {
30
- components: {
31
- FreeButton,
32
- FreeTable
33
- },
34
- data() {
35
- return {
36
- column: [
37
- { prop: 'title', label: '名称', minWidth: 200 },
38
- {
39
- prop: 'author',
40
- label: '作者',
41
- render: (h, scope) => {
42
- return <span>{scope.row.author.loginname}</span>
43
- }
44
- },
45
- { prop: 'tab', label: '类目' },
46
- { prop: 'reply_count', label: '回复数', width: 100 },
47
- { prop: 'visit_count', label: '预览量', width: 100 },
48
- {
49
- prop: 'action',
50
- label: '操作',
51
- render: (h, scope) => {
52
- return (
53
- <div>
54
- <el-button type="text" size="small" class="el-icon-edit" onClick={() => this.openDialog(scope)}>
55
- 编辑
56
- </el-button>
57
- <el-button type="text" size="small" class="el-icon-delete" onClick={() => this.delHandle(scope)}>
58
- 删除
59
- </el-button>
60
- </div>
61
- )
62
- }
63
- }
64
- ],
65
- loading: false,
66
- data: [],
67
- total: 0,
68
- params: {
69
- tab: 'share',
70
- page: 1,
71
- limit: 10
72
- },
73
- editForm: {},
74
- dialogVisible: false
75
- }
76
- },
77
- mounted() {
78
- this.getList()
79
- },
80
- methods: {
81
- async getList() {
82
- this.loading = true
83
- const { params } = this
84
- const url = 'https://cnodejs.org/api/v1/topics'
85
- const { data } = await axios({ method: 'get', url, params })
86
- this.data = data.data || []
87
- this.total = 500
88
- this.loading = false
89
- },
90
-
91
- async delHandle({ row }) {
92
- console.log(row)
93
- await this.$message.success('这是一条删除成功提示')
94
- },
95
-
96
- openDialog({ row }) {
97
- this.editForm = Object.assign({}, row)
98
- this.dialogVisible = true
99
- },
100
- search() {
101
- alert(12)
102
- }
103
- }
104
- }
105
- </script>
106
-
107
- <style>
108
- .free-table-container {
109
- margin: 20px 50px;
110
- }
111
- </style>
1
+ <template>
2
+ <div class="free-table-container">
3
+ <free-button @search="search"></free-button>
4
+
5
+ <free-table v-loading="loading" style="min-height: 50vh" border pagination :data="data" :column="column" :total="total" :page.sync="params.page" :limit.sync="params.limit" @pagination="getList"></free-table>
6
+
7
+ <el-dialog title="收货地址" :visible.sync="dialogVisible">
8
+ <el-form :model="editForm" label-width="100px">
9
+ <el-form-item label="名称">
10
+ <el-input v-model="editForm.title" autocomplete="off"></el-input>
11
+ </el-form-item>
12
+ <el-form-item v-if="editForm.author" label="作者">
13
+ <el-input v-model="editForm.author.loginname"></el-input>
14
+ </el-form-item>
15
+ </el-form>
16
+ <div slot="footer" class="dialog-footer">
17
+ <el-button @click="dialogVisible = false">取 消</el-button>
18
+ <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
19
+ </div>
20
+ </el-dialog>
21
+ </div>
22
+ </template>
23
+
24
+ <script>
25
+ import FreeButton from '@/components/FreeButton'
26
+ import FreeTable from '@/components/FreeTable'
27
+ import axios from 'axios'
28
+
29
+ export default {
30
+ components: {
31
+ FreeButton,
32
+ FreeTable
33
+ },
34
+ data() {
35
+ return {
36
+ column: [
37
+ { prop: 'title', label: '名称', minWidth: 200 },
38
+ {
39
+ prop: 'author',
40
+ label: '作者',
41
+ render: (h, scope) => {
42
+ return <span>{scope.row.author.loginname}</span>
43
+ }
44
+ },
45
+ { prop: 'tab', label: '类目' },
46
+ { prop: 'reply_count', label: '回复数', width: 100 },
47
+ { prop: 'visit_count', label: '预览量', width: 100 },
48
+ {
49
+ prop: 'action',
50
+ label: '操作',
51
+ render: (h, scope) => {
52
+ return (
53
+ <div>
54
+ <el-button type="text" size="small" class="el-icon-edit" onClick={() => this.openDialog(scope)}>
55
+ 编辑
56
+ </el-button>
57
+ <el-button type="text" size="small" class="el-icon-delete" onClick={() => this.delHandle(scope)}>
58
+ 删除
59
+ </el-button>
60
+ </div>
61
+ )
62
+ }
63
+ }
64
+ ],
65
+ loading: false,
66
+ data: [],
67
+ total: 0,
68
+ params: {
69
+ tab: 'share',
70
+ page: 1,
71
+ limit: 10
72
+ },
73
+ editForm: {},
74
+ dialogVisible: false
75
+ }
76
+ },
77
+ mounted() {
78
+ this.getList()
79
+ },
80
+ methods: {
81
+ async getList() {
82
+ this.loading = true
83
+ const { params } = this
84
+ const url = 'https://cnodejs.org/api/v1/topics'
85
+ const { data } = await axios({ method: 'get', url, params })
86
+ this.data = data.data || []
87
+ this.total = 500
88
+ this.loading = false
89
+ },
90
+
91
+ async delHandle({ row }) {
92
+ console.log(row)
93
+ await this.$message.success('这是一条删除成功提示')
94
+ },
95
+
96
+ openDialog({ row }) {
97
+ this.editForm = Object.assign({}, row)
98
+ this.dialogVisible = true
99
+ },
100
+ search() {
101
+ alert(12)
102
+ }
103
+ }
104
+ }
105
+ </script>
106
+
107
+ <style>
108
+ .free-table-container {
109
+ margin: 20px 50px;
110
+ }
111
+ </style>