product.scss 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703
  1. @import 'global.scss';
  2. .banner {
  3. position: relative;
  4. a {
  5. display: block;
  6. position: absolute;
  7. left: 0;
  8. right: 0;
  9. margin: 0 auto;
  10. bottom: 15%;
  11. width: 150px;
  12. height: 38px;
  13. line-height: 38px;
  14. font-size: 14px;
  15. text-align: center;
  16. color: #fff;
  17. border: 1px solid #fff;
  18. z-index: 1;
  19. overflow: hidden;
  20. @media(min-width:768px){
  21. width: 180px;
  22. height: 48px;
  23. line-height: 48px;
  24. font-size: 18px;
  25. }
  26. &:after {
  27. content: '';
  28. position: absolute;
  29. z-index: -1;
  30. transition: width 0.3s, opacity 0.3s;
  31. width: 0;
  32. height: 530px;
  33. top: 50%;
  34. left: 50%;
  35. opacity: 0;
  36. background: rgba(0, 0, 0, 0.2);
  37. transform: translate3d(-50%, -50%, 0) rotate(45deg);
  38. backface-visibility: hidden;
  39. }
  40. &:hover,
  41. &:active {
  42. &:after {
  43. width: 100%;
  44. opacity: 1;
  45. }
  46. }
  47. }
  48. img {
  49. width: 100%;
  50. }
  51. }
  52. .entrance {
  53. margin: 40px auto;
  54. @media(min-width: 768px) {
  55. margin: 60px auto;
  56. }
  57. @media(min-width:1200px) {
  58. margin: 100px auto;
  59. }
  60. .item{
  61. margin-bottom: 20px;
  62. .img{
  63. img{
  64. height: px2vw(200);
  65. @media(min-width:768px){
  66. height: auto;
  67. }
  68. width:100%;
  69. }
  70. }
  71. .txt{
  72. position: absolute;
  73. top: 0;
  74. left: 0;
  75. right: 0;
  76. bottom: 0;
  77. background: rgba(0, 0, 0, .2);
  78. padding: 20px;
  79. @media(min-width:768px){
  80. padding: 20px;
  81. }
  82. @media(min-width:1200px){
  83. padding: 40px;
  84. }
  85. span{
  86. color: $color;
  87. font-weight: bold;
  88. font-size: 16px;
  89. display: inline-block;
  90. margin-top: 10px;
  91. @media(min-width:768px){
  92. font-size: 20px;
  93. margin-top: 30px;
  94. }
  95. }
  96. h2{
  97. color: #fff;
  98. margin: 12px 0;
  99. font-size: 22px;
  100. em {
  101. color: $color;
  102. }
  103. @media(min-width:768px){
  104. margin: 25px 0;
  105. font-size: 28px;
  106. }
  107. @media(min-width:1200px){
  108. font-size: 44px;
  109. }
  110. }
  111. p{
  112. color: #fff;
  113. font-size: 14px;
  114. @media(min-width:768px){
  115. font-size: 20px;
  116. }
  117. @media(min-width:1200px){
  118. font-size: 24px;
  119. }
  120. }
  121. i{
  122. font-weight: bold;
  123. padding-right: 30px;
  124. color: $color;
  125. position: absolute;
  126. bottom: 25px;
  127. font-size: 16px;
  128. @media(min-width:768px){
  129. font-size: 20px;
  130. }
  131. &:after{
  132. content: "";
  133. display: inline-block;
  134. width: 30px;
  135. height: 10px;
  136. transition: all .5s ease;
  137. background: url("/assets/image/arrow-color.png") no-repeat center;
  138. }
  139. }
  140. }
  141. a{
  142. display: block;
  143. position: relative;
  144. transition: all .5s ease;
  145. &:hover,&:active{
  146. transform: translateY(-10px);
  147. box-shadow: 0px 8px 40px 0px rgba(0, 0, 0, 0.2);
  148. }
  149. }
  150. }
  151. }
  152. .product {
  153. .headline {
  154. text-align: center;
  155. margin-bottom: 10px;
  156. @media(min-width:768px){
  157. margin-bottom: 30px;
  158. }
  159. @media(min-width:1200px){
  160. margin-bottom: 50px;
  161. }
  162. h2 {
  163. color: #111;
  164. margin-bottom: 10px;
  165. font-size: 24px;
  166. @media(min-width:768px){
  167. margin-bottom: 22px;
  168. font-size: 32px;
  169. }
  170. @media(min-width:1200px){
  171. font-size: 46px;
  172. }
  173. }
  174. span {
  175. color: $color;
  176. font-size: 16px;
  177. @media(min-width:768px){
  178. font-size: 20px;
  179. }
  180. @media(min-width:1200px){
  181. font-size: 24px;
  182. }
  183. }
  184. }
  185. ul {
  186. li {
  187. clear: fix;
  188. position: relative;
  189. margin-top: 20px;
  190. @media(min-width:768px){
  191. margin-top: 30px;
  192. }
  193. .type {
  194. background: #f86363;
  195. color: #fff;
  196. width: 44%;
  197. height: 200px;
  198. padding: 25px;
  199. padding-bottom: 0;
  200. text-align: center;
  201. float: left;
  202. @media(min-width:768px){
  203. float: none;
  204. position: absolute;
  205. top: 0;
  206. left: 0;
  207. width: 200px;
  208. height: 250px;
  209. padding: 25px;
  210. }
  211. @media(min-width:1200px){
  212. width: 268px;
  213. height: 300px;
  214. padding: 40px;
  215. }
  216. a{
  217. display: block;
  218. color: #fff;
  219. &:hover{
  220. img{
  221. transform: scale(.9);
  222. }
  223. .p-icon{
  224. margin-top: 10px;
  225. }
  226. }
  227. }
  228. .p-icon {
  229. position: relative;
  230. margin: 20px auto 20px;
  231. width: 40px;
  232. height: 40px;
  233. line-height: 40px;
  234. transition: all .5s ease;
  235. @media(min-width:768px){
  236. width: 60px;
  237. height: 60px;
  238. line-height: 60px;
  239. }
  240. @media(min-width:1200px){
  241. width: 80px;
  242. height: 80px;
  243. line-height: 80px;
  244. }
  245. img{
  246. width: 30px;
  247. height: 30px;
  248. z-index: 3;
  249. position: relative;
  250. transition: all .5s ease;
  251. @media(min-width:768px){
  252. width:40px;
  253. height: 40px;
  254. }
  255. @media(min-width:1200px){
  256. width: 60px;
  257. height: 60px;
  258. }
  259. }
  260. &:before {
  261. content: "";
  262. opacity: 1;
  263. transform: scale(1);
  264. display: block;
  265. position: absolute;
  266. z-index: 2;
  267. zoom: 1;
  268. transform: translateZ(1px);
  269. width: 38px;
  270. height: 38px;
  271. top: 1px;
  272. left: 1px;
  273. border-radius: 50%;
  274. box-shadow: 0 0 10px 10px #f86363;
  275. @media(min-width:768px){
  276. width: 58px;
  277. height: 58px;
  278. }
  279. @media(min-width:1200px){
  280. width: 78px;
  281. height: 78px;
  282. }
  283. }
  284. &:after {
  285. content: '';
  286. opacity: 1;
  287. transform: scale(1);
  288. display: block;
  289. position: absolute;
  290. z-index: 1;
  291. zoom: 1;
  292. width: 100%;
  293. height: 100%;
  294. top: 0;
  295. left: 0;
  296. border-radius: 50%;
  297. box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.5);
  298. transition: all .3s ease-in-out;
  299. }
  300. }
  301. h2{
  302. padding: 14px 0;
  303. border-bottom: 1px solid #fff;
  304. font-size: 18px;
  305. @media(min-width:768px){
  306. padding: 20px 0;
  307. font-size: 26px;
  308. }
  309. @media(min-width:1200px){
  310. font-size: 36px;
  311. }
  312. @include ellipsis(auto);
  313. }
  314. span{
  315. display: inline-block;
  316. margin-top: 10px;
  317. font-size: 13px;
  318. @media(min-width:768px){
  319. margin-top: 10px;
  320. font-size: 15px;
  321. }
  322. @media(min-width:1200px){
  323. margin-top: 20px;
  324. font-size: 18px;
  325. }
  326. }
  327. }
  328. .items {
  329. clear: fix;
  330. width: 56%;
  331. float: left;
  332. @media(min-width:768px){
  333. float: none;
  334. width: auto;
  335. margin-left: 200px;
  336. }
  337. @media(min-width:1200px){
  338. margin-left:268px;
  339. }
  340. .item{
  341. width: 100%;
  342. @media(min-width:768px){
  343. width: 48.5%;
  344. }
  345. }
  346. .item.fr{
  347. display: none;
  348. @media(min-width:768px){
  349. display: block;
  350. }
  351. }
  352. a{
  353. position: relative;
  354. display: block;
  355. padding: 15px;
  356. height:200px;
  357. box-shadow: 0 0 10px 0px rgba(0, 0, 0, .1);
  358. border-top: 6px solid #fff;
  359. transition: all .5s ease;
  360. @media(min-width:768px){
  361. padding: 20px;
  362. height:250px;
  363. }
  364. @media(min-width:1200px){
  365. padding: 30px;
  366. height:300px;
  367. }
  368. &:hover{
  369. border-top: 6px solid $color;
  370. transform: translateY(-10px);
  371. }
  372. }
  373. h2{
  374. color: #111;
  375. line-height: 1.4;
  376. margin-bottom: 20px;
  377. font-size: 16px;
  378. @media(min-width:768px){
  379. font-size: 24px;
  380. }
  381. @media(min-width:1200px){
  382. font-size: 30px;
  383. }
  384. @include ellipsisLn(2);
  385. }
  386. p{
  387. color: #333;
  388. line-height: 1.4;
  389. font-size: 12px;
  390. @media(min-width:768px){
  391. font-size: 16px;
  392. }
  393. @include ellipsisLn(2);
  394. }
  395. span{
  396. position: absolute;
  397. bottom: 20px;
  398. right: 20px;
  399. color: $color;
  400. i{
  401. display: inline-block;
  402. vertical-align: middle;
  403. width: 13px;
  404. height: 13px;
  405. background: url("/assets/image/arrow-color.png") no-repeat center;
  406. }
  407. }
  408. }
  409. }
  410. }
  411. .more{
  412. margin: 30px auto 0;
  413. width: 180px;
  414. height: 40px;
  415. line-height: 40px;
  416. cursor: pointer;
  417. border: 1px solid #e0e0e0;
  418. color: #333;
  419. text-align: center;
  420. font-size: 14px;
  421. overflow: hidden;
  422. position: relative;
  423. z-index: 2;
  424. @media(min-width:768px){
  425. margin: 50px auto 0;
  426. width: 180px;
  427. height: 50px;
  428. line-height: 50px;
  429. font-size: 18px;
  430. }
  431. &:after {
  432. content: '';
  433. position: absolute;
  434. z-index: 1;
  435. transition: width 0.3s, opacity 0.3s;
  436. width: 0;
  437. height: 530px;
  438. top: 50%;
  439. left: 50%;
  440. opacity: 0;
  441. background: rgba(0, 0, 0, .1);
  442. transform: translate3d(-50%, -50%, 0) rotate(45deg);
  443. backface-visibility: hidden;
  444. }
  445. &:hover,&:active {
  446. &:after {
  447. width: 100%;
  448. opacity: 1;
  449. }
  450. }
  451. }
  452. }
  453. .ad{
  454. margin: 40px auto;
  455. @media(min-width:768px){
  456. margin: 60px auto;
  457. }
  458. @media(min-width:1200px){
  459. margin: 100px auto;
  460. }
  461. a{
  462. width: 100%;
  463. }
  464. img{
  465. width:100%;
  466. }
  467. }
  468. .product.other{
  469. padding-bottom: 20px;
  470. margin-bottom: 40px;
  471. @media(min-width:768px){
  472. padding-bottom: 50px;
  473. margin-bottom: 50px;
  474. }
  475. @media(min-width:1200px){
  476. margin-bottom: 100px;
  477. }
  478. ul{
  479. li{
  480. .type{
  481. background: #47a5ed;
  482. .p-icon{
  483. &:before{
  484. box-shadow: 0 0 10px 10px #47a5ed;
  485. }
  486. }
  487. }
  488. .items{
  489. a{
  490. &:hover{
  491. border-color: #47a5ed;
  492. }
  493. }
  494. }
  495. }
  496. }
  497. }
  498. .repository {
  499. @media(min-width:768px){
  500. background: linear-gradient(to right, #ffffff 50%, #eeeeee 50%, #eeeeee);
  501. }
  502. .list{
  503. background: #fff;
  504. padding-top: 20px;
  505. @media(min-width:768px){
  506. padding-top: 50px;
  507. }
  508. }
  509. .list-title{
  510. font-size: 24px;
  511. color: #111;
  512. border-bottom: 1px solid #eee;
  513. padding: 40px 0 20px;
  514. margin-bottom: 20px;
  515. @media(min-width:768px){
  516. margin-bottom: 20px;
  517. font-size: 36px;
  518. padding: 50px 0;
  519. margin-right: -15px;
  520. }
  521. @media(min-width:1200px){
  522. font-size: 44px;
  523. margin-bottom: 30px;
  524. }
  525. }
  526. .back-nav{
  527. color: $color;
  528. font-size: 14px;
  529. cursor: pointer;
  530. display: inline-block;
  531. @media(max-width:767px){
  532. margin-bottom: 30px;
  533. }
  534. i {
  535. display: inline-block;
  536. width: 30px;
  537. height: 10px;
  538. transition: all .5s ease;
  539. background: url("/assets/image/arrow-color-left.png") no-repeat center;
  540. }
  541. &:hover,
  542. &:active {
  543. i {
  544. background-position: center left;
  545. }
  546. }
  547. }
  548. .category{
  549. position: fixed;
  550. top: 0;
  551. left: 0;
  552. right: 0;
  553. bottom: 0;
  554. background: #f8f8f8;
  555. z-index: 1010;
  556. padding: 30px;
  557. overflow: auto;
  558. background: #eee;
  559. transform: translateX(100%);
  560. transition: all .5s ease;
  561. -webkit-overflow-scrolling: touch;
  562. &.showIn{
  563. transform: translateX(0);
  564. }
  565. @media(min-width:768px){
  566. position: relative;
  567. top: auto;
  568. left: auto;
  569. right: auto;
  570. bottom: auto;
  571. transform: translateX(0);
  572. z-index: 1;
  573. }
  574. .total{
  575. padding: 50px 0 0 0;
  576. @media(min-width:768px){
  577. padding: 130px 0 0 0;
  578. }
  579. p{
  580. color: #111;
  581. font-family: "Publico-Headline-Medium";
  582. font-weight: lighter;
  583. margin-top: 5px;
  584. font-size: 24px;
  585. }
  586. }
  587. ul{
  588. margin:0 -15px;
  589. margin-top: 30px;
  590. @media(min-width:768px){
  591. margin-top: 65px;
  592. }
  593. li{
  594. margin: 15px 0;
  595. a{
  596. display: inline-block;
  597. color: #666;
  598. padding: 10px 30px;
  599. font-size: 16px;
  600. border-left: 2px solid #eee;
  601. transition: all .5s ease;
  602. @media(min-width:768px){
  603. font-size: 14px;
  604. }
  605. &:hover,&.active,&.cur{
  606. color: $color;
  607. border-color: $color;
  608. }
  609. }
  610. }
  611. }
  612. }
  613. }
  614. .product-list{
  615. margin: 0 auto 60px;
  616. @media(min-width:768px){
  617. margin: 0 auto 100px;
  618. }
  619. @media(min-width:1200px){
  620. margin: 0 auto 120px;
  621. }
  622. ul{
  623. margin-right: 0;
  624. @media(min-width:768px){
  625. margin-right: 30px;
  626. }
  627. li{
  628. margin-top:20px;
  629. @media(min-width:768px){
  630. margin-top:30px;
  631. }
  632. a{
  633. clear: fix;
  634. display: block;
  635. padding: 10px 10px 15px;
  636. box-shadow: 0 4px 30px -4px rgba(0, 0, 0, 0.2);
  637. transition: all .5s ease;
  638. border-top: 4px solid #fff;
  639. border-bottom: 4px solid #fff;
  640. @media(min-width:768px){
  641. padding: 10px;
  642. }
  643. &:hover,&:active{
  644. border-top: 4px solid $color;
  645. .img{
  646. img{
  647. transform: scale(1.05);
  648. }
  649. }
  650. }
  651. }
  652. .img{
  653. width:100%;
  654. height: px2vw(200);
  655. margin-right: 20px;
  656. border: 1px solid #ebecee;
  657. overflow: hidden;
  658. @media(min-width:768px){
  659. float:left;
  660. width:200px;
  661. height:150px;
  662. }
  663. @media(min-width:1200px){
  664. width:280px;
  665. height:200px;
  666. }
  667. img{
  668. width:100%;
  669. height:100%;
  670. transition: all .5s ease;
  671. }
  672. }
  673. .txt{
  674. padding-right: 20px;
  675. h2{
  676. color: #111;
  677. font-size: 18px;
  678. margin: 20px 0 10px;
  679. @media(min-width:768px){
  680. margin: 25px 0 20px;
  681. font-size: 24px;
  682. }
  683. @media(min-width:1200px){
  684. font-size: 28px;
  685. }
  686. @include ellipsis(auto);
  687. }
  688. p{
  689. color: #333;
  690. line-height: 1.8;
  691. font-size: 14px;
  692. @media(min-width:768px){
  693. font-size: 16px;
  694. }
  695. @include ellipsisLn(2);
  696. }
  697. }
  698. }
  699. }
  700. }