Authored by 毕凯

不兼容 PHP session

@@ -19,9 +19,9 @@ const cookieParser = require('cookie-parser'); @@ -19,9 +19,9 @@ const cookieParser = require('cookie-parser');
19 const favicon = require('serve-favicon'); 19 const favicon = require('serve-favicon');
20 const session = require('yoho-express-session'); 20 const session = require('yoho-express-session');
21 const memcached = require('yoho-connect-memcached'); 21 const memcached = require('yoho-connect-memcached');
22 -const uuid = require('uuid');  
23 const _ = require('lodash'); 22 const _ = require('lodash');
24 const pkg = require('./package.json'); 23 const pkg = require('./package.json');
  24 +const cookie = require('./library/cookie');
25 25
26 const app = express(); 26 const app = express();
27 const MemcachedStore = memcached(session); 27 const MemcachedStore = memcached(session);
@@ -32,9 +32,6 @@ global.library = path.resolve('./library'); @@ -32,9 +32,6 @@ global.library = path.resolve('./library');
32 global.middleware = path.resolve('./doraemon/middleware'); 32 global.middleware = path.resolve('./doraemon/middleware');
33 global.utils = path.resolve('./utils'); 33 global.utils = path.resolve('./utils');
34 34
35 -  
36 -  
37 -  
38 // 向模板注入变量 35 // 向模板注入变量
39 app.locals.devEnv = app.get('env') === 'development'; 36 app.locals.devEnv = app.get('env') === 'development';
40 app.locals.version = pkg.version; 37 app.locals.version = pkg.version;
@@ -47,23 +44,21 @@ app.use(express.static(path.join(__dirname, 'public'))); @@ -47,23 +44,21 @@ app.use(express.static(path.join(__dirname, 'public')));
47 app.use(bodyParser.json()); 44 app.use(bodyParser.json());
48 app.use(bodyParser.urlencoded({extended: false})); 45 app.use(bodyParser.urlencoded({extended: false}));
49 app.use(cookieParser()); 46 app.use(cookieParser());
  47 +
50 app.use(session({ 48 app.use(session({
51 proxy: true, 49 proxy: true,
52 resave: false, 50 resave: false,
53 saveUninitialized: true, 51 saveUninitialized: true,
54 unset: 'destroy', 52 unset: 'destroy',
55 - secret: 'nothing', // 兼容 PHP SESSION,sessionID 不加密  
56 - name: 'PHPSESSID', // 兼容 PHP SESSION  
57 - genid: () => {  
58 - return uuid.v4(); // 兼容 PHP SESSION  
59 - }, 53 + secret: '82dd7e724f2c6870472c89dfa43cf48d',
  54 + name: 'yohobuy_session',
60 cookie: { 55 cookie: {
61 - domain: 'yohobuy.com' 56 + domain: 'yohobuy.com',
  57 + httpOnly: false
62 }, 58 },
63 store: new MemcachedStore({ 59 store: new MemcachedStore({
64 hosts: config.memcache.session, 60 hosts: config.memcache.session,
65 - prefix: 'qinsessionsession:', // 兼容 PHP SESSION  
66 - key: 'yohobuy_session' // 兼容 PHP SESSION 61 + prefix: 'yohobuy_session:'
67 }) 62 })
68 })); 63 }));
69 64
@@ -75,12 +70,15 @@ app.use((req, res, next) => { @@ -75,12 +70,15 @@ app.use((req, res, next) => {
75 req.user.uid = req.session._LOGIN_UID; 70 req.user.uid = req.session._LOGIN_UID;
76 } 71 }
77 72
  73 + // session 没有读取到的时候,从 cookie 读取 UID
  74 + if (!req.user.uid && req.cookies._UID) {
  75 + req.user.uid = cookie.getUid(req);
  76 + }
78 next(); 77 next();
79 }); 78 });
80 79
81 app.use(seo()); 80 app.use(seo());
82 81
83 -  
84 // dispatcher 82 // dispatcher
85 require('./dispatch')(app); 83 require('./dispatch')(app);
86 84
@@ -3,6 +3,9 @@ @@ -3,6 +3,9 @@
3 * @param {[object]} req 3 * @param {[object]} req
4 * @return {[string]} 4 * @return {[string]}
5 */ 5 */
  6 +'use strict';
  7 +const sign = require('./sign');
  8 +
6 exports.getUid = (req) => { 9 exports.getUid = (req) => {
7 const cookie = req.cookies._UID; 10 const cookie = req.cookies._UID;
8 let _uid = 0; 11 let _uid = 0;
@@ -19,5 +22,14 @@ exports.getUid = (req) => { @@ -19,5 +22,14 @@ exports.getUid = (req) => {
19 } 22 }
20 } 23 }
21 24
  25 + // 校验 cookie 的 uid 有没有被修改
  26 + if (req.cookies._TOKEN !== sign.makeToken(_uid)) {
  27 + _uid = 0;
  28 + }
  29 +
22 return _uid; 30 return _uid;
23 }; 31 };
  32 +
  33 +exports.getShoppingKey = (req) => {
  34 + return req.cookies['_SPK'] ? req.cookies['_SPK'] : ''; // eslint-disable-line
  35 +};
1 @charset "utf-8"; 1 @charset "utf-8";
2 2
3 /* 公共 */ 3 /* 公共 */
  4 +/*
  5 +公共样式
  6 +*/
  7 +.g-list li{
  8 + float: left;
  9 +}
  10 +.g-list li a{
  11 + position: relative;
  12 + display: block;
  13 + overflow: hidden;
  14 +}
  15 +.g-list li a img{
  16 + width: 100%;
  17 + height: 100%;
  18 +}
  19 +/*
  20 + 楼层头部样式
  21 + */
  22 +.yoho-page .floor-header{
  23 + position: relative;
  24 + margin: 80px 0 40px;
  25 +}
  26 +.yoho-page .floor-header .floor-title{
  27 + margin: 0 auto;
  28 + width: 298px;
  29 + height: 31px;
  30 + line-height: 31px;
  31 + border: 1px solid #000;
  32 + font-size: 16px;
  33 + text-align: center;
  34 +}
  35 +.yoho-page .floor-header .header-navs{
  36 + position: absolute;
  37 + padding: 10px 0;
  38 + top: 0;
  39 + right: 0;
  40 + font-size: 14px;
  41 +}
  42 +.yoho-page .floor-header .header-navs li{
  43 + float: left;
  44 + padding: 1px 15px;
  45 + border-left: 1px solid #ccc;
  46 +}
  47 +.yoho-page .floor-header .header-navs li a{
  48 + color: #333;
  49 +}
  50 +.yoho-page .floor-header .header-navs li:first-child{
  51 + border-left: none;
  52 +}
  53 +.yoho-page .floor-header .header-navs li:hover{
  54 + text-decoration: underline;
  55 +}
  56 +/*
  57 +热门推荐模板样式
  58 +*/
  59 +.home-page .tpl-recommend{
  60 + width: 100%;
  61 + position: relative;
  62 +}
  63 +.home-page .tpl-recommend a{
  64 + display: block;
  65 +}
  66 +.home-page .tpl-recommend a img{
  67 + display: block;
  68 + width: 100%;
  69 + height: 100%;
  70 +}
  71 +.home-page .tpl-recommend .tpl-body{
  72 + margin-bottom: 8px;
  73 +}
  74 +.home-page .tpl-recommend .tpl-nav{
  75 + float: left;
  76 + overflow: hidden;
  77 +}
  78 +.home-page .tpl-recommend .tpl-nav .tpl-keywords{
  79 + margin-bottom: 8px;
  80 +}
  81 +.home-page .tpl-recommend .tpl-nav .tpl-category{
  82 + padding: 10px 0;
  83 + background-color: #f8f8f8;
  84 + overflow: hidden;
  85 +}
  86 +.home-page .tpl-recommend .tpl-nav .tpl-category a{
  87 + float: left;
  88 + width: 50%;
  89 + text-align: center;
  90 + color: #000;
  91 + overflow: hidden;
  92 +}
  93 +.home-page .tpl-recommend .tpl-brands{
  94 + float: left;
  95 + overflow: hidden;
  96 + margin-left: 8px;
  97 +}
  98 +.home-page .tpl-recommend .tpl-brands li{
  99 + margin-top: 8px;
  100 +}
  101 +.home-page .tpl-recommend .tpl-types{
  102 + float: left;
  103 + overflow: hidden;
  104 + margin-top: -8px;
  105 + width: 579px;
  106 +}
  107 +.home-page .tpl-recommend .tpl-types li{
  108 + float: left;
  109 + margin-left: 8px;
  110 + margin-top: 8px;
  111 +}
  112 +.home-page .tpl-recommend .tpl-types li a{
  113 + width: 185px;
  114 + height: 248px;
  115 +}
  116 +.home-page .tpl-recommend .tpl-products{
  117 + overflow: hidden;
  118 + margin-left: -10px;
  119 +}
  120 +.home-page .tpl-recommend .tpl-products li{
  121 + float: left;
  122 + margin-left: 10px;
  123 +}
  124 +.home-page .tpl-recommend .tpl-products li a{
  125 + width: 222px;
  126 + height: 298px;
  127 +}
  128 +.home-page .tpl-recommend .tpl-nav{
  129 + width: 185px;
  130 +}
  131 +.home-page .tpl-recommend .tpl-nav .keywords0, .home-page .tpl-recommend .tpl-nav .keywords1, .home-page .tpl-recommend .tpl-nav .keywords2{
  132 + margin-bottom: 10px;
  133 + height: 76px;
  134 +}
  135 +.home-page .tpl-recommend .tpl-nav .keywords2{
  136 + margin-bottom: 0;
  137 +}
  138 +.home-page .tpl-recommend .tpl-nav .tpl-category{
  139 + height: 228px;
  140 +}
  141 +.home-page .tpl-recommend .tpl-nav .tpl-category a{
  142 + height: 38px;
  143 + line-height: 38px;
  144 + font-size: 14px;
  145 +}
  146 +.home-page .tpl-recommend .tpl-brands{
  147 + width: 378px;
  148 + height: 512px;
  149 +}
  150 +.home-page .tpl-recommend .tpl-brands li a{
  151 + height: 248px;
  152 +}
  153 +/*
  154 +人气单品
  155 +*/
  156 +.home-page .flash-sale .flash-sale-list{
  157 + margin-left: -10px;
  158 +}
  159 +.home-page .flash-sale .flash-sale-list a{
  160 + height: 340px;
  161 + width: 560px;
  162 +}
  163 +.home-page .flash-sale .flash-sale-list li{
  164 + margin: 10px;
  165 +}
  166 +.home-page .flash-sale .flash-sale-list .flash-sale-banner{
  167 + position: relative;
  168 + height: 260px;
  169 +}
  170 +.home-page .flash-sale .flash-sale-list .flash-sale-bottom{
  171 + height: 78px;
  172 + position: relative;
  173 + border: 1px solid #000;
  174 + border-top-style: none;
  175 +}
  176 +.home-page .flash-sale .flash-sale-list p.flash-sale-count{
  177 + position: absolute;
  178 + left: 50px;
  179 + top: 20px;
  180 +}
  181 +.home-page .flash-sale .flash-sale-list p.flash-sale-name{
  182 + position: absolute;
  183 + left: 120px;
  184 + top: 20px;
  185 +}
  186 +.home-page .flash-sale .flash-sale-list p.flash-sale-timer{
  187 + position: absolute;
  188 + left: 50px;
  189 + top: 50px;
  190 +}
  191 +.home-page .flash-sale .flash-sale-list .flash-sale-logo{
  192 + position: absolute;
  193 + right: 50px;
  194 + width: 100px;
  195 + height: 80px;
  196 +}
  197 +.home-page .flash-sale .flash-sale-list .flash-sale-logo img{
  198 + width: 100px;
  199 + height: 50px;
  200 + margin-top: 15px;
  201 +}
4 html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{ 202 html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{
5 margin: 0; 203 margin: 0;
6 padding: 0; 204 padding: 0;
@@ -550,6 +748,11 @@ a{ @@ -550,6 +748,11 @@ a{
550 .yoho-header .head-wrapper .main-nav-list .cure a{ 748 .yoho-header .head-wrapper .main-nav-list .cure a{
551 color: #fff; 749 color: #fff;
552 } 750 }
  751 +.yoho-header .head-wrapper .main-nav-list .menu-ico{
  752 + width: 80px;
  753 + height: 32px;
  754 + display: block;
  755 +}
553 .yoho-header .head-wrapper .outlets-logo{ 756 .yoho-header .head-wrapper .outlets-logo{
554 background: url('../img/layout/outlets.png') no-repeat center center; 757 background: url('../img/layout/outlets.png') no-repeat center center;
555 width: 200px; 758 width: 200px;
@@ -761,7 +964,7 @@ a{ @@ -761,7 +964,7 @@ a{
761 line-height: 40px; 964 line-height: 40px;
762 padding-right: 46px; 965 padding-right: 46px;
763 box-sizing: border-box; 966 box-sizing: border-box;
764 - margin-right: 38px; 967 + margin-right: 36px;
765 display: inline-block; 968 display: inline-block;
766 } 969 }
767 .yoho-header .nav-wrapper .sub-nav-list .newlogo{ 970 .yoho-header .nav-wrapper .sub-nav-list .newlogo{
@@ -1323,43 +1526,234 @@ a{ @@ -1323,43 +1526,234 @@ a{
1323 font-size: 12px; 1526 font-size: 12px;
1324 outline: none; 1527 outline: none;
1325 } 1528 }
1326 -  
1327 -/* 模块 */  
1328 -.home-page{  
1329 - width: 1150px;  
1330 - margin: 10px auto 0; 1529 +.slider{
  1530 + position: relative;
  1531 + height: 327px;
  1532 + width: 100%;
  1533 + overflow: hidden;
1331 } 1534 }
1332 -.home-page .slide-container{ 1535 +.slider img{
  1536 + max-width: 100%;
  1537 + max-height: 100%;
  1538 +}
  1539 +.slide-pagination{
1333 position: absolute; 1540 position: absolute;
1334 left: 0; 1541 left: 0;
1335 right: 0; 1542 right: 0;
1336 - height: 450px;  
1337 -}  
1338 -.home-page .slide-thumb-container{  
1339 - height: 510px;  
1340 -}  
1341 -.home-page .slide-wrapper{  
1342 - position: relative;  
1343 - height: 450px;  
1344 - overflow: hidden; 1543 + bottom: 12px;
  1544 + text-align: center;
1345 } 1545 }
1346 -.home-page .slide-wrapper ul{ 1546 +.slide-pagination-inner{
  1547 + display: inline-block;
1347 position: relative; 1548 position: relative;
1348 - height: 100%; 1549 + padding: 7px;
  1550 + vertical-align: middle;
1349 } 1551 }
1350 -.home-page .slide-wrapper li{  
1351 - display: none; 1552 +.slide-shade{
1352 position: absolute; 1553 position: absolute;
1353 - top: 0; 1554 + left: 0;
1354 right: 0; 1555 right: 0;
1355 - width: 100%;  
1356 - height: 100%; 1556 + top: 0;
  1557 + bottom: 0;
  1558 + background: #000;
  1559 + opacity: 0.3;
  1560 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  1561 + border-radius: 13px;
1357 } 1562 }
1358 -.home-page .slide-wrapper li a{ 1563 +.slide-pagination-last span{
1359 display: block; 1564 display: block;
1360 - height: 100%;  
1361 - width: 1150px;  
1362 - margin: 0 auto; 1565 + float: left;
  1566 + position: relative;
  1567 + margin: 0 7px;
  1568 + width: 12px;
  1569 + height: 12px;
  1570 + background: #fff;
  1571 + cursor: pointer;
  1572 + opacity: 0.6;
  1573 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
  1574 + border-radius: 6px;
  1575 + z-index: 2;
  1576 +}
  1577 +.slide-pagination-last span.focus{
  1578 + opacity: 1;
  1579 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  1580 +}
  1581 +.slide-switch{
  1582 + display: none;
  1583 +}
  1584 +.slide-switch a{
  1585 + display: block;
  1586 + position: absolute;
  1587 + top: 50%;
  1588 + margin: -30px 0 0;
  1589 + width: 60px;
  1590 + height: 60px;
  1591 + line-height: 56px;
  1592 + text-align: center;
  1593 + z-index: 2;
  1594 + background: #fff;
  1595 + opacity: 0.55;
  1596 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=55)";
  1597 +}
  1598 +.slide-switch a .iconfont{
  1599 + font-size: 32px;
  1600 + color: #59585a;
  1601 +}
  1602 +.slide-switch a:hover{
  1603 + opacity: 0.9;
  1604 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
  1605 +}
  1606 +.slide-switch .prev{
  1607 + left: 0;
  1608 +}
  1609 +.slide-switch .next{
  1610 + right: 0;
  1611 +}
  1612 +.slide-switch.show{
  1613 + display: block;
  1614 +}
  1615 +.yoho-dialog{
  1616 + position: fixed;
  1617 + padding: 20px;
  1618 + top: 50%;
  1619 + left: 50%;
  1620 + min-height: 130px;
  1621 + min-width: 350px;
  1622 + background: #f8f8f8;
  1623 + z-index: 1001;
  1624 + border: 5px solid rgba(0, 0, 0, 0.38);
  1625 +}
  1626 +.yoho-dialog .close{
  1627 + position: absolute;
  1628 + top: 5px;
  1629 + right: 5px;
  1630 + cursor: pointer;
  1631 +}
  1632 +.yoho-dialog .content{
  1633 + text-align: center;
  1634 +}
  1635 +.yoho-dialog .btns{
  1636 + text-align: center;
  1637 +}
  1638 +.yoho-dialog .alert-sure{
  1639 + background: #000;
  1640 + color: #fff;
  1641 +}
  1642 +.yoho-dialog .confirm-sure{
  1643 + background: #000;
  1644 + color: #fff;
  1645 +}
  1646 +.yoho-dialog .btn{
  1647 + display: inline-block;
  1648 + width: 56px;
  1649 + height: 26px;
  1650 + line-height: 26px;
  1651 + text-align: center;
  1652 + border: 1px solid #000;
  1653 + cursor: pointer;
  1654 + margin-left: 10px;
  1655 +}
  1656 +.yoho-dialog .btn:first-child{
  1657 + margin-left: 0;
  1658 +}
  1659 +.yoho-dialog.alert-dialog .content, .yoho-dialog.confirm-dialog .content{
  1660 + width: 350px;
  1661 + height: auto;
  1662 + min-height: 90px;
  1663 + overflow: hidden;
  1664 + line-height: 20px;
  1665 + position: relative;
  1666 + padding-top: 40px;
  1667 + padding-bottom: 20px;
  1668 +}
  1669 +.yoho-dialog.alert-dialog .content p, .yoho-dialog.confirm-dialog .content p{
  1670 + position: absolute;
  1671 + left: 0;
  1672 + bottom: 25px;
  1673 + width: 100%;
  1674 + color: #444;
  1675 + line-height: 25px;
  1676 +}
  1677 +.yoho-dialog.alert-dialog .content div, .yoho-dialog.confirm-dialog .content div{
  1678 + position: absolute;
  1679 + top: 0;
  1680 + left: 100px;
  1681 + padding-top: 30px;
  1682 + font-size: 22px;
  1683 + font-weight: bold;
  1684 + width: 150px;
  1685 + height: 30px;
  1686 + line-height: 30px;
  1687 + margin: 0 auto;
  1688 +}
  1689 +.yoho-dialog.alert-dialog .content div span, .yoho-dialog.confirm-dialog .content div span{
  1690 + background: url(/cart/del.png);
  1691 + float: left;
  1692 + width: 27px;
  1693 + height: 30px;
  1694 +}
  1695 +.yoho-dialog.subcontent-dialog{
  1696 + padding: 30px 0;
  1697 +}
  1698 +.yoho-dialog.subcontent-dialog .content{
  1699 + font-weight: bold;
  1700 + margin: 0 auto 30px;
  1701 +}
  1702 +.yoho-dialog.subcontent-dialog .sub-content{
  1703 + text-align: center;
  1704 + font-size: 12px;
  1705 + color: #555;
  1706 + margin-left: 5px;
  1707 + margin-bottom: 5px;
  1708 +}
  1709 +.yoho-dialog.subcontent-dialog .btn{
  1710 + margin-top: 25px;
  1711 + width: 100px;
  1712 + font-size: 13px;
  1713 + margin-left: 0;
  1714 + margin-right: 0;
  1715 +}
  1716 +.yoho-dialog.subcontent-dialog .btn.black{
  1717 + background-color: #000;
  1718 + color: #fff;
  1719 +}
  1720 +
  1721 +/* 模块 */
  1722 +.home-page{
  1723 + width: 1150px;
  1724 + margin: 10px auto 0;
  1725 +}
  1726 +.home-page .slide-container{
  1727 + position: absolute;
  1728 + left: 0;
  1729 + right: 0;
  1730 + height: 450px;
  1731 +}
  1732 +.home-page .slide-thumb-container{
  1733 + height: 510px;
  1734 +}
  1735 +.home-page .slide-wrapper{
  1736 + position: relative;
  1737 + height: 450px;
  1738 + overflow: hidden;
  1739 +}
  1740 +.home-page .slide-wrapper ul{
  1741 + position: relative;
  1742 + height: 100%;
  1743 +}
  1744 +.home-page .slide-wrapper li{
  1745 + display: none;
  1746 + position: absolute;
  1747 + top: 0;
  1748 + right: 0;
  1749 + width: 100%;
  1750 + height: 100%;
  1751 +}
  1752 +.home-page .slide-wrapper li a{
  1753 + display: block;
  1754 + height: 100%;
  1755 + width: 1150px;
  1756 + margin: 0 auto;
1363 } 1757 }
1364 .home-page .slide-wrapper li img{ 1758 .home-page .slide-wrapper li img{
1365 width: 100%; 1759 width: 100%;
@@ -3950,6 +4344,37 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -3950,6 +4344,37 @@ _:-ms-fullscreen, :root .senior-up-icon{
3950 .sort-pager .sort-type:first-child .iconfont{ 4344 .sort-pager .sort-type:first-child .iconfont{
3951 display: none; 4345 display: none;
3952 } 4346 }
  4347 +.sort-pager .page-nav{
  4348 + padding: 7px 0;
  4349 + float: right;
  4350 + font-size: 14px;
  4351 +}
  4352 +.sort-pager .page-nav .page-prev{
  4353 + width: 33px;
  4354 + height: 33px;
  4355 + line-height: 34px;
  4356 + background: #ccc;
  4357 + text-align: center;
  4358 + float: left;
  4359 +}
  4360 +.sort-pager .page-nav a .page-prev, .sort-pager .page-nav a .page-next{
  4361 + background: #000;
  4362 + color: #fff;
  4363 +}
  4364 +.sort-pager .page-nav .page-next{
  4365 + min-width: 110px;
  4366 + height: 33px;
  4367 + background: #a9a9a9;
  4368 + float: left;
  4369 + margin-left: 1px;
  4370 + line-height: 33px;
  4371 + padding-left: 10px;
  4372 + box-sizing: border-box;
  4373 + padding-right: 10px;
  4374 +}
  4375 +.sort-pager .page-nav .pages{
  4376 + margin-left: 10px;
  4377 +}
3953 .sort-pager .pager-wrap{ 4378 .sort-pager .pager-wrap{
3954 float: right; 4379 float: right;
3955 padding: 15px 0; 4380 padding: 15px 0;
@@ -4033,7 +4458,7 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -4033,7 +4458,7 @@ _:-ms-fullscreen, :root .senior-up-icon{
4033 } 4458 }
4034 .good-info .good-detail-img{ 4459 .good-info .good-detail-img{
4035 width: 100%; 4460 width: 100%;
4036 - height: 300px; 4461 + height: 100%;
4037 position: relative; 4462 position: relative;
4038 } 4463 }
4039 .good-info .good-detail-img .good-thumb, .good-info .good-detail-img img.lazy{ 4464 .good-info .good-detail-img .good-thumb, .good-info .good-detail-img img.lazy{
@@ -4085,9 +4510,12 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -4085,9 +4510,12 @@ _:-ms-fullscreen, :root .senior-up-icon{
4085 background-image: url('../img/sale/vip.png'); 4510 background-image: url('../img/sale/vip.png');
4086 background-repeat: no-repeat; 4511 background-repeat: no-repeat;
4087 background-size: 100% 90%; 4512 background-size: 100% 90%;
  4513 + width: 40px;
4088 color: #fff; 4514 color: #fff;
4089 font-style: italic; 4515 font-style: italic;
4090 margin-right: 5px; 4516 margin-right: 5px;
  4517 + margin-left: 5px;
  4518 + width: 30px;
4091 } 4519 }
4092 .good-info .good-detail-text span.vip-1{ 4520 .good-info .good-detail-text span.vip-1{
4093 background-image: url('../img/product/silver-small.png'); 4521 background-image: url('../img/product/silver-small.png');
@@ -4098,6 +4526,8 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -4098,6 +4526,8 @@ _:-ms-fullscreen, :root .senior-up-icon{
4098 color: #fff; 4526 color: #fff;
4099 font-style: italic; 4527 font-style: italic;
4100 margin-right: 5px; 4528 margin-right: 5px;
  4529 + margin-left: 5px;
  4530 + position: absolute;
4101 } 4531 }
4102 .good-info .good-detail-text span.vip-2{ 4532 .good-info .good-detail-text span.vip-2{
4103 background-image: url('../img/product/golden-small.png'); 4533 background-image: url('../img/product/golden-small.png');
@@ -4108,6 +4538,8 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -4108,6 +4538,8 @@ _:-ms-fullscreen, :root .senior-up-icon{
4108 color: #fff; 4538 color: #fff;
4109 font-style: italic; 4539 font-style: italic;
4110 margin-right: 5px; 4540 margin-right: 5px;
  4541 + margin-left: 5px;
  4542 + position: absolute;
4111 } 4543 }
4112 .good-info .good-detail-text span.vip-3{ 4544 .good-info .good-detail-text span.vip-3{
4113 background-image: url('../img/product/platinum-small.png'); 4545 background-image: url('../img/product/platinum-small.png');
@@ -4118,6 +4550,8 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -4118,6 +4550,8 @@ _:-ms-fullscreen, :root .senior-up-icon{
4118 color: #fff; 4550 color: #fff;
4119 font-style: italic; 4551 font-style: italic;
4120 margin-right: 5px; 4552 margin-right: 5px;
  4553 + margin-left: 5px;
  4554 + position: absolute;
4121 } 4555 }
4122 .good-info .col-btn{ 4556 .good-info .col-btn{
4123 position: absolute; 4557 position: absolute;
@@ -4231,9 +4665,10 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -4231,9 +4665,10 @@ _:-ms-fullscreen, :root .senior-up-icon{
4231 } 4665 }
4232 .good-info-big{ 4666 .good-info-big{
4233 width: 280px; 4667 width: 280px;
  4668 + height: 380px;
4234 margin-right: 10px; 4669 margin-right: 10px;
4235 float: left; 4670 float: left;
4236 - margin-bottom: 35px; 4671 + margin-bottom: 100px;
4237 } 4672 }
4238 .latest-walk{ 4673 .latest-walk{
4239 overflow: hidden; 4674 overflow: hidden;
@@ -5911,6 +6346,8 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -5911,6 +6346,8 @@ _:-ms-fullscreen, :root .senior-up-icon{
5911 position: absolute; 6346 position: absolute;
5912 left: 0; 6347 left: 0;
5913 bottom: 0; 6348 bottom: 0;
  6349 + opacity: 0.5;
  6350 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
5914 width: 100%; 6351 width: 100%;
5915 font-size: 22px; 6352 font-size: 22px;
5916 line-height: 30px; 6353 line-height: 30px;
@@ -5977,8 +6414,10 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -5977,8 +6414,10 @@ _:-ms-fullscreen, :root .senior-up-icon{
5977 line-height: 20px; 6414 line-height: 20px;
5978 } 6415 }
5979 .sale-page .brand-sale .sale-group .title{ 6416 .sale-page .brand-sale .sale-group .title{
5980 - font-size: 25px; 6417 + font-size: 10px;
5981 height: 40px; 6418 height: 40px;
  6419 + width: auto;
  6420 + font-size: 10px;
5982 line-height: 40px; 6421 line-height: 40px;
5983 text-align: center; 6422 text-align: center;
5984 max-width: 200px; 6423 max-width: 200px;
@@ -5986,10 +6425,19 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -5986,10 +6425,19 @@ _:-ms-fullscreen, :root .senior-up-icon{
5986 text-overflow: ellipsis; 6425 text-overflow: ellipsis;
5987 white-space: nowrap; 6426 white-space: nowrap;
5988 } 6427 }
  6428 +.sale-page .brand-sale .sale-group .title span{
  6429 + font-size: 18px;
  6430 + color: #ff0705;
  6431 + display: inline-block;
  6432 +}
5989 .sale-page .brand-sale .sale-group .time{ 6433 .sale-page .brand-sale .sale-group .time{
5990 font-size: 14px; 6434 font-size: 14px;
5991 } 6435 }
5992 -.sale-page .sale-nav li{ 6436 +.sale-page .sale-nav{
  6437 + display: inline-block;
  6438 + width: 100%;
  6439 +}
  6440 +.sale-page li{
5993 float: left; 6441 float: left;
5994 width: 20%; 6442 width: 20%;
5995 height: 40px; 6443 height: 40px;
@@ -6000,48 +6448,48 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6000,48 +6448,48 @@ _:-ms-fullscreen, :root .senior-up-icon{
6000 color: #6d6d6d; 6448 color: #6d6d6d;
6001 margin-bottom: 10px; 6449 margin-bottom: 10px;
6002 } 6450 }
6003 -.sale-page .sale-nav li.active{ 6451 +.sale-page li.active{
6004 color: #fff; 6452 color: #fff;
6005 background-repeat: no-repeat; 6453 background-repeat: no-repeat;
6006 background-size: 100% 100%; 6454 background-size: 100% 100%;
6007 } 6455 }
6008 -.sale-page .sale-nav li.green{}  
6009 -.sale-page .sale-nav li.green.active{ 6456 +.sale-page li.green{}
  6457 +.sale-page li.green.active{
6010 color: #fff; 6458 color: #fff;
6011 background-image: url('../img/sale/navactive-green-middle.png'); 6459 background-image: url('../img/sale/navactive-green-middle.png');
6012 background-repeat: no-repeat; 6460 background-repeat: no-repeat;
6013 background-size: 100% 100%; 6461 background-size: 100% 100%;
6014 } 6462 }
6015 -.sale-page .sale-nav li.green.first.active{ 6463 +.sale-page li.green.first.active{
6016 background-image: url('../img/sale/navactive-green-first.png'); 6464 background-image: url('../img/sale/navactive-green-first.png');
6017 } 6465 }
6018 -.sale-page .sale-nav li.green.last.active{ 6466 +.sale-page li.green.last.active{
6019 background-image: url('../img/sale/navactive-green-last.png'); 6467 background-image: url('../img/sale/navactive-green-last.png');
6020 } 6468 }
6021 -.sale-page .sale-nav li.yellow{}  
6022 -.sale-page .sale-nav li.yellow.active{ 6469 +.sale-page li.yellow{}
  6470 +.sale-page li.yellow.active{
6023 color: #fff; 6471 color: #fff;
6024 background-image: url('../img/sale/navactive-yellow-middle.png'); 6472 background-image: url('../img/sale/navactive-yellow-middle.png');
6025 background-repeat: no-repeat; 6473 background-repeat: no-repeat;
6026 background-size: 100% 100%; 6474 background-size: 100% 100%;
6027 } 6475 }
6028 -.sale-page .sale-nav li.yellow.first.active{ 6476 +.sale-page li.yellow.first.active{
6029 background-image: url('../img/sale/navactive-yellow-first.png'); 6477 background-image: url('../img/sale/navactive-yellow-first.png');
6030 } 6478 }
6031 -.sale-page .sale-nav li.yellow.last.active{ 6479 +.sale-page li.yellow.last.active{
6032 background-image: url('../img/sale/navactive-yellow-last.png'); 6480 background-image: url('../img/sale/navactive-yellow-last.png');
6033 } 6481 }
6034 -.sale-page .sale-nav li.red{}  
6035 -.sale-page .sale-nav li.red.active{ 6482 +.sale-page li.red{}
  6483 +.sale-page li.red.active{
6036 color: #fff; 6484 color: #fff;
6037 background-image: url('../img/sale/navactive-red-middle.png'); 6485 background-image: url('../img/sale/navactive-red-middle.png');
6038 background-repeat: no-repeat; 6486 background-repeat: no-repeat;
6039 background-size: 100% 100%; 6487 background-size: 100% 100%;
6040 } 6488 }
6041 -.sale-page .sale-nav li.red.first.active{ 6489 +.sale-page li.red.first.active{
6042 background-image: url('../img/sale/navactive-red-first.png'); 6490 background-image: url('../img/sale/navactive-red-first.png');
6043 } 6491 }
6044 -.sale-page .sale-nav li.red.last.active{ 6492 +.sale-page li.red.last.active{
6045 background-image: url('../img/sale/navactive-red-last.png'); 6493 background-image: url('../img/sale/navactive-red-last.png');
6046 } 6494 }
6047 .sale-page .commodity-list ul{ 6495 .sale-page .commodity-list ul{
@@ -6121,12 +6569,48 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6121,12 +6569,48 @@ _:-ms-fullscreen, :root .senior-up-icon{
6121 background-image: url('../img/sale/vip.png'); 6569 background-image: url('../img/sale/vip.png');
6122 background-repeat: no-repeat; 6570 background-repeat: no-repeat;
6123 background-size: 100% 90%; 6571 background-size: 100% 90%;
  6572 + width: 40px;
  6573 + color: #fff;
  6574 + font-style: italic;
  6575 + margin-right: 5px;
  6576 + margin-left: 5px;
  6577 + width: 30px;
  6578 +}
  6579 +.sale-page .commodity-content .commodity-price span.vip-1{
  6580 + background-image: url('../img/product/silver-small.png');
  6581 + background-repeat: no-repeat;
6124 width: 30px; 6582 width: 30px;
6125 display: inline-block; 6583 display: inline-block;
6126 - height: 10px; 6584 + height: 12px;
  6585 + color: #fff;
  6586 + font-style: italic;
  6587 + margin-right: 5px;
  6588 + margin-left: 5px;
  6589 + position: absolute;
  6590 +}
  6591 +.sale-page .commodity-content .commodity-price span.vip-2{
  6592 + background-image: url('../img/product/golden-small.png');
  6593 + background-repeat: no-repeat;
  6594 + width: 30px;
  6595 + display: inline-block;
  6596 + height: 12px;
6127 color: #fff; 6597 color: #fff;
6128 font-style: italic; 6598 font-style: italic;
6129 margin-right: 5px; 6599 margin-right: 5px;
  6600 + margin-left: 5px;
  6601 + position: absolute;
  6602 +}
  6603 +.sale-page .commodity-content .commodity-price span.vip-3{
  6604 + background-image: url('../img/product/platinum-small.png');
  6605 + background-repeat: no-repeat;
  6606 + width: 30px;
  6607 + display: inline-block;
  6608 + height: 12px;
  6609 + color: #fff;
  6610 + font-style: italic;
  6611 + margin-right: 5px;
  6612 + margin-left: 5px;
  6613 + position: absolute;
6130 } 6614 }
6131 .sale-page .commodity-content .commodity-price .price-sale{ 6615 .sale-page .commodity-content .commodity-price .price-sale{
6132 margin-left: 10px; 6616 margin-left: 10px;
@@ -6280,6 +6764,10 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6280,6 +6764,10 @@ _:-ms-fullscreen, :root .senior-up-icon{
6280 .outlets-page .limit-extra{ 6764 .outlets-page .limit-extra{
6281 width: 33%; 6765 width: 33%;
6282 } 6766 }
  6767 +.outlets-page .limit-extra .source-img{
  6768 + display: block;
  6769 + margin-bottom: 15px;
  6770 +}
6283 .outlets-page .limit-extra .type-list{ 6771 .outlets-page .limit-extra .type-list{
6284 padding: 15px 10px; 6772 padding: 15px 10px;
6285 } 6773 }
@@ -6295,7 +6783,10 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6295,7 +6783,10 @@ _:-ms-fullscreen, :root .senior-up-icon{
6295 } 6783 }
6296 .outlets-page .limit-extra .good-list .list-page{ 6784 .outlets-page .limit-extra .good-list .list-page{
6297 width: 33%; 6785 width: 33%;
  6786 + max-height: 918px;
  6787 + overflow: hidden;
6298 display: inline-block; 6788 display: inline-block;
  6789 + vertical-align: top;
6299 } 6790 }
6300 .outlets-page .limit-extra .good-list .good-item{ 6791 .outlets-page .limit-extra .good-list .good-item{
6301 padding: 15px; 6792 padding: 15px;
@@ -6334,6 +6825,7 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6334,6 +6825,7 @@ _:-ms-fullscreen, :root .senior-up-icon{
6334 .outlets-page .limit-extra .good-page-btns{ 6825 .outlets-page .limit-extra .good-page-btns{
6335 text-align: center; 6826 text-align: center;
6336 padding-bottom: 10px; 6827 padding-bottom: 10px;
  6828 + user-select: none;
6337 } 6829 }
6338 .outlets-page .limit-extra .good-page-btns label{ 6830 .outlets-page .limit-extra .good-page-btns label{
6339 width: 40px; 6831 width: 40px;
@@ -6350,7 +6842,7 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6350,7 +6842,7 @@ _:-ms-fullscreen, :root .senior-up-icon{
6350 margin-right: 20px; 6842 margin-right: 20px;
6351 } 6843 }
6352 .outlets-page .extra-pack{ 6844 .outlets-page .extra-pack{
6353 - margin-top: 15px; 6845 + margin-bottom: 15px;
6354 border: 1px solid #000; 6846 border: 1px solid #000;
6355 overflow: hidden; 6847 overflow: hidden;
6356 } 6848 }
@@ -6433,8 +6925,8 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6433,8 +6925,8 @@ _:-ms-fullscreen, :root .senior-up-icon{
6433 position: fixed; 6925 position: fixed;
6434 top: 0; 6926 top: 0;
6435 z-index: 1010; 6927 z-index: 1010;
6436 - opacity: 0.8;  
6437 - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; 6928 + opacity: 0.9;
  6929 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
6438 } 6930 }
6439 .outlets-page .sort-layer .sort-pager{ 6931 .outlets-page .sort-layer .sort-pager{
6440 width: 1150px; 6932 width: 1150px;
@@ -6471,7 +6963,539 @@ _:-ms-fullscreen, :root .senior-up-icon{ @@ -6471,7 +6963,539 @@ _:-ms-fullscreen, :root .senior-up-icon{
6471 .outlets-page .main-banner .slide-shade{ 6963 .outlets-page .main-banner .slide-shade{
6472 display: none; 6964 display: none;
6473 } 6965 }
6474 -/* @import "channel"; */ 6966 +.outlets-page .product-pager{
  6967 + padding: 20px 0;
  6968 + font-size: 12px;
  6969 + color: #6a6a6a;
  6970 + border-top: 2px solid #eaeceb;
  6971 +}
  6972 +.outlets-page .product-pager .pager{
  6973 + float: right;
  6974 +}
  6975 +.outlets-channel-page .slide-thumb-container{
  6976 + height: 510px;
  6977 +}
  6978 +.outlets-channel-page .slide-wrapper{
  6979 + position: relative;
  6980 + height: 450px;
  6981 + overflow: hidden;
  6982 +}
  6983 +.outlets-channel-page .slide-wrapper ul{
  6984 + position: relative;
  6985 + height: 100%;
  6986 +}
  6987 +.outlets-channel-page .slide-wrapper li{
  6988 + display: none;
  6989 + position: absolute;
  6990 + top: 0;
  6991 + right: 0;
  6992 + width: 860px;
  6993 + height: 100%;
  6994 +}
  6995 +.outlets-channel-page .slide-wrapper li a{
  6996 + display: block;
  6997 + height: 100%;
  6998 + width: 860px;
  6999 + margin: 0 auto;
  7000 +}
  7001 +.outlets-channel-page .slide-wrapper li img{
  7002 + width: 100%;
  7003 + height: 100%;
  7004 +}
  7005 +.outlets-channel-page .slide-wrapper li:first-child{
  7006 + display: block;
  7007 +}
  7008 +.outlets-channel-page .slide-wrapper:hover .slide-switch.show{
  7009 + display: block;
  7010 +}
  7011 +.outlets-channel-page .slide-container-placeholder{
  7012 + height: 450px;
  7013 + width: 100%;
  7014 +}
  7015 +.outlets-channel-page .slide-thumb-container-placeholder{
  7016 + height: 510px;
  7017 +}
  7018 +.outlets-channel-page .slide-switch{
  7019 + display: block;
  7020 +}
  7021 +.outlets-channel-page .slide-switch a{
  7022 + position: absolute;
  7023 + top: 50%;
  7024 + margin: -30px 0 0;
  7025 + width: 60px;
  7026 + height: 60px;
  7027 + line-height: 56px;
  7028 + text-align: center;
  7029 + z-index: 2;
  7030 + background: #fff;
  7031 + opacity: 0.55;
  7032 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=55)";
  7033 +}
  7034 +.outlets-channel-page .slide-switch a .iconfont{
  7035 + font-size: 32px;
  7036 + color: #59585a;
  7037 +}
  7038 +.outlets-channel-page .slide-switch a.prev{
  7039 + left: 50%;
  7040 + margin-left: -575px;
  7041 +}
  7042 +.outlets-channel-page .slide-switch a.next{
  7043 + right: 50%;
  7044 + margin-right: -575px;
  7045 +}
  7046 +.outlets-channel-page .slide-switch a:hover{
  7047 + opacity: 0.9;
  7048 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
  7049 +}
  7050 +.outlets-channel-page .thumb-pagination{
  7051 + width: 1148px;
  7052 + margin: 6px auto 0;
  7053 + padding-left: 2px;
  7054 +}
  7055 +.outlets-channel-page .thumb-pagination li{
  7056 + position: relative;
  7057 + float: left;
  7058 + margin-left: 6px;
  7059 + width: 138px;
  7060 + height: 54px;
  7061 +}
  7062 +.outlets-channel-page .thumb-pagination li a{
  7063 + position: absolute;
  7064 + left: 0;
  7065 + right: 0;
  7066 + bottom: 0;
  7067 + top: 0;
  7068 + background: #000;
  7069 + opacity: 0.3;
  7070 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  7071 +}
  7072 +.outlets-channel-page .thumb-pagination li img{
  7073 + width: 100%;
  7074 + height: 100%;
  7075 +}
  7076 +.outlets-channel-page .thumb-pagination li:first-child{
  7077 + margin: 0;
  7078 +}
  7079 +.outlets-channel-page .thumb-pagination li.focus a{
  7080 + opacity: 0;
  7081 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  7082 +}
  7083 +/*
  7084 + 大banner圆点
  7085 + */
  7086 +.outlets-channel-page .slide-pagination{
  7087 + font-size: 0;
  7088 + width: 860px;
  7089 +}
  7090 +.outlets-channel-page .slide-pagination .slide-shade{
  7091 + position: absolute;
  7092 + left: 0;
  7093 + right: 0;
  7094 + top: 0;
  7095 + bottom: 0;
  7096 + background: #000;
  7097 + opacity: 0.3;
  7098 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  7099 + border-radius: 13px;
  7100 +}
  7101 +.outlets-channel-page .slide-pagination span{
  7102 + position: relative;
  7103 + display: inline-block;
  7104 + margin: 0 7px;
  7105 + width: 12px;
  7106 + height: 12px;
  7107 + background: #fff;
  7108 + cursor: pointer;
  7109 + opacity: 0.6;
  7110 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
  7111 + border-radius: 6px;
  7112 + z-index: 2;
  7113 +}
  7114 +.outlets-channel-page .slide-pagination span.focus{
  7115 + opacity: 1;
  7116 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  7117 +}
  7118 +.outlets-channel-page .slide-container{
  7119 + height: 450px;
  7120 + width: 100%;
  7121 + position: relative;
  7122 +}
  7123 +.outlets-channel-page .slide-container .col{
  7124 + float: left;
  7125 +}
  7126 +.outlets-channel-page .slide-container .col a{
  7127 + display: block;
  7128 +}
  7129 +.outlets-channel-page .slide-container .right-col a{}
  7130 +.outlets-channel-page .slide-container .right-col a:last-child{
  7131 + margin-bottom: 0;
  7132 +}
  7133 +.outlets-channel-page .slide-container .right-col img{
  7134 + height: 100%;
  7135 + width: 100%;
  7136 +}
  7137 +.outlets-channel-page .slide-container .center-col{
  7138 + position: relative;
  7139 + width: 860px;
  7140 + height: 450px;
  7141 + font-size: 0;
  7142 + margin-right: 0;
  7143 +}
  7144 +.outlets-channel-page .slide-container .center-col .slide-wrapper{
  7145 + height: 100%;
  7146 +}
  7147 +.outlets-channel-page .slide-container .center-col .slide-wrapper li a{
  7148 + width: 100%;
  7149 +}
  7150 +.outlets-channel-page .slide-container .center-col img{
  7151 + max-width: 100%;
  7152 + max-height: 100%;
  7153 +}
  7154 +.outlets-channel-page .slide-container .center-col:hover .slide-switch.show{
  7155 + display: block;
  7156 +}
  7157 +.outlets-channel-page .slide-container .right-col a{
  7158 + width: 290px;
  7159 + height: 270px;
  7160 +}
  7161 +.outlets-channel-page .slide-container .right-col a:first-child{
  7162 + margin-bottom: 0;
  7163 + height: 180px;
  7164 +}
  7165 +.outlets-channel-page .new-report img{
  7166 + display: block;
  7167 + width: 100%;
  7168 + height: 100%;
  7169 +}
  7170 +.outlets-channel-page .new-report .report-list{
  7171 + float: left;
  7172 + width: 868px;
  7173 +}
  7174 +.outlets-channel-page .new-report li{
  7175 + float: left;
  7176 + margin: 0 8px 8px 0;
  7177 + width: 185px;
  7178 + height: 248px;
  7179 + overflow: hidden;
  7180 +}
  7181 +.outlets-channel-page .new-report li:first-child{
  7182 + margin-right: 7px;
  7183 + width: 282px;
  7184 + height: 504px;
  7185 +}
  7186 +.outlets-channel-page .new-report .last-item{
  7187 + float: left;
  7188 + width: 282px;
  7189 + height: 504px;
  7190 + overflow: hidden;
  7191 +}
  7192 +/*
  7193 + 优选品牌
  7194 + */
  7195 +.outlets-channel-page .preference-brand{
  7196 + overflow: hidden;
  7197 +}
  7198 +.outlets-channel-page .preference-brand-list{
  7199 + margin-top: 8px;
  7200 + width: 1158px;
  7201 +}
  7202 +.outlets-channel-page .preference-brand-item{
  7203 + float: left;
  7204 + margin-right: 8px;
  7205 + margin-bottom: 8px;
  7206 +}
  7207 +.outlets-channel-page .preference-brand-item a{
  7208 + display: table-cell;
  7209 + width: 185px;
  7210 + height: 86px;
  7211 + text-align: center;
  7212 + vertical-align: middle;
  7213 +}
  7214 +.outlets-channel-page .preference-brand-item img{
  7215 + display: block;
  7216 + max-width: 100%;
  7217 + max-height: 100%;
  7218 + margin: 0 auto;
  7219 +}
  7220 +.outlets-channel-page .preference-more{
  7221 + float: left;
  7222 + width: 185px;
  7223 + height: 86px;
  7224 + line-height: 100px;
  7225 + text-align: center;
  7226 + color: black;
  7227 + font-size: 16px;
  7228 +}
  7229 +.outlets-channel-page .img-slider-wrapper{
  7230 + position: relative;
  7231 + width: 100%;
  7232 + height: 558px;
  7233 + background: #8ae6e0;
  7234 + overflow: hidden;
  7235 +}
  7236 +.outlets-channel-page .img-slider-wrapper .img-brand-switch{
  7237 + display: block;
  7238 +}
  7239 +.outlets-channel-page .img-slider-wrapper .img-brand-switch a{
  7240 + position: absolute;
  7241 + top: 50%;
  7242 + font-size: 36px;
  7243 + color: #fff;
  7244 +}
  7245 +.outlets-channel-page .img-slider-wrapper .img-brand-switch a.next{
  7246 + right: 30px;
  7247 +}
  7248 +.outlets-channel-page .img-slider-wrapper .img-brand-switch a.prev{
  7249 + left: 30px;
  7250 +}
  7251 +.outlets-channel-page .img-container-landscape{
  7252 + box-sizing: border-box;
  7253 + margin: 86px auto 0;
  7254 + width: 982px;
  7255 + height: 433px;
  7256 + overflow: hidden;
  7257 +}
  7258 +.outlets-channel-page .img-container-landscape .img-list{
  7259 + width: 1000px;
  7260 + height: 100%;
  7261 +}
  7262 +.outlets-channel-page .img-container-landscape .img-item{
  7263 + float: left;
  7264 + box-sizing: border-box;
  7265 + width: 320px;
  7266 + height: 100%;
  7267 + margin-right: 10px;
  7268 +}
  7269 +.outlets-channel-page .img-container-landscape .img-item img{
  7270 + width: 100%;
  7271 + height: 100%;
  7272 +}
  7273 +.outlets-channel-page .img-brand{
  7274 + position: relative;
  7275 + width: 100%;
  7276 + height: 175px;
  7277 + overflow: hidden;
  7278 +}
  7279 +.outlets-channel-page .img-brand ul{
  7280 + width: 1158px;
  7281 +}
  7282 +.outlets-channel-page .img-brand li{
  7283 + float: left;
  7284 + margin: 0 8px 0 0;
  7285 + width: 378px;
  7286 + height: 175px;
  7287 + line-height: 175px;
  7288 + overflow: hidden;
  7289 + font-size: 0;
  7290 + text-align: center;
  7291 +}
  7292 +.outlets-channel-page .img-brand li img{
  7293 + max-width: 100%;
  7294 + max-height: 100%;
  7295 + vertical-align: middle;
  7296 +}
  7297 +.outlets-channel-page .img-brand .img-brand-switch{
  7298 + display: none;
  7299 +}
  7300 +.outlets-channel-page .img-brand .img-brand-switch a{
  7301 + position: absolute;
  7302 + top: 50%;
  7303 + margin: -20px 0 0;
  7304 + width: 40px;
  7305 + height: 40px;
  7306 + line-height: 40px;
  7307 + text-align: center;
  7308 + z-index: 2;
  7309 + background: #fff;
  7310 + opacity: 0.55;
  7311 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=55)";
  7312 +}
  7313 +.outlets-channel-page .img-brand .img-brand-switch a.prev{
  7314 + left: 0;
  7315 +}
  7316 +.outlets-channel-page .img-brand .img-brand-switch a.next{
  7317 + right: 0;
  7318 +}
  7319 +.outlets-channel-page .img-brand .img-brand-switch a:hover{
  7320 + opacity: 0.9;
  7321 + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
  7322 +}
  7323 +.outlets-channel-page .img-brand:hover .img-brand-switch{
  7324 + display: block;
  7325 +}
  7326 +.outlets-channel-page .logo-brand{
  7327 + width: 100%;
  7328 + height: 282px;
  7329 + overflow: hidden;
  7330 +}
  7331 +.outlets-channel-page .logo-brand ul{
  7332 + width: 1158px;
  7333 +}
  7334 +.outlets-channel-page .logo-brand li{
  7335 + float: left;
  7336 + margin: 8px 8px 0 0;
  7337 + width: 185px;
  7338 + height: 86px;
  7339 + line-height: 86px;
  7340 + font-size: 0;
  7341 + text-align: center;
  7342 +}
  7343 +.outlets-channel-page .logo-brand li img{
  7344 + max-width: 100%;
  7345 + max-height: 100%;
  7346 + vertical-align: middle;
  7347 +}
  7348 +.outlets-channel-page .logo-brand .logo-brand-switch{
  7349 + position: relative;
  7350 + background: url('../img/index/logo-brand-line.png') no-repeat center center;
  7351 + line-height: normal;
  7352 +}
  7353 +.outlets-channel-page .logo-brand .logo-brand-switch .iconfont{
  7354 + position: absolute;
  7355 + left: 50%;
  7356 + font-size: 32px;
  7357 +}
  7358 +.outlets-channel-page .logo-brand .logo-brand-switch .iconfont.prev{
  7359 + top: 10px;
  7360 + margin-left: -48px;
  7361 +}
  7362 +.outlets-channel-page .logo-brand .logo-brand-switch .iconfont.next{
  7363 + bottom: 12px;
  7364 + margin-left: 20px;
  7365 +}
  7366 +.outlets-channel-page .logo-brand .brand-more{
  7367 + font-size: 16px;
  7368 +}
  7369 +.outlets-channel-page .logo-brand .brand-more:hover{
  7370 + text-decoration: underline;
  7371 +}
  7372 +.outlets-channel-page .logo-brand.logos-10{
  7373 + height: 188px;
  7374 +}
  7375 +.outlets-channel-page .categorys-list ul{
  7376 + width: 1158px;
  7377 +}
  7378 +.outlets-channel-page .categorys-list li{
  7379 + float: left;
  7380 + margin: 0 8px 8px 0;
  7381 + width: 185px;
  7382 + height: 248px;
  7383 +}
  7384 +.outlets-channel-page .categorys-list li img{
  7385 + display: block;
  7386 + width: 100%;
  7387 + height: 100%;
  7388 +}
  7389 +.outlets-channel-page .categorys-list li.cate-item0{
  7390 + width: 185px;
  7391 + height: 504px;
  7392 +}
  7393 +.outlets-channel-page .categorys-list li.cate-item1{
  7394 + width: 377px;
  7395 + height: 504px;
  7396 +}
  7397 +/*
  7398 + 热门推荐模板样式
  7399 + */
  7400 +.outlets-channel-page .tpl-recommend{
  7401 + width: 100%;
  7402 + position: relative;
  7403 +}
  7404 +.outlets-channel-page .tpl-recommend a{
  7405 + display: block;
  7406 +}
  7407 +.outlets-channel-page .tpl-recommend a img{
  7408 + display: block;
  7409 + width: 100%;
  7410 + height: 100%;
  7411 +}
  7412 +.outlets-channel-page .tpl-recommend .tpl-body{
  7413 + margin-bottom: 8px;
  7414 +}
  7415 +.outlets-channel-page .tpl-recommend .tpl-nav{
  7416 + float: left;
  7417 + overflow: hidden;
  7418 +}
  7419 +.outlets-channel-page .tpl-recommend .tpl-nav .tpl-keywords{
  7420 + margin-bottom: 8px;
  7421 +}
  7422 +.outlets-channel-page .tpl-recommend .tpl-nav .tpl-category{
  7423 + padding: 10px 0;
  7424 + background-color: #f8f8f8;
  7425 + overflow: hidden;
  7426 +}
  7427 +.outlets-channel-page .tpl-recommend .tpl-nav .tpl-category a{
  7428 + float: left;
  7429 + width: 50%;
  7430 + text-align: center;
  7431 + color: #000;
  7432 + overflow: hidden;
  7433 +}
  7434 +.outlets-channel-page .tpl-recommend .tpl-brands{
  7435 + float: left;
  7436 + overflow: hidden;
  7437 + margin-left: 8px;
  7438 +}
  7439 +.outlets-channel-page .tpl-recommend .tpl-brands li{
  7440 + margin-top: 8px;
  7441 +}
  7442 +.outlets-channel-page .tpl-recommend .tpl-types{
  7443 + float: left;
  7444 + overflow: hidden;
  7445 + margin-top: -8px;
  7446 + width: 579px;
  7447 +}
  7448 +.outlets-channel-page .tpl-recommend .tpl-types li{
  7449 + float: left;
  7450 + margin-left: 8px;
  7451 + margin-top: 8px;
  7452 +}
  7453 +.outlets-channel-page .tpl-recommend .tpl-types li a{
  7454 + width: 185px;
  7455 + height: 248px;
  7456 +}
  7457 +.outlets-channel-page .tpl-recommend .tpl-products{
  7458 + overflow: hidden;
  7459 + margin-left: -10px;
  7460 +}
  7461 +.outlets-channel-page .tpl-recommend .tpl-products li{
  7462 + float: left;
  7463 + margin-left: 10px;
  7464 +}
  7465 +.outlets-channel-page .tpl-recommend .tpl-products li a{
  7466 + width: 222px;
  7467 + height: 298px;
  7468 +}
  7469 +.outlets-channel-page .tpl-recommend .tpl-nav{
  7470 + width: 185px;
  7471 +}
  7472 +.outlets-channel-page .tpl-recommend .tpl-nav .keywords0, .outlets-channel-page .tpl-recommend .tpl-nav .keywords1, .outlets-channel-page .tpl-recommend .tpl-nav .keywords2{
  7473 + margin-bottom: 10px;
  7474 + height: 76px;
  7475 +}
  7476 +.outlets-channel-page .tpl-recommend .tpl-nav .keywords2{
  7477 + margin-bottom: 0;
  7478 +}
  7479 +.outlets-channel-page .tpl-recommend .tpl-nav .tpl-category{
  7480 + height: 228px;
  7481 +}
  7482 +.outlets-channel-page .tpl-recommend .tpl-nav .tpl-category a{
  7483 + height: 38px;
  7484 + line-height: 38px;
  7485 + font-size: 14px;
  7486 +}
  7487 +.outlets-channel-page .tpl-recommend .tpl-brands{
  7488 + width: 378px;
  7489 + height: 512px;
  7490 +}
  7491 +.outlets-channel-page .tpl-recommend .tpl-brands li a{
  7492 + height: 248px;
  7493 +}
  7494 +/*
  7495 + @import "index-pliffy";
  7496 +@import "min-index";
  7497 +@import "brand";
  7498 +*/
6475 .outlets-special-page .main-banner{ 7499 .outlets-special-page .main-banner{
6476 height: 360px; 7500 height: 360px;
6477 } 7501 }
This diff could not be displayed because it is too large.