Commit 6d921c99117f03f8a1d96e4e172504605e06d4fd

Authored by liuqimichale
1 parent 651530df

高位视频

src/api/highVideo.js 0 → 100644
  1 +import request from '@/utils/request'
  2 +
  3 +
  4 +
  5 +// 异常数据平台审核
  6 +export function orderExamine(params) {
  7 + return request({
  8 + url: 'orderExamine/queryLists',
  9 + method: 'post',
  10 + data: params
  11 + })
  12 +}
  13 +
  14 +
  15 +
  16 +
  17 +
  18 +
  19 +
  20 +
  21 +
... ...
src/assets/css/base.scss 0 → 100644
  1 +$commonLeftRightPadding:0 10px;
... ...
src/assets/css/reset.css 0 → 100644
  1 +@charset "utf-8";
  2 +/* CSS Document */
  3 +html,body,ul,li,ol,dl,dd,dt,p,h1,h2,h3,h4,h5,h6,form,fieldset,legend,img
  4 +{
  5 + margin: 0;
  6 + padding: 0;
  7 +}
  8 +fieldset,c
  9 +{
  10 + border: none;
  11 +}
  12 +img {
  13 + display: block;
  14 +}
  15 +address,caption,cite,code,dfn,th,var
  16 +{
  17 + font-style: normal;
  18 + font-weight: normal;
  19 +}
  20 +ul,ol,li
  21 +{
  22 + list-style: none;
  23 +}
  24 +body {
  25 + color: #333;
  26 + font: 14px PingFang SC, microsoft yahei, sans-serif;
  27 + background: #FCFCFC;;
  28 +}
  29 +a {
  30 + color: #fff;
  31 + text-decoration: none;
  32 +}
  33 +/*清除浮动*/
  34 +.clear {
  35 + clear: both
  36 +}
  37 +* {
  38 + box-sizing: border-box
  39 +}
  40 +.border-1px::after {
  41 + content: '';
  42 + position: absolute;
  43 + top: 0;
  44 + left: 0;
  45 + -webkit-box-sizing: border-box;
  46 + box-sizing: border-box;
  47 + width: 200%;
  48 + height: 200%;
  49 + -webkit-transform: scale(0.5);
  50 + transform: scale(0.5);
  51 + -webkit-transform-origin: left top;
  52 + transform-origin: left top;
  53 + pointer-events: none;
  54 +}
  55 +body,html,#app
  56 +{
  57 + height: 100%;
  58 + background: #FCFCFC;
  59 +}
  60 +
  61 +.leftRightPadding{
  62 + padding: 0 10px;
  63 +}
... ...
src/utils/common.js 0 → 100644
src/utils/filters.js 0 → 100644
  1 +const vFilter = {
  2 + formateColor: function(val) { // 0:蓝牌;1:黄牌;2:白牌;3:黑牌;4:绿色
  3 + switch (val) {
  4 + case '0':
  5 + return 'carBlue'
  6 + break;
  7 + case '1':
  8 + return 'carYellow'
  9 + break;
  10 + case '2':
  11 + return 'carWhite'
  12 + break;
  13 + case '3':
  14 + return 'carBlack'
  15 + break;
  16 + case '4':
  17 + return 'carGreen'
  18 + break;
  19 +
  20 + }
  21 + }
  22 +}
  23 +
  24 +export default vFilter
... ...
src/utils/md5.min.js 0 → 100644
  1 +!function(a){"use strict";function b(a,b){var c=(65535&a)+(65535&b),d=(a>>16)+(b>>16)+(c>>16);return d<<16|65535&c}function c(a,b){return a<<b|a>>>32-b}function d(a,d,e,f,g,h){return b(c(b(b(d,a),b(f,h)),g),e)}function e(a,b,c,e,f,g,h){return d(b&c|~b&e,a,b,f,g,h)}function f(a,b,c,e,f,g,h){return d(b&e|c&~e,a,b,f,g,h)}function g(a,b,c,e,f,g,h){return d(b^c^e,a,b,f,g,h)}function h(a,b,c,e,f,g,h){return d(c^(b|~e),a,b,f,g,h)}function i(a,c){a[c>>5]|=128<<c%32,a[(c+64>>>9<<4)+14]=c;var d,i,j,k,l,m=1732584193,n=-271733879,o=-1732584194,p=271733878;for(d=0;d<a.length;d+=16)i=m,j=n,k=o,l=p,m=e(m,n,o,p,a[d],7,-680876936),p=e(p,m,n,o,a[d+1],12,-389564586),o=e(o,p,m,n,a[d+2],17,606105819),n=e(n,o,p,m,a[d+3],22,-1044525330),m=e(m,n,o,p,a[d+4],7,-176418897),p=e(p,m,n,o,a[d+5],12,1200080426),o=e(o,p,m,n,a[d+6],17,-1473231341),n=e(n,o,p,m,a[d+7],22,-45705983),m=e(m,n,o,p,a[d+8],7,1770035416),p=e(p,m,n,o,a[d+9],12,-1958414417),o=e(o,p,m,n,a[d+10],17,-42063),n=e(n,o,p,m,a[d+11],22,-1990404162),m=e(m,n,o,p,a[d+12],7,1804603682),p=e(p,m,n,o,a[d+13],12,-40341101),o=e(o,p,m,n,a[d+14],17,-1502002290),n=e(n,o,p,m,a[d+15],22,1236535329),m=f(m,n,o,p,a[d+1],5,-165796510),p=f(p,m,n,o,a[d+6],9,-1069501632),o=f(o,p,m,n,a[d+11],14,643717713),n=f(n,o,p,m,a[d],20,-373897302),m=f(m,n,o,p,a[d+5],5,-701558691),p=f(p,m,n,o,a[d+10],9,38016083),o=f(o,p,m,n,a[d+15],14,-660478335),n=f(n,o,p,m,a[d+4],20,-405537848),m=f(m,n,o,p,a[d+9],5,568446438),p=f(p,m,n,o,a[d+14],9,-1019803690),o=f(o,p,m,n,a[d+3],14,-187363961),n=f(n,o,p,m,a[d+8],20,1163531501),m=f(m,n,o,p,a[d+13],5,-1444681467),p=f(p,m,n,o,a[d+2],9,-51403784),o=f(o,p,m,n,a[d+7],14,1735328473),n=f(n,o,p,m,a[d+12],20,-1926607734),m=g(m,n,o,p,a[d+5],4,-378558),p=g(p,m,n,o,a[d+8],11,-2022574463),o=g(o,p,m,n,a[d+11],16,1839030562),n=g(n,o,p,m,a[d+14],23,-35309556),m=g(m,n,o,p,a[d+1],4,-1530992060),p=g(p,m,n,o,a[d+4],11,1272893353),o=g(o,p,m,n,a[d+7],16,-155497632),n=g(n,o,p,m,a[d+10],23,-1094730640),m=g(m,n,o,p,a[d+13],4,681279174),p=g(p,m,n,o,a[d],11,-358537222),o=g(o,p,m,n,a[d+3],16,-722521979),n=g(n,o,p,m,a[d+6],23,76029189),m=g(m,n,o,p,a[d+9],4,-640364487),p=g(p,m,n,o,a[d+12],11,-421815835),o=g(o,p,m,n,a[d+15],16,530742520),n=g(n,o,p,m,a[d+2],23,-995338651),m=h(m,n,o,p,a[d],6,-198630844),p=h(p,m,n,o,a[d+7],10,1126891415),o=h(o,p,m,n,a[d+14],15,-1416354905),n=h(n,o,p,m,a[d+5],21,-57434055),m=h(m,n,o,p,a[d+12],6,1700485571),p=h(p,m,n,o,a[d+3],10,-1894986606),o=h(o,p,m,n,a[d+10],15,-1051523),n=h(n,o,p,m,a[d+1],21,-2054922799),m=h(m,n,o,p,a[d+8],6,1873313359),p=h(p,m,n,o,a[d+15],10,-30611744),o=h(o,p,m,n,a[d+6],15,-1560198380),n=h(n,o,p,m,a[d+13],21,1309151649),m=h(m,n,o,p,a[d+4],6,-145523070),p=h(p,m,n,o,a[d+11],10,-1120210379),o=h(o,p,m,n,a[d+2],15,718787259),n=h(n,o,p,m,a[d+9],21,-343485551),m=b(m,i),n=b(n,j),o=b(o,k),p=b(p,l);return[m,n,o,p]}function j(a){var b,c="";for(b=0;b<32*a.length;b+=8)c+=String.fromCharCode(a[b>>5]>>>b%32&255);return c}function k(a){var b,c=[];for(c[(a.length>>2)-1]=void 0,b=0;b<c.length;b+=1)c[b]=0;for(b=0;b<8*a.length;b+=8)c[b>>5]|=(255&a.charCodeAt(b/8))<<b%32;return c}function l(a){return j(i(k(a),8*a.length))}function m(a,b){var c,d,e=k(a),f=[],g=[];for(f[15]=g[15]=void 0,e.length>16&&(e=i(e,8*a.length)),c=0;16>c;c+=1)f[c]=909522486^e[c],g[c]=1549556828^e[c];return d=i(f.concat(k(b)),512+8*b.length),j(i(g.concat(d),640))}function n(a){var b,c,d="0123456789abcdef",e="";for(c=0;c<a.length;c+=1)b=a.charCodeAt(c),e+=d.charAt(b>>>4&15)+d.charAt(15&b);return e}function o(a){return unescape(encodeURIComponent(a))}function p(a){return l(o(a))}function q(a){return n(p(a))}function r(a,b){return m(o(a),o(b))}function s(a,b){return n(r(a,b))}function t(a,b,c){return b?c?r(b,a):s(b,a):c?p(a):q(a)}"function"==typeof define&&define.amd?define(function(){return t}):a.md5=t}(this);
0 2 \ No newline at end of file
... ...
src/utils/request.js 0 → 100644
  1 +import axios from 'axios'
  2 +
  3 +// let _url = process.env.API_ROOT
  4 +// axios.defaults.baseURL = process.env.API_ROOT
  5 +const service = axios.create({
  6 +
  7 +
  8 + baseURL: 'http://39.98.58.92:8093/', // url = base url + request url
  9 + // withCredentials: true, // send cookies when cross-domain requests
  10 + timeout: 6000 // request timeout
  11 +})
  12 +
  13 +service.interceptors.request.use(
  14 + config => {
  15 + return config
  16 + },
  17 + error => {
  18 + // do something with request error
  19 + console.log(error) // for debug
  20 + return Promise.reject(error)
  21 + }
  22 +)
  23 +
  24 +// response interceptor
  25 +service.interceptors.response.use(
  26 + response => {
  27 + const res = response.data
  28 + // if the custom code is not 20000, it is judged as an error.
  29 + if (res.code != '8888') {
  30 + return res
  31 + } else {
  32 + return res
  33 + }
  34 + },
  35 + error => {
  36 + console.log('err' + error) // for debug
  37 + return Promise.reject(error)
  38 + }
  39 +)
  40 +
  41 +export default service
... ...
src/utils/utils.js 0 → 100644
  1 +import md5 from './md5.min.js';
  2 +export default {
  3 + myCommonSalt: function (val) { // 获取盐值
  4 + let len = parseInt(val);
  5 + let $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
  6 + let maxPos = $chars.length;
  7 + var pwd = '';
  8 + for (var i = 0; i < len; i++) {
  9 + pwd += $chars.charAt(Math.floor(Math.random() * maxPos));
  10 + }
  11 + console.log(pwd);
  12 + return pwd;
  13 + },
  14 +
  15 + formatDate: function(secs, type=0){ //type是可选参数,因为json中时间的格式是year-month-date,不能识别XX年XX月XX日
  16 + var t = new Date(secs)
  17 + var year = t.getFullYear()
  18 + var month = t.getMonth() + 1
  19 + if(month < 10){ month = '0' + month }
  20 + var date = t.getDate()
  21 + if(date < 10){ date = '0' + date }
  22 + var hour = t.getHours()
  23 + if(hour < 10){ hour = '0' + hour }
  24 + var minute = t.getMinutes()
  25 + if(minute < 10){ minute = '0' + minute }
  26 + var second = t.getSeconds()
  27 + if(second < 10){ second = '0' + second }
  28 + if(type==0){
  29 + return year + '年' + month + '月' + date + '日'
  30 + }else{
  31 + return year + '-'+month+'-'+date
  32 + }},
  33 +
  34 + timestampToTime: function (timestamp) {
  35 + var d = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
  36 + var youWant=d.getFullYear() + '-' + this.completedString(d.getMonth() + 1) + '-' + this.completedString(d.getDate()) ;
  37 + return youWant
  38 + },
  39 + completedString:function(s) {
  40 + return s < 10 ? '0' + s : s
  41 + },
  42 +
  43 +
  44 +
  45 + dateFormat: function (msd) { // 时间转换
  46 + var time = msd
  47 +
  48 + if (null != time && "" != time) {
  49 +
  50 + if (time > 60 && time < 60 * 60) {
  51 +
  52 + time = parseInt(time / 60.0) + "分钟" + parseInt((parseFloat(time / 60.0) -
  53 +
  54 + parseInt(time / 60.0)) * 60) + "秒";
  55 +
  56 + }
  57 +
  58 + else if (time >= 60 * 60 && time < 60 * 60 * 24) {
  59 +
  60 + time = parseInt(time / 3600.0) + "小时" + parseInt((parseFloat(time / 3600.0) -
  61 +
  62 + parseInt(time / 3600.0)) * 60) + "分钟" +
  63 +
  64 + parseInt((parseFloat((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60) -
  65 +
  66 + parseInt((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60)) * 60) + "秒";
  67 +
  68 + } else if (time >= 60 * 60 * 24) {
  69 +
  70 + time = parseInt(time / 3600.0 / 24) + "天" + parseInt((parseFloat(time / 3600.0 / 24) -
  71 +
  72 + parseInt(time / 3600.0 / 24)) * 24) + "小时" + parseInt((parseFloat(time / 3600.0) -
  73 +
  74 + parseInt(time / 3600.0)) * 60) + "分钟" +
  75 +
  76 + parseInt((parseFloat((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60) -
  77 +
  78 + parseInt((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60)) * 60) + "秒";
  79 +
  80 + }
  81 +
  82 + else {
  83 +
  84 + time = parseInt(time) + "秒";
  85 +
  86 + }
  87 +
  88 + }
  89 +
  90 + return time;
  91 + },
  92 +
  93 + signObject: function (jsonObj){ //签名字段
  94 + let sort = []
  95 + for(let k in jsonObj){
  96 + sort.push({
  97 + keyname: k,
  98 + value: jsonObj[k]
  99 + })
  100 + }
  101 + return this.myGetSign(sort)
  102 + },
  103 +
  104 + clientBrowser: function () { // 判断客户端
  105 + if (/MicroMessenger/.test(window.navigator.userAgent)) {
  106 + console.log("微信客户端");
  107 + return '微信'
  108 + } else if (/AlipayClient/.test(window.navigator.userAgent)) {
  109 + console.log("支付宝客户端");
  110 + return '支付宝'
  111 + } else if (/BankabciPhone/.test(window.navigator.userAgent)) {
  112 + console.log("农行客户端");
  113 + return '立即'
  114 + }else if (/BankabcAndroid/.test(window.navigator.userAgent)) {
  115 + console.log("农行客户端");
  116 + return '立即'
  117 + }else {
  118 + console.log("其他浏览器");
  119 + return '支付宝'
  120 + }
  121 + },
  122 +
  123 + // 1:支付宝 2:微信 3:银联 10:H5 4微信公众号 34 农行
  124 + clientBrowsePayType: function () { // 判断客户端
  125 + if (/MicroMessenger/.test(window.navigator.userAgent)) {
  126 + console.log("微信客户端");
  127 + return '4'
  128 + } else if (/AlipayClient/.test(window.navigator.userAgent)) {
  129 + console.log("支付宝客户端");
  130 + return '1'
  131 + } else if (/BankabciPhone/.test(window.navigator.userAgent)) {
  132 + console.log("农行客户端");
  133 + return '34'
  134 + }else if (/BankabcAndroid/.test(window.navigator.userAgent)) {
  135 + console.log("农行客户端");
  136 + return '34'
  137 + }else {
  138 + console.log("其他浏览器");
  139 + return '1'
  140 + }
  141 + },
  142 + // 0eca8f5373ca4866aec2f8e9d9367104 老的id
  143 + // 14318527b13840c2a4af63fef52c2d6e 老的签名
  144 +
  145 + // ud8yq5tv0inxupc05xfeau39jywlqoj2 新的id
  146 + // ny1u72b6k374sg379z0kqjgfxe2ycnpw 新的签名
  147 +
  148 + myVarAppid:'ud8yq5tv0inxupc05xfeau39jywlqoj2',// 公共请求Appid
  149 +
  150 + myDeviceInfo: 'BC0703A4-AFB0-4B51-9089-9B7487C0CC6E', // 公共请求设备信息
  151 +
  152 + myVxAppId: 'wx2af2bab90d433c86',
  153 + // 测试环境 微信赤峰 appid wxff4cebaedbf4f886
  154 + // 微信赤峰 appid wx2af2bab90d433c86
  155 + // 黄石 appid wxa1a66cc7d263afe6
  156 +
  157 + myOrgId: '10003', // 归属地 赤峰id 10003 黄石 10079
  158 +
  159 + myGetSign: function (objb) { // 获取签名
  160 + var compare = function (obj1, obj2) {
  161 + var val1 = obj1.keyname;
  162 + var val2 = obj2.keyname;
  163 + if (val1 < val2) {
  164 + return -1;
  165 + } else if (val1 > val2) {
  166 + return 1;
  167 + } else {
  168 + return 0;
  169 + }
  170 + }
  171 + objb.sort(compare);
  172 + var strmd5 = 'ny1u72b6k374sg379z0kqjgfxe2ycnpw';
  173 + for(var i=0;i<objb.length;i++){
  174 + if(objb[i].value != null&&objb[i].value != ''){
  175 + strmd5 += objb[i].keyname+objb[i].value;
  176 + }
  177 + }
  178 + strmd5 += 'ny1u72b6k374sg379z0kqjgfxe2ycnpw';
  179 + // console.log('strmd5-------->'+strmd5);
  180 + strmd5 = md5(strmd5);
  181 + strmd5=strmd5.toUpperCase();
  182 + return strmd5;
  183 + },
  184 +
  185 +}
... ...
src/utils/variables.js 0 → 100644
src/views/highVideo.vue
... ... @@ -32,7 +32,7 @@
32 32 </el-col>
33 33 </el-row>
34 34 </el-header>
35   - <el-main style="padding: 0">
  35 + <el-main style="padding: 0;display: flex">
36 36 <ul class="status-wrap">
37 37 <li>
38 38 <el-row>
... ... @@ -54,7 +54,7 @@
54 54 <span>停车事件: 正常</span>
55 55 </p>
56 56 </el-col>
57   - <el-col :span="12" style="overflow-x: auto">
  57 + <el-col :span="16" style="overflow-x: auto;width: 570px;">
58 58 <div class="imgBox" :style="{width: attachmentList.length*190+'px'}">
59 59 <img
60 60 v-for="(item,index) in attachmentList"
... ... @@ -65,21 +65,55 @@
65 65 </div>
66 66  
67 67 </el-col>
68   - <el-col :span="4" style="text-align: center;line-height: 120px">
69   -
70   - <!--<el-input placeholder="请输入内容" v-model="carNumber" class="input-with-select">-->
71   - <!--<template slot="prepend">修改车牌</template>-->
72   - <!--<el-button slot="append" icon="el-icon-search">确定</el-button>-->
73   - <!--</el-input>-->
74   -
75   - <el-button type="primary">操作</el-button>
76   - </el-col>
  68 + <!--<el-col :span="4" style="text-align: center;line-height: 120px">-->
  69 + <!--<el-button type="primary">操作</el-button>-->
  70 + <!--</el-col>-->
77 71  
78 72 </el-row>
79 73 </li>
80 74 <li></li>
81 75 <li></li>
82 76 </ul>
  77 +
  78 + <div class="handle-wrap">
  79 + <el-input v-model="carNumber" maxlength="9">
  80 + <template slot="prepend">改车牌</template>
  81 + <el-button slot="append">确定</el-button>
  82 + </el-input>
  83 + <div>
  84 + <el-date-picker style="width:100%;margin-top:15px;"
  85 + v-model="value1"
  86 + default-value="2021-08-01 00:02:02"
  87 + type="datetime"
  88 + placeholder="选择日期时间">
  89 + </el-date-picker>
  90 +
  91 + </div>
  92 + <div>
  93 + <el-button type="primary" size="medium" style="width:100%;margin-top:15px;">通过</el-button>
  94 + </div>
  95 + <div>
  96 + <el-button type="primary" size="medium" style="width:100%;margin-top:15px;">废弃</el-button>
  97 +
  98 + </div>
  99 +
  100 + <div>
  101 + <el-button type="primary" size="medium" style="width:100%;margin-top:15px;">撤销</el-button>
  102 +
  103 + </div>
  104 +
  105 + <div>
  106 + <el-button type="primary" size="medium" style="width:100%;margin-top:15px;">补录</el-button>
  107 +
  108 + </div>
  109 +
  110 + <div>
  111 + <el-button type="success" size="medium" style="width:100%;margin-top:15px;">确定</el-button>
  112 +
  113 + </div>
  114 +
  115 +
  116 + </div>
83 117 </el-main>
84 118 <el-footer class="footer-wrap" style="height: 40px;">
85 119  
... ... @@ -102,7 +136,7 @@
102 136 center>
103 137  
104 138 <div class="button">
105   - <el-input v-model="carNumber" maxlength="9">
  139 + <el-input v-model="carNumber" maxlength="9">
106 140 <template slot="prepend">修改车牌</template>
107 141 </el-input>
108 142 <div style="margin-bottom: 15px;"></div>
... ... @@ -127,17 +161,20 @@
127 161  
128 162 <script>
129 163  
  164 +import { orderExamine } from '@/api/highVideo'
  165 +
130 166 export default {
131 167 name: 'highVideo',
132 168 data() {
133 169 return {
134   - centerDialogVisible:true,
135   - carNumber:'京A123312',
136   - swiperOption:{
137   - autoplay : 5000,//可选选项,自动滑动
138   - loop : true,//可选选项,开启循环
  170 + value1: '2021-08-01 00:02:02',
  171 + centerDialogVisible: false,
  172 + carNumber: '京A123312',
  173 + swiperOption: {
  174 + autoplay: 5000,//可选选项,自动滑动
  175 + loop: true,//可选选项,开启循环
139 176 },
140   - attachmentList:[
  177 + attachmentList: [
141 178 'https://img-blog.csdnimg.cn/img_convert/26200f8ecce45d09d4f4bc5a8f4572c5.png',
142 179 'https://img-blog.csdnimg.cn/20190504154805438.png',
143 180 'https://img-blog.csdnimg.cn/img_convert/26200f8ecce45d09d4f4bc5a8f4572c5.png',
... ... @@ -159,62 +196,71 @@ export default {
159 196 color: #fff;
160 197 }
161 198  
162   - .status-wrap{
  199 + .status-wrap {
  200 + flex: 1;
  201 + }
163 202  
  203 + .handle-wrap {
  204 + width: 300px;
  205 + padding: 15px;
  206 + border-left: 1px solid #ddd;
  207 + border-right: 1px solid #ddd;
164 208 }
165 209  
166   - .status-wrap>li{
  210 + .status-wrap > li {
167 211 height: 130px;
168 212 border-bottom: 1px solid #ddd;
169 213 }
170 214  
171   - .status-wrap>li:last-child{
172   - border-bottom:0;
  215 + .status-wrap > li:last-child {
  216 + border-bottom: 0;
173 217 }
174 218  
175   - .status-ifo{
  219 + .status-ifo {
176 220 display: flex;
177 221 margin-top: 10px;
178 222 }
179   - .status-ifo span{
  223 +
  224 + .status-ifo span {
180 225 flex: 1;
181 226 }
182 227  
183   - .blueText{
  228 + .blueText {
184 229 color: blue;
185 230 }
186 231  
187   - .redText{
  232 + .redText {
188 233 color: red;
189 234 }
190 235  
191   - .imgBox{
  236 + .imgBox {
192 237 /*width: 590px;*/
193 238 height: 120px;
194 239 padding-top: 10px;
195 240 overflow-y: hidden;
196 241 overflow-x: auto;
197   - white-space:nowrap
  242 + white-space: nowrap
198 243 }
199   - .imgBox>img{
200   - display:inline-block;
  244 +
  245 + .imgBox > img {
  246 + display: inline-block;
201 247 width: 180px;
202 248 height: 110px;
203 249 float: left;
204 250 margin-right: 10px;
205 251 }
206   - .imgBox>img:last-child{
  252 +
  253 + .imgBox > img:last-child {
207 254 margin-right: 0;
208 255 }
209 256  
210   - .button button{
  257 + .button button {
211 258 margin-left: 0;
212 259 margin-right: 10px;
213 260 margin-bottom: 10px;
214 261 }
215 262  
216   -
217   - .footer-wrap{
  263 + .footer-wrap {
218 264 line-height: 40px;
219 265 background: #f5f5f5;
220 266 }
... ...