style.less 18 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031
  1. ol,
  2. ul,
  3. dl {
  4. margin: 0;
  5. padding: 0;
  6. }
  7. // diy手机
  8. .phone-content {
  9. width: 377px;
  10. margin-top: 25px;
  11. border-radius: 3px;
  12. box-shadow: 0 0 28px 0 #ccc;
  13. border: 1px solid #ddd;
  14. background: #fff;
  15. position: relative;
  16. margin: 0 auto;
  17. .phone-top {
  18. width: 100%;
  19. height: 88px;
  20. text-align: center;
  21. background-position: center;
  22. background-size: contain;
  23. background-repeat: no-repeat;
  24. &.black {
  25. background-image: url('~@/assets/img/topNavBlack_new.png');
  26. }
  27. &.white {
  28. background-image: url('~@/assets/img/topNavWhite_new.png');
  29. }
  30. .title {
  31. font-size: 14px;
  32. font-weight: normal;
  33. white-space: nowrap;
  34. position: absolute;
  35. bottom: 0;
  36. display: flex;
  37. justify-content: center;
  38. align-items: center;
  39. width: 100%;
  40. height: 44px;
  41. }
  42. }
  43. // diy元素容器
  44. .phone-main {
  45. position: relative;
  46. border-top: 0;
  47. user-select: none;
  48. line-height: normal;
  49. .content {
  50. // overflow-y: auto;
  51. min-height: 640px;
  52. }
  53. .devise-item {
  54. display: block;
  55. // overflow: hidden;
  56. font-size: 13px;
  57. // 选中状态
  58. &.selected {
  59. // 显示操作工具栏
  60. .action-tools {
  61. display: block;
  62. }
  63. }
  64. }
  65. a {
  66. color: #337ab7;
  67. }
  68. // diy-搜索
  69. .diy-search {
  70. background: #f1f1f2;
  71. padding: 10px 10px;
  72. .inner {
  73. height: 30px;
  74. background: #fff;
  75. overflow: hidden;
  76. &.radius {
  77. border-radius: 5px;
  78. }
  79. &.round {
  80. border-radius: 30px;
  81. }
  82. .search-input {
  83. height: 30px;
  84. //width: 100%;
  85. line-height: 30px;
  86. color: #999999;
  87. padding: 0 10px;
  88. font-size: 13px;
  89. .search-icon {
  90. margin-right: 4px;
  91. }
  92. }
  93. }
  94. }
  95. // diy-轮播图
  96. .diy-banner {
  97. display: block;
  98. margin: 0;
  99. padding: 0;
  100. height: auto;
  101. overflow: hidden;
  102. //position: relative;
  103. img {
  104. display: none;
  105. width: 100%;
  106. &:first-child {
  107. display: block;
  108. }
  109. }
  110. .dots {
  111. height: 14px;
  112. padding: 0 10px;
  113. position: absolute;
  114. left: 0;
  115. right: 0;
  116. bottom: 10px;
  117. opacity: 0.8;
  118. display: flex;
  119. justify-content: center;
  120. &-item {
  121. margin-right: 3px;
  122. height: 10px;
  123. width: 10px;
  124. &:last-child {
  125. margin-right: 0;
  126. }
  127. }
  128. &.rectangle {
  129. .dots-item {
  130. width: 16px;
  131. }
  132. }
  133. &.square {
  134. .dots-item {
  135. width: 10px;
  136. }
  137. }
  138. &.round {
  139. .dots-item {
  140. height: 10px;
  141. width: 10px;
  142. border-radius: 10px;
  143. }
  144. }
  145. }
  146. }
  147. // diy-图片组
  148. .diy-image {
  149. display: block;
  150. margin: 0;
  151. padding: 0;
  152. height: auto;
  153. overflow: hidden;
  154. img {
  155. display: block;
  156. width: 100%;
  157. }
  158. }
  159. // diy-按钮组
  160. .diy-navBar {
  161. .item-nav {
  162. float: left;
  163. margin: 10px 0;
  164. text-align: center;
  165. .item-image {
  166. text-align: center;
  167. margin-bottom: 4px;
  168. img {
  169. height: 44px;
  170. width: 44px;
  171. }
  172. }
  173. }
  174. // 分列布局
  175. .avg-sm-3>.item-nav {
  176. width: 33.33333333%;
  177. }
  178. .avg-sm-4>.item-nav {
  179. width: 25%;
  180. }
  181. .avg-sm-5>.item-nav {
  182. width: 20%;
  183. }
  184. }
  185. // diy-辅助线
  186. .diy-guide {
  187. .line {
  188. height: 0;
  189. width: 100%;
  190. }
  191. }
  192. // diy-视频组
  193. .diy-video {
  194. video {
  195. display: block;
  196. width: 100%;
  197. height: 100%;
  198. }
  199. }
  200. // diy-文章组
  201. .diy-article {
  202. background: #f7f7f7;
  203. .article-item {
  204. margin-bottom: 10px;
  205. padding: 15px;
  206. background: #fff;
  207. &:last-child {
  208. margin-bottom: 0;
  209. }
  210. .article-title {
  211. font-size: 13px;
  212. color: #333;
  213. }
  214. &__image image {
  215. display: block;
  216. }
  217. &__footer {
  218. margin-top: 5px;
  219. .article-views {
  220. font-size: 12px;
  221. color: #888;
  222. }
  223. }
  224. // 小图模式
  225. &.show-type__10 {
  226. display: flex;
  227. .article-item__left {
  228. padding-right: 10px;
  229. }
  230. .article-item__title {
  231. min-height: 36px;
  232. }
  233. .article-item__image img {
  234. display: block;
  235. width: 120px;
  236. }
  237. }
  238. // 大图模式
  239. &.show-type__20 {
  240. .article-item__image {
  241. margin-top: 12.5px;
  242. img {
  243. display: block;
  244. width: 100%;
  245. }
  246. }
  247. }
  248. }
  249. }
  250. // diy-专题组
  251. .diy-special {
  252. line-height: normal;
  253. .special-left {
  254. padding: 5px 10px;
  255. img {
  256. display: block;
  257. width: 70px;
  258. }
  259. }
  260. .special-content {
  261. //width: 250px;
  262. overflow: hidden;
  263. .content-item {
  264. padding: 2px 0;
  265. font-size: 13px;
  266. color: #141414;
  267. }
  268. &.display_1 {
  269. height: 22px;
  270. }
  271. &.display_2 {
  272. height: 44px;
  273. }
  274. }
  275. .special-more {
  276. padding: 12px 10px;
  277. font-size: 12px;
  278. }
  279. }
  280. // diy-图片橱窗
  281. .diy-window {
  282. .item-image img {
  283. display: block;
  284. width: 100%;
  285. }
  286. .data-item {
  287. float: left;
  288. }
  289. // 分列布局
  290. .avg-sm-2>.data-item {
  291. width: 50%;
  292. }
  293. .avg-sm-3>.data-item {
  294. width: 33.33333333%;
  295. }
  296. .avg-sm-4>.data-item {
  297. width: 25%;
  298. }
  299. .avg-sm-5>.data-item {
  300. width: 20%;
  301. }
  302. // 橱窗样式
  303. .display {
  304. height: 0;
  305. width: 100%;
  306. margin: 0;
  307. padding-bottom: 50%;
  308. position: relative;
  309. img {
  310. width: 100%;
  311. height: 100%;
  312. object-fit: cover;
  313. }
  314. .display-left {
  315. width: 50%;
  316. height: 100%;
  317. position: absolute;
  318. top: 0;
  319. left: 0;
  320. }
  321. .display-right {
  322. width: 50%;
  323. height: 100%;
  324. position: absolute;
  325. top: 0;
  326. left: 50%;
  327. }
  328. .display-right1 {
  329. width: 100%;
  330. height: 50%;
  331. position: absolute;
  332. top: 0;
  333. left: 0;
  334. }
  335. .display-right2 {
  336. width: 100%;
  337. height: 50%;
  338. position: absolute;
  339. top: 50%;
  340. left: 0;
  341. .left {
  342. width: 50%;
  343. height: 100%;
  344. position: absolute;
  345. top: 0;
  346. left: 0;
  347. }
  348. .right {
  349. width: 50%;
  350. height: 100%;
  351. position: absolute;
  352. top: 0;
  353. left: 50%;
  354. }
  355. }
  356. }
  357. }
  358. // diy-热区组
  359. .diy-hotZone {
  360. display: block;
  361. margin: 0;
  362. padding: 0;
  363. height: auto;
  364. overflow: hidden;
  365. img {
  366. display: block;
  367. width: 100%;
  368. }
  369. }
  370. // diy-商品组
  371. .diy-goods {
  372. display: flex;
  373. flex-direction: column;
  374. .goods-list {
  375. margin-bottom: -10px;
  376. // 横向滑动
  377. &.display-slide {
  378. display: flex;
  379. flex-wrap: nowrap;
  380. .goods-item {
  381. flex-shrink: 0;
  382. margin-right: 2.8% !important;
  383. }
  384. // 双列
  385. &.column-2 {
  386. .goods-item {
  387. flex-basis: 45.6%;
  388. }
  389. }
  390. // 3列
  391. &.column-3 {
  392. .goods-item {
  393. flex-basis: 29.46666%;
  394. }
  395. }
  396. }
  397. // 列表平铺
  398. &.display-list {
  399. display: flex;
  400. flex-wrap: wrap;
  401. }
  402. // 单列
  403. &.column-1 {
  404. margin-bottom: 0;
  405. .goods-item {
  406. margin-bottom: 6px;
  407. padding: 10px;
  408. box-sizing: border-box;
  409. background: #fff;
  410. flex-basis: 100%;
  411. margin-right: 0;
  412. &:last-child {
  413. margin-bottom: 0 !important;
  414. }
  415. .goods-info {
  416. padding: 0;
  417. .goods-name {
  418. font-size: 13.5px;
  419. }
  420. }
  421. }
  422. // 商品图片
  423. .goods-item_left {
  424. background: #fff;
  425. margin-right: 10px;
  426. .image {
  427. display: block;
  428. width: 120px;
  429. height: 120px;
  430. }
  431. }
  432. .goods-item_right {
  433. position: relative;
  434. flex: 1;
  435. }
  436. }
  437. // 2列
  438. &.column-2 {
  439. .goods-item {
  440. flex-basis: 48.6%;
  441. &:nth-child(2n) {
  442. margin-right: 0;
  443. }
  444. }
  445. }
  446. // 3列
  447. &.column-3 {
  448. .goods-item {
  449. flex-basis: 31.46666%;
  450. &:nth-child(3n) {
  451. margin-right: 0;
  452. }
  453. }
  454. }
  455. // 商品内容
  456. .goods-item {
  457. flex-shrink: 0;
  458. background-color: #fff;
  459. flex: 0 1 48.6%;
  460. margin-right: 2.8%;
  461. border-radius: 8px;
  462. overflow: hidden;
  463. margin-bottom: 10px;
  464. &.display-card {
  465. box-shadow: 0 2px 5px rgba(0, 0, 0, 0.07);
  466. }
  467. .goods-image {
  468. position: relative;
  469. width: 100%;
  470. height: 0;
  471. padding-bottom: 100%;
  472. overflow: hidden;
  473. &:after {
  474. content: '';
  475. display: block;
  476. margin-top: 100%;
  477. }
  478. .image {
  479. position: absolute;
  480. top: 0;
  481. left: 0;
  482. display: block;
  483. width: 100%;
  484. height: 100%;
  485. object-fit: cover;
  486. }
  487. }
  488. .goods-info {
  489. padding: 10px;
  490. .goods-name {
  491. font-size: 13px;
  492. color: #000;
  493. margin-bottom: 4px;
  494. height: 34px;
  495. }
  496. .goods-selling {
  497. font-size: 12px;
  498. margin-bottom: 4px;
  499. }
  500. .goods-sales {
  501. font-size: 12px;
  502. color: #959595;
  503. margin-bottom: 4px;
  504. .line {
  505. margin: 0 4px;
  506. }
  507. }
  508. }
  509. .footer {
  510. display: flex;
  511. justify-content: space-between;
  512. align-items: center;
  513. .goods-price {
  514. position: relative;
  515. color: #ff1051;
  516. .unit {
  517. font-size: 10px;
  518. }
  519. .value {
  520. font-size: 15px;
  521. }
  522. .unit2 {
  523. margin-left: 2px;
  524. font-size: 11px;
  525. }
  526. .line-price {
  527. margin-left: 3px;
  528. color: #959595;
  529. .unit {
  530. text-decoration: line-through;
  531. font-size: 11px;
  532. }
  533. .value {
  534. text-decoration: line-through;
  535. font-size: 11px;
  536. }
  537. }
  538. }
  539. .action {
  540. .btn-cart {
  541. width: 22px;
  542. height: 22px;
  543. display: flex;
  544. justify-content: center;
  545. align-items: center;
  546. background-color: #27c29a;
  547. color: #fff;
  548. border-radius: 50%;
  549. .cart-icon {
  550. font-size: 13px;
  551. }
  552. }
  553. }
  554. }
  555. }
  556. }
  557. }
  558. // 店铺公告
  559. .diy-notice {
  560. font-size: 14px;
  561. .notice-body {
  562. padding: 6px 12px;
  563. display: flex;
  564. align-items: center;
  565. }
  566. .notice__icon {
  567. font-size: 17px;
  568. }
  569. .notice__text {
  570. padding-left: 6px;
  571. line-height: 18px;
  572. }
  573. }
  574. // 富文本
  575. .diy-richText {
  576. font-size: 14px;
  577. line-height: normal;
  578. /deep/p {
  579. padding: 0 4px;
  580. }
  581. /deep/img {
  582. display: block;
  583. width: 375px;
  584. margin-left: -4px;
  585. }
  586. /deep/video {
  587. width: 100%;
  588. }
  589. /deep/hr {
  590. margin: 5px 0;
  591. }
  592. /deep/a {
  593. color: #3284e6;
  594. word-break: break-all;
  595. }
  596. *+h1,
  597. *+h2,
  598. *+h3,
  599. *+h4,
  600. *+h5,
  601. *+h6 {
  602. margin: 20px 0;
  603. }
  604. }
  605. // 在线客服
  606. .diy-service {
  607. z-index: 999;
  608. .service-icon {
  609. padding: 5px;
  610. .image {
  611. display: block;
  612. width: 45px;
  613. height: 45px;
  614. border-radius: 50%;
  615. box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  616. }
  617. }
  618. }
  619. // 关注公众号
  620. .diy-officialAccount {
  621. width: 100%;
  622. height: 75px;
  623. padding: 0 8px;
  624. .item-top {
  625. padding: 5px 0;
  626. font-size: 12px;
  627. color: #c0bdc0;
  628. }
  629. .item-content {
  630. height: 46px;
  631. .item-cont-avatar {
  632. margin-right: 10px;
  633. img {
  634. display: block;
  635. width: 42px;
  636. height: 42px;
  637. }
  638. }
  639. .item-cont-public {
  640. width: 235px;
  641. margin-right: 15px;
  642. .public-name {
  643. font-size: 14px;
  644. }
  645. .public-describe {
  646. margin-top: 2px;
  647. font-size: 12px;
  648. color: #9E9B9F;
  649. }
  650. }
  651. .item-cont-active {
  652. .active-btn {
  653. width: 46px;
  654. height: 24px;
  655. line-height: 22px;
  656. border: 1px solid rgb(26, 173, 25);
  657. border-radius: 3px;
  658. font-size: 12px;
  659. color: rgb(26, 173, 25);
  660. text-align: center;
  661. }
  662. }
  663. }
  664. }
  665. // diy-头条快报
  666. .diy-special {
  667. display: flex;
  668. align-items: center;
  669. line-height: normal;
  670. .special-left {
  671. padding: 5px 10px;
  672. img {
  673. display: block;
  674. width: 70px;
  675. }
  676. }
  677. .special-content {
  678. flex: 1;
  679. overflow: hidden;
  680. .content-item {
  681. padding: 2px 0;
  682. font-size: 13px;
  683. color: #141414;
  684. }
  685. &.display_1 {
  686. height: 22px;
  687. }
  688. &.display_2 {
  689. height: 44px;
  690. }
  691. }
  692. .special-more {
  693. padding: 12px 10px;
  694. font-size: 12px;
  695. }
  696. }
  697. // diy-优惠券组
  698. .diy-coupon {
  699. overflow: hidden;
  700. &::-webkit-scrollbar {
  701. display: none;
  702. }
  703. .coupon-wrapper {
  704. display: flex;
  705. width: max-content;
  706. height: 65px;
  707. padding: 0 12px;
  708. }
  709. .coupon-item {
  710. flex-shrink: 0;
  711. width: 150px;
  712. height: 65px;
  713. position: relative;
  714. color: #fff;
  715. overflow: hidden;
  716. box-sizing: border-box;
  717. margin-right: 20px;
  718. display: flex;
  719. &:last-child {
  720. margin-right: 0 !important;
  721. }
  722. .before {
  723. content: "";
  724. position: absolute;
  725. z-index: 1;
  726. width: 16px;
  727. height: 16px;
  728. top: 45%;
  729. left: -8px;
  730. transform: translateY(-50%);
  731. border-radius: 80%;
  732. background-color: #fff;
  733. }
  734. .left-content {
  735. display: flex;
  736. flex-direction: column;
  737. justify-content: center;
  738. align-items: center;
  739. position: relative;
  740. width: 70%;
  741. height: 100%;
  742. background-color: #E5004F;
  743. font-size: 12px;
  744. .content-top {
  745. .unit {
  746. font-size: 15px;
  747. }
  748. .price {
  749. font-size: 22px;
  750. }
  751. }
  752. }
  753. .right-receive {
  754. display: flex;
  755. flex-direction: column;
  756. justify-content: center;
  757. align-items: center;
  758. width: 30%;
  759. height: 100%;
  760. background-color: #4e4e4e;
  761. text-align: center;
  762. font-size: 12px;
  763. }
  764. }
  765. }
  766. // 标题文本
  767. .diy-title {
  768. padding: 5px 15px;
  769. .title-content {
  770. display: flex;
  771. justify-content: space-between;
  772. .title {
  773. color: #323233;
  774. font-size: 14px;
  775. flex: 1;
  776. }
  777. .more-content {
  778. color: #969799;
  779. font-size: 12px;
  780. margin-left: 20px;
  781. }
  782. }
  783. .desc-content {
  784. margin-top: 8px;
  785. color: #969799;
  786. font-size: 12px;
  787. }
  788. }
  789. }
  790. .optional {
  791. position: relative;
  792. &:before {
  793. content: '';
  794. }
  795. &.__z10:before {
  796. z-index: 10;
  797. }
  798. &.__no-move:before {
  799. cursor: pointer !important;
  800. }
  801. &.selected:before,
  802. &:hover:before {
  803. z-index: 2;
  804. position: absolute;
  805. top: 0;
  806. left: 0;
  807. right: 0;
  808. bottom: 0;
  809. border: 2px dashed #00a0e9;
  810. cursor: move;
  811. }
  812. }
  813. .tooltip-text {
  814. white-space: nowrap;
  815. }
  816. // 操作区 (工具栏)
  817. .action-tools {
  818. display: none;
  819. position: absolute;
  820. top: 0;
  821. right: -48px;
  822. z-index: 1;
  823. padding-left: 14px;
  824. .tools-content {
  825. border-radius: 4px;
  826. line-height: 22px;
  827. text-align: left;
  828. padding: 4px 10px;
  829. background-color: #fff;
  830. box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.1);
  831. font-size: 14px;
  832. word-break: break-all;
  833. }
  834. .item-btn {
  835. cursor: pointer;
  836. padding: 3px 0;
  837. font-size: 13px;
  838. &.disabled {
  839. color: #dfe2e6;
  840. }
  841. }
  842. }
  843. }