@10yun/cv-mobile-ui 0.5.7 → 0.5.9

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 (39) hide show
  1. package/package.json +1 -1
  2. package/ui-cv/cv-block/cv-block.vue +1 -4
  3. package/ui-cv/cv-cell/cv-cell.vue +3 -2
  4. package/ui-cv/cv-editor-parse/components/wxParseAudio.vue +14 -5
  5. package/ui-cv/cv-editor-parse/components/wxParseImg.vue +26 -36
  6. package/ui-cv/cv-editor-parse/components/wxParseTable.vue +7 -7
  7. package/ui-cv/cv-editor-parse/components/wxParseTemplate0.vue +105 -88
  8. package/ui-cv/cv-editor-parse/components/wxParseTemplate1.vue +96 -88
  9. package/ui-cv/cv-editor-parse/components/wxParseTemplate10.vue +95 -88
  10. package/ui-cv/cv-editor-parse/components/wxParseTemplate11.vue +84 -82
  11. package/ui-cv/cv-editor-parse/components/wxParseTemplate2.vue +95 -88
  12. package/ui-cv/cv-editor-parse/components/wxParseTemplate3.vue +95 -88
  13. package/ui-cv/cv-editor-parse/components/wxParseTemplate4.vue +95 -88
  14. package/ui-cv/cv-editor-parse/components/wxParseTemplate5.vue +95 -88
  15. package/ui-cv/cv-editor-parse/components/wxParseTemplate6.vue +95 -88
  16. package/ui-cv/cv-editor-parse/components/wxParseTemplate7.vue +95 -88
  17. package/ui-cv/cv-editor-parse/components/wxParseTemplate8.vue +95 -88
  18. package/ui-cv/cv-editor-parse/components/wxParseTemplate9.vue +95 -88
  19. package/ui-cv/cv-editor-parse/components/wxParseVideo.vue +15 -15
  20. package/ui-cv/cv-editor-parse/cv-editor-parse.vue +1 -3
  21. package/ui-cv/cv-editor-parse/libs/html2json.js +15 -18
  22. package/ui-cv/cv-editor-parse/libs/htmlparser.js +12 -5
  23. package/ui-cv/cv-editor-parse/libs/wxDiscode.js +1 -1
  24. package/ui-cv/cv-editor-parse/readme.md +6 -0
  25. package/ui-cv/cv-editor-parse/u-parse.css +52 -95
  26. package/ui-cv/cv-icons/cv-icons.vue +2 -11
  27. package/ui-cv/cv-markdown-show/cv-markdown-show.vue +109 -0
  28. package/ui-cv/cv-markdown-show/lib/highlight/atom-one-dark.css +1 -0
  29. package/ui-cv/cv-markdown-show/lib/highlight/atom-one-light.css +1 -0
  30. package/ui-cv/cv-markdown-show/lib/highlight/github-dark.min.css +10 -0
  31. package/ui-cv/cv-markdown-show/lib/highlight/uni-highlight.min.js +5254 -0
  32. package/ui-cv/cv-markdown-show/lib/html-parser.js +352 -0
  33. package/ui-cv/cv-markdown-show/lib/markdown-it.min.js +2 -0
  34. package/ui-cv/cv-markdown-show/markdown.css +340 -0
  35. package/ui-cv/cv-markdown-show/package.json +18 -0
  36. package/ui-cv/cv-markdown-show/readme.md +45 -0
  37. package/ui-cv/cv-nav-col/cv-nav-col.vue +2 -1
  38. package/ui-cv/cv-nav-row/cv-nav-row.vue +3 -2
  39. package/ui-cv/cv-treaty/cv-treaty.vue +1 -0
@@ -1,88 +1,95 @@
1
- <template>
2
- <!--判断是否是标签节点-->
3
- <block v-if="node.node == 'element'">
4
- <!--button类型-->
5
- <button v-if="node.tag == 'button'" type="default" size="mini" :class="node.classStr" :style="node.styleStr">
6
- <wx-parse-template :node="node" />
7
- </button>
8
-
9
- <!--a类型-->
10
- <view v-else-if="node.tag == 'a'" @click="wxParseATap" :class="node.classStr" :data-href="node.attr.href" :style="node.styleStr">
11
- <block v-for="(node, index) of node.nodes" :key="index">
12
- <wx-parse-template :node="node" />
13
- </block>
14
- </view>
15
-
16
- <!--li类型-->
17
- <view v-else-if="node.tag == 'li'" :class="node.classStr" :style="node.styleStr">
18
- <block v-for="(node, index) of node.nodes" :key="index">
19
- <wx-parse-template :node="node" />
20
- </block>
21
- </view>
22
-
23
- <!--table类型-->
24
- <wx-parse-table v-else-if="node.tag == 'table'" :class="node.classStr" :style="node.styleStr" :node="node" />
25
-
26
- <!--br类型-->
27
- <!-- #ifndef H5 -->
28
- <text v-else-if="node.tag == 'br'">\n</text>
29
- <!-- #endif -->
30
- <!-- #ifdef H5 -->
31
- <br v-else-if="node.tag == 'br'">
32
- <!-- #endif -->
33
-
34
- <!--video类型-->
35
- <wx-parse-video :node="node" v-else-if="node.tag == 'video'" />
36
-
37
- <!--audio类型-->
38
- <wx-parse-audio :node="node" v-else-if="node.tag == 'audio'" />
39
-
40
- <!--img类型-->
41
- <wx-parse-img :node="node" v-else-if="node.tag == 'img'" />
42
-
43
- <!--其他标签-->
44
- <view v-else :class="node.classStr" :style="node.styleStr">
45
- <block v-for="(node, index) of node.nodes" :key="index">
46
- <wx-parse-template :node="node" />
47
- </block>
48
- </view>
49
- </block>
50
-
51
- <!--判断是否是文本节点-->
52
- <block v-else-if="node.node == 'text'">{{node.text}}</block>
53
- </template>
54
-
55
- <script>
56
- import wxParseTemplate from './wxParseTemplate10';
57
- import wxParseImg from './wxParseImg';
58
- import wxParseVideo from './wxParseVideo';
59
- import wxParseAudio from './wxParseAudio';
60
- import wxParseTable from './wxParseTable';
61
-
62
- export default {
63
- name: 'wxParseTemplate9',
64
- props: {
65
- node: {},
66
- },
67
- components: {
68
- wxParseTemplate,
69
- wxParseImg,
70
- wxParseVideo,
71
- wxParseAudio,
72
- wxParseTable
73
- },
74
- methods: {
75
- wxParseATap(e) {
76
- const {
77
- href
78
- } = e.currentTarget.dataset;
79
- if (!href) return;
80
- let parent = this.$parent;
81
- while (!parent.preview || typeof parent.preview !== 'function') {
82
- parent = parent.$parent;
83
- }
84
- parent.navigate(href, e);
85
- },
86
- },
87
- };
88
- </script>
1
+ <template>
2
+ <view>
3
+ <!--判断是否是标签节点-->
4
+ <block v-if="node.node == 'element'">
5
+ <block v-if="node.tag == 'button'">
6
+ <button type="default" size="mini">
7
+ <block v-for="(node, index) of node.nodes" :key="index">
8
+ <wx-parse-template :node="node" />
9
+ </block>
10
+ </button>
11
+ </block>
12
+
13
+ <!--li类型-->
14
+ <block v-else-if="node.tag == 'li'">
15
+ <view :class="node.classStr" :style="node.styleStr">
16
+ <block v-for="(node, index) of node.nodes" :key="index">
17
+ <wx-parse-template :node="node" />
18
+ </block>
19
+ </view>
20
+ </block>
21
+
22
+ <!--video类型-->
23
+ <block v-else-if="node.tag == 'video'">
24
+ <wx-parse-video :node="node" />
25
+ </block>
26
+
27
+ <!--audio类型-->
28
+ <block v-else-if="node.tag == 'audio'">
29
+ <wx-parse-audio :node="node" />
30
+ </block>
31
+
32
+ <!--img类型-->
33
+ <block v-else-if="node.tag == 'img'">
34
+ <wx-parse-img :node="node" />
35
+ </block>
36
+
37
+ <!--a类型-->
38
+ <block v-else-if="node.tag == 'a'">
39
+ <view @click="wxParseATap" :class="node.classStr" :data-href="node.attr.href" :style="node.styleStr">
40
+ <block v-for="(node, index) of node.nodes" :key="index">
41
+ <wx-parse-template :node="node" />
42
+ </block>
43
+ </view>
44
+ </block>
45
+
46
+ <!--br类型-->
47
+ <block v-else-if="node.tag == 'br'">
48
+ <text>\n</text>
49
+ </block>
50
+
51
+ <!--其他标签-->
52
+ <block v-else>
53
+ <view :class="node.classStr" :style="node.styleStr">
54
+ <block v-for="(node, index) of node.nodes" :key="index">
55
+ <wx-parse-template :node="node" />
56
+ </block>
57
+ </view>
58
+ </block>
59
+ </block>
60
+
61
+ <!--判断是否是文本节点-->
62
+ <block v-else-if="node.node == 'text'">{{ node.text }}</block>
63
+ </view>
64
+ </template>
65
+
66
+ <script>
67
+ import wxParseTemplate from './wxParseTemplate10';
68
+ import wxParseImg from './wxParseImg';
69
+ import wxParseVideo from './wxParseVideo';
70
+ import wxParseAudio from './wxParseAudio';
71
+
72
+ export default {
73
+ name: 'wxParseTemplate9',
74
+ props: {
75
+ node: {}
76
+ },
77
+ components: {
78
+ wxParseTemplate,
79
+ wxParseImg,
80
+ wxParseVideo,
81
+ wxParseAudio
82
+ },
83
+ methods: {
84
+ wxParseATap(e) {
85
+ const { href } = e.currentTarget.dataset;
86
+ if (!href) return;
87
+ let parent = this.$parent;
88
+ while (!parent.preview || typeof parent.preview !== 'function') {
89
+ parent = parent.$parent;
90
+ }
91
+ parent.navigate(href, e);
92
+ }
93
+ }
94
+ };
95
+ </script>
@@ -1,15 +1,15 @@
1
- <template>
2
- <!--增加video标签支持,并循环添加-->
3
- <view :class="node.classStr" :style="node.styleStr">
4
- <video :class="node.classStr" :style="node.styleStr" class="video-video" :src="node.attr.src"></video>
5
- </view>
6
- </template>
7
-
8
- <script>
9
- export default {
10
- name: 'wxParseVideo',
11
- props: {
12
- node: {},
13
- },
14
- };
15
- </script>
1
+ <template>
2
+ <!--增加video标签支持,并循环添加-->
3
+ <view :class="node.classStr" :style="node.styleStr">
4
+ <video :class="node.classStr" class="video-video" :src="node.attr.src"></video>
5
+ </view>
6
+ </template>
7
+
8
+ <script>
9
+ export default {
10
+ name: 'wxParseVideo',
11
+ props: {
12
+ node: {}
13
+ }
14
+ };
15
+ </script>
@@ -1,8 +1,6 @@
1
1
  <!--**
2
2
  * forked from:https://github.com/F-loat/mpvue-wxParse
3
- *
4
3
  * github地址: https://github.com/dcloudio/uParse
5
- *
6
4
  * for: uni-app框架下 富文本解析
7
5
  */-->
8
6
 
@@ -18,7 +16,6 @@
18
16
  <script>
19
17
  import HtmlToJson from './libs/html2json';
20
18
  import wxParseTemplate from './components/wxParseTemplate0';
21
-
22
19
  export default {
23
20
  name: 'wxParse',
24
21
  props: {
@@ -86,6 +83,7 @@ export default {
86
83
  };
87
84
  const results = HtmlToJson(parseData, customHandler, imageProp, this);
88
85
  this.imageUrls = results.imageUrls;
86
+ console.log(results);
89
87
  return results.nodes;
90
88
  }
91
89
  },
@@ -23,10 +23,14 @@ function makeMap(str) {
23
23
  }
24
24
 
25
25
  // Block Elements - HTML 5
26
- const block = makeMap('br,code,address,article,applet,aside,audio,blockquote,button,canvas,center,dd,del,dir,div,dl,dt,fieldset,figcaption,figure,footer,form,frameset,h1,h2,h3,h4,h5,h6,header,hgroup,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,output,p,pre,section,script,table,tbody,td,tfoot,th,thead,tr,ul,video');
26
+ const block = makeMap(
27
+ 'br,code,address,article,applet,aside,audio,blockquote,button,canvas,center,dd,del,dir,div,dl,dt,fieldset,figcaption,figure,footer,form,frameset,h1,h2,h3,h4,h5,h6,header,hgroup,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,output,p,pre,section,script,table,tbody,td,tfoot,th,thead,tr,ul,video'
28
+ );
27
29
 
28
30
  // Inline Elements - HTML 5
29
- const inline = makeMap('a,abbr,acronym,applet,b,basefont,bdo,big,button,cite,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var');
31
+ const inline = makeMap(
32
+ 'a,abbr,acronym,applet,b,basefont,bdo,big,button,cite,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var'
33
+ );
30
34
 
31
35
  // Elements that you can, intentionally, leave open
32
36
  // (and which close themselves)
@@ -50,9 +54,10 @@ function getScreenInfo() {
50
54
  const screen = {};
51
55
  uni.getSystemInfo({
52
56
  success: (res) => {
53
- screen.width = res.windowWidth * 710 / 750;
57
+ // screen.width = res.windowWidth;
58
+ screen.width = (res.windowWidth * 710) / 750;
54
59
  screen.height = res.windowHeight;
55
- },
60
+ }
56
61
  });
57
62
  return screen;
58
63
  }
@@ -66,7 +71,7 @@ function html2json(html, customHandler, imageProp, host) {
66
71
  const bufArray = [];
67
72
  const results = {
68
73
  nodes: [],
69
- imageUrls: [],
74
+ imageUrls: []
70
75
  };
71
76
 
72
77
  const screen = getScreenInfo();
@@ -145,7 +150,7 @@ function html2json(html, customHandler, imageProp, host) {
145
150
  let imgUrl = node.attr.src;
146
151
  imgUrl = wxDiscode.urlToHttpUrl(imgUrl, imageProp.domain);
147
152
  Object.assign(node.attr, imageProp, {
148
- src: imgUrl || '',
153
+ src: imgUrl || ''
149
154
  });
150
155
  if (imgUrl) {
151
156
  results.imageUrls.push(imgUrl);
@@ -159,19 +164,11 @@ function html2json(html, customHandler, imageProp, host) {
159
164
 
160
165
  // 处理font标签样式属性
161
166
  if (node.tag === 'font') {
162
- const fontSize = [
163
- 'x-small',
164
- 'small',
165
- 'medium',
166
- 'large',
167
- 'x-large',
168
- 'xx-large',
169
- '-webkit-xxx-large',
170
- ];
167
+ const fontSize = ['x-small', 'small', 'medium', 'large', 'x-large', 'xx-large', '-webkit-xxx-large'];
171
168
  const styleAttrs = {
172
169
  color: 'color',
173
170
  face: 'font-family',
174
- size: 'font-size',
171
+ size: 'font-size'
175
172
  };
176
173
  if (!node.styleStr) node.styleStr = '';
177
174
  Object.keys(styleAttrs).forEach((key) => {
@@ -236,7 +233,7 @@ function html2json(html, customHandler, imageProp, host) {
236
233
 
237
234
  const node = {
238
235
  node: 'text',
239
- text,
236
+ text
240
237
  };
241
238
 
242
239
  if (customHandler.chars) {
@@ -252,7 +249,7 @@ function html2json(html, customHandler, imageProp, host) {
252
249
  }
253
250
  parent.nodes.push(node);
254
251
  }
255
- },
252
+ }
256
253
  });
257
254
 
258
255
  return results;
@@ -13,7 +13,8 @@
13
13
  */
14
14
  // Regular Expressions for parsing tags and attributes
15
15
 
16
- const startTag = /^<([-A-Za-z0-9_]+)((?:\s+[a-zA-Z0-9_:][-a-zA-Z0-9_:.]*(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/;
16
+ const startTag =
17
+ /^<([-A-Za-z0-9_]+)((?:\s+[a-zA-Z0-9_:][-a-zA-Z0-9_:.]*(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/;
17
18
  const endTag = /^<\/([-A-Za-z0-9_]+)[^>]*>/;
18
19
  const attr = /([a-zA-Z0-9_:][-a-zA-Z0-9_:.]*)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g;
19
20
 
@@ -28,17 +29,23 @@ function makeMap(str) {
28
29
  const empty = makeMap('area,base,basefont,br,col,frame,hr,img,input,link,meta,param,embed,command,keygen,source,track,wbr');
29
30
 
30
31
  // Block Elements - HTML 5
31
- const block = makeMap('address,code,article,applet,aside,audio,blockquote,button,canvas,center,dd,del,dir,div,dl,dt,fieldset,figcaption,figure,footer,form,frameset,h1,h2,h3,h4,h5,h6,header,hgroup,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,output,p,pre,section,script,table,tbody,td,tfoot,th,thead,tr,ul,video');
32
+ const block = makeMap(
33
+ 'address,code,article,applet,aside,audio,blockquote,button,canvas,center,dd,del,dir,div,dl,dt,fieldset,figcaption,figure,footer,form,frameset,h1,h2,h3,h4,h5,h6,header,hgroup,hr,iframe,ins,isindex,li,map,menu,noframes,noscript,object,ol,output,p,pre,section,script,table,tbody,td,tfoot,th,thead,tr,ul,video'
34
+ );
32
35
 
33
36
  // Inline Elements - HTML 5
34
- const inline = makeMap('a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var');
37
+ const inline = makeMap(
38
+ 'a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,script,select,small,span,strike,strong,sub,sup,textarea,tt,u,var'
39
+ );
35
40
 
36
41
  // Elements that you can, intentionally, leave open
37
42
  // (and which close themselves)
38
43
  const closeSelf = makeMap('colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr');
39
44
 
40
45
  // Attributes that have their values filled in disabled="disabled"
41
- const fillAttrs = makeMap('checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected');
46
+ const fillAttrs = makeMap(
47
+ 'checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected'
48
+ );
42
49
 
43
50
  function HTMLParser(html, handler) {
44
51
  let index;
@@ -98,7 +105,7 @@ function HTMLParser(html, handler) {
98
105
  attrs.push({
99
106
  name,
100
107
  value,
101
- escaped: value.replace(/(^|[^\\])"/g, '$1\\"'), // "
108
+ escaped: value.replace(/(^|[^\\])"/g, '$1\\"') // "
102
109
  });
103
110
  });
104
111
 
@@ -191,5 +191,5 @@ function urlToHttpUrl(url, domain) {
191
191
 
192
192
  export default {
193
193
  strDiscode,
194
- urlToHttpUrl,
194
+ urlToHttpUrl
195
195
  };
@@ -2,6 +2,7 @@
2
2
 
3
3
  > 支持 Html、Markdown 解析,Fork自: [mpvue-wxParse](https://github.com/F-loat/mpvue-wxParse)
4
4
 
5
+
5
6
  ## 属性
6
7
 
7
8
  | 名称 | 类型 | 默认值 | 描述 |
@@ -48,7 +49,12 @@
48
49
  </template>
49
50
 
50
51
  <script>
52
+ import uParse from '@/components/u-parse/u-parse.vue'
53
+
51
54
  export default {
55
+ components: {
56
+ uParse
57
+ },
52
58
  data () {
53
59
  return {
54
60
  article: '<div>我是HTML代码</div>'
@@ -8,29 +8,17 @@
8
8
  * for: 微信小程序富文本解析
9
9
  * detail : http://weappdev.com/t/wxparse-alpha0-1-html-markdown/184
10
10
  */
11
- /**
12
- * 请在全局下引入该文件,@import 'u-parse.css';
13
- */
11
+
14
12
  .wxParse {
15
- user-select: none;
16
13
  width: 100%;
17
- font-family: Helvetica, "PingFangSC", 'Microsoft Yahei', '微软雅黑', Arial, sans-serif;
18
- color: #333;
19
- line-height: 1.5;
20
- font-size: 1em;
21
- text-align: justify;
22
- /* //左右两端对齐 */
14
+ font-family: Helvetica, sans-serif;
15
+ font-size: 30rpx;
16
+ color: #666;
17
+ line-height: 1.8;
23
18
  }
24
19
 
25
- .wxParse view,
26
- .wxParse uni-view {
27
- word-break: break-word;
28
- }
29
-
30
- .wxParse .p {
31
- padding-bottom: 1em;
32
- clear: both;
33
- /* letter-spacing: 0;//字间距 */
20
+ .wxParse view {
21
+ word-break: hyphenate;
34
22
  }
35
23
 
36
24
  .wxParse .inline {
@@ -42,50 +30,47 @@
42
30
  .wxParse .div {
43
31
  margin: 0;
44
32
  padding: 0;
45
- display: block;
46
33
  }
47
34
 
48
- .wxParse .h1 {
35
+ .wxParse .h1 .text {
49
36
  font-size: 2em;
50
- line-height: 1.2em;
51
37
  margin: 0.67em 0;
52
38
  }
53
-
54
- .wxParse .h2 {
39
+ .wxParse .h2 .text {
55
40
  font-size: 1.5em;
56
41
  margin: 0.83em 0;
57
42
  }
58
-
59
- .wxParse .h3 {
43
+ .wxParse .h3 .text {
60
44
  font-size: 1.17em;
61
45
  margin: 1em 0;
62
46
  }
63
-
64
- .wxParse .h4 {
47
+ .wxParse .h4 .text {
65
48
  margin: 1.33em 0;
66
49
  }
67
-
68
- .wxParse .h5 {
50
+ .wxParse .h5 .text {
69
51
  font-size: 0.83em;
70
52
  margin: 1.67em 0;
71
53
  }
72
-
73
- .wxParse .h6 {
74
- font-size: 0.83em;
75
- margin: 1.67em 0;
54
+ .wxParse .h6 .text {
55
+ font-size: 0.67em;
56
+ margin: 2.33em 0;
76
57
  }
77
58
 
78
- .wxParse .h1,
79
- .wxParse .h2,
80
- .wxParse .h3,
81
- .wxParse .h4,
82
- .wxParse .h5,
83
- .wxParse .h6,
59
+ .wxParse .h1 .text,
60
+ .wxParse .h2 .text,
61
+ .wxParse .h3 .text,
62
+ .wxParse .h4 .text,
63
+ .wxParse .h5 .text,
64
+ .wxParse .h6 .text,
84
65
  .wxParse .b,
85
66
  .wxParse .strong {
86
67
  font-weight: bolder;
87
68
  }
88
69
 
70
+ .wxParse .p {
71
+ margin: 1em 0;
72
+ }
73
+
89
74
  .wxParse .i,
90
75
  .wxParse .cite,
91
76
  .wxParse .em,
@@ -101,7 +86,6 @@
101
86
  .wxParse .samp {
102
87
  font-family: monospace;
103
88
  }
104
-
105
89
  .wxParse .pre {
106
90
  overflow: auto;
107
91
  background: #f5f5f5;
@@ -109,7 +93,6 @@
109
93
  white-space: pre;
110
94
  margin: 1em 0rpx;
111
95
  }
112
-
113
96
  .wxParse .code {
114
97
  display: inline;
115
98
  background: #f5f5f5;
@@ -128,7 +111,6 @@
128
111
  .wxParse .sub {
129
112
  vertical-align: sub;
130
113
  }
131
-
132
114
  .wxParse .sup {
133
115
  vertical-align: super;
134
116
  }
@@ -157,26 +139,21 @@
157
139
  width: 100%;
158
140
  }
159
141
 
160
- .wxParse .uni-image {
161
- max-width: 100%;
162
- }
163
-
164
142
  .wxParse .img {
165
- display: block;
143
+ display: inline-block;
144
+ width: 0;
145
+ height: 0;
166
146
  max-width: 100%;
167
- margin-bottom: -1em;
168
- /* //与p标签底部padding同时修改 */
169
147
  overflow: hidden;
170
148
  }
171
149
 
172
150
  .wxParse .blockquote {
173
151
  margin: 10rpx 0;
174
152
  padding: 22rpx 0 22rpx 22rpx;
175
- font-family: Courier, Calibri, "宋体";
153
+ font-family: Courier, Calibri, '宋体';
176
154
  background: #f5f5f5;
177
155
  border-left: 6rpx solid #dbdbdb;
178
156
  }
179
-
180
157
  .wxParse .blockquote .p {
181
158
  margin: 0;
182
159
  }
@@ -185,36 +162,31 @@
185
162
  .wxParse .ol {
186
163
  display: block;
187
164
  margin: 1em 0;
188
- padding-left: 2em;
165
+ padding-left: 33rpx;
189
166
  }
190
-
191
167
  .wxParse .ol {
192
168
  list-style-type: disc;
193
169
  }
194
-
195
170
  .wxParse .ol {
196
171
  list-style-type: decimal;
197
172
  }
198
-
199
- .wxParse .ol>weixin-parse-template,
200
- .wxParse .ul>weixin-parse-template {
173
+ .wxParse .ol > weixin-parse-template,
174
+ .wxParse .ul > weixin-parse-template {
201
175
  display: list-item;
202
176
  align-items: baseline;
203
177
  text-align: match-parent;
204
178
  }
205
179
 
206
- .wxParse .ol>.li,
207
- .wxParse .ul>.li {
180
+ .wxParse .ol > .li,
181
+ .wxParse .ul > .li {
208
182
  display: list-item;
209
183
  align-items: baseline;
210
184
  text-align: match-parent;
211
185
  }
212
-
213
186
  .wxParse .ul .ul,
214
187
  .wxParse .ol .ul {
215
188
  list-style-type: circle;
216
189
  }
217
-
218
190
  .wxParse .ol .ol .ul,
219
191
  .wxParse .ol .ul .ul,
220
192
  .wxParse .ul .ol .ul,
@@ -225,59 +197,44 @@
225
197
  .wxParse .u {
226
198
  text-decoration: underline;
227
199
  }
228
-
229
200
  .wxParse .hide {
230
201
  display: none;
231
202
  }
232
-
233
203
  .wxParse .del {
234
204
  display: inline;
235
205
  }
236
-
237
206
  .wxParse .figure {
238
207
  overflow: hidden;
239
208
  }
240
209
 
241
210
  .wxParse .table {
242
- border-collapse: collapse;
243
- box-sizing: border-box;
244
- /* 内边框 */
245
- border: 1px solid #dadada;
246
211
  width: 100%;
247
212
  }
248
-
249
- .wxParse .tbody {
250
- border-collapse: collapse;
251
- box-sizing: border-box;
252
- /* 内边框 */
253
- border: 1px solid #dadada;
254
- }
255
-
256
213
  .wxParse .thead,
257
214
  .wxParse .tfoot,
258
- .wxParse .th {
259
- border-collapse: collapse;
260
- box-sizing: border-box;
261
- background: #ececec;
262
- font-weight: 40;
215
+ .wxParse .tr {
216
+ display: flex;
217
+ flex-direction: row;
263
218
  }
264
-
265
219
  .wxParse .tr {
266
- border-collapse: collapse;
267
- box-sizing: border-box;
268
- /* border: 2px solid #F0AD4E; */
269
- overflow: auto;
220
+ width: 100%;
221
+ display: flex;
222
+ border-right: 2rpx solid #e0e0e0;
223
+ border-bottom: 2rpx solid #e0e0e0;
270
224
  }
271
-
272
225
  .wxParse .th,
273
226
  .wxParse .td {
274
- border-collapse: collapse;
275
- box-sizing: border-box;
276
- border: 1px solid #dadada;
227
+ display: flex;
228
+ width: 1276rpx;
277
229
  overflow: auto;
230
+ flex: 1;
231
+ padding: 11rpx;
232
+ border-left: 2rpx solid #e0e0e0;
278
233
  }
279
-
280
- .wxParse .audio,
281
- .wxParse .uni-audio-default {
282
- display: block;
234
+ .wxParse .td:last {
235
+ border-top: 2rpx solid #e0e0e0;
236
+ }
237
+ .wxParse .th {
238
+ background: #f0f0f0;
239
+ border-top: 2rpx solid #e0e0e0;
283
240
  }