健康同学微信公众号h5项目
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

812 lignes
23KB

  1. .today {
  2. /* z-index: 15; */
  3. position: relative;
  4. overflow: hidden;
  5. .devicesSwitch {
  6. position: absolute;
  7. top: 0;
  8. left: 0;
  9. height: 120px;
  10. width: 100%;
  11. z-index: 20;
  12. .imgArea {
  13. position: absolute;
  14. top: 20px;
  15. left: 20px;
  16. padding: 8px;
  17. display: flex;
  18. justify-content: flex-start;
  19. align-items: center;
  20. background: #fff;
  21. border-radius: 50px;
  22. border: 4px solid $border_color;
  23. z-index: 18;
  24. &.cut {
  25. border: 2px solid $com_light_green;
  26. }
  27. img {
  28. width: 60px !important;
  29. height: 60px !important;
  30. border-radius: 50%;
  31. object-fit: cover;
  32. }
  33. span {
  34. padding: 0 12px;
  35. @include colorAndFont(#333, 28);
  36. }
  37. }
  38. .conArea {
  39. position: absolute;
  40. left: 0;
  41. top: 0;
  42. width: 100%;
  43. padding: 12px 0 12px 20px;
  44. background: #fff;
  45. box-sizing: border-box;
  46. display: flex;
  47. transform: translateX(-100%);
  48. transition: left .4s ease-in-out;
  49. z-index: 667;
  50. overflow: scroll;
  51. border: 1px solid $com_light_green;
  52. &.active {
  53. transform: translateX(0);
  54. }
  55. .list {
  56. @include center();
  57. flex-direction: column;
  58. @include colorAndFont(#333, 24);
  59. margin-right: 20px;
  60. .Myname {
  61. @include center();
  62. width: 120%;
  63. &.active {
  64. text-decoration: underline;
  65. font-weight: bold;
  66. }
  67. }
  68. .imgA {
  69. width: 100px;
  70. height: 100px;
  71. background: #c5c5c5;
  72. border-radius: 50%;
  73. position: relative;
  74. @include center();
  75. margin-bottom: 12px;
  76. border: 1px solid;
  77. &>img {
  78. width: 88px;
  79. height: 88px;
  80. border-radius: 50%;
  81. object-fit: cover;
  82. }
  83. &.active {
  84. width: 105px;
  85. height: 105px;
  86. position: relative;
  87. background: #c5c5c5;
  88. box-shadow: 0 0 10px 4px rgba(185, 185, 185, 0.8);
  89. &:after {
  90. content: '';
  91. position: absolute;
  92. bottom: -15px;
  93. width: 0;
  94. height: 0;
  95. border-top: 16px solid #c5c5c5;
  96. border-left: 8px solid transparent;
  97. border-right: 8px solid transparent;
  98. }
  99. }
  100. &.online {
  101. background: #fff;
  102. &.active {
  103. position: relative;
  104. background: #fff;
  105. box-shadow: 0 0 10px 4px rgba(95, 204, 14, 0.8);
  106. &:after {
  107. content: '';
  108. position: absolute;
  109. bottom: -15px;
  110. width: 0;
  111. height: 0;
  112. border-top: 16px solid #5fcc0e;
  113. border-left: 8px solid transparent;
  114. border-right: 8px solid transparent;
  115. }
  116. }
  117. }
  118. }
  119. }
  120. }
  121. }
  122. .today-con,
  123. .no-data {
  124. position: relative;
  125. height: calc(100vh - 150px);
  126. overflow: scroll;
  127. .calendar {
  128. height: 800px;
  129. .van-calendar {
  130. height: 400px;
  131. overflow: scroll;
  132. .van-calendar__header {
  133. display: 'inline-block';
  134. }
  135. .van-calendar__days .van-calendar__day {
  136. width: 27px;
  137. height: 27px;
  138. margin: 10px 5px;
  139. font-size: 24px;
  140. &.custom-calendar {
  141. width: 27px;
  142. height: 27px;
  143. }
  144. &.highlight-border {
  145. border: 1px solid #62bd48;
  146. width: 27px;
  147. height: 27px;
  148. border-radius: 50%;
  149. &.none {
  150. border: 1px solid #62bd48;
  151. }
  152. &.mild {
  153. border: 1px solid #8dc21f;
  154. }
  155. &.moderate {
  156. border: 1px solid #2ea7e0;
  157. }
  158. &.severe {
  159. border: 1px solid #ff5f8b;
  160. }
  161. }
  162. }
  163. .van-calendar__selected-day {
  164. width: 27px;
  165. height: 27px;
  166. border-radius: 50%;
  167. font-size: 12px;
  168. }
  169. }
  170. }
  171. .today-status {
  172. display: flex;
  173. justify-content: center;
  174. flex-direction: column;
  175. align-items: center;
  176. position: relative;
  177. padding: 0 40px;
  178. .img {
  179. width: 100%;
  180. height: 350px;
  181. object-fit: contain;
  182. padding-top: 140px;
  183. }
  184. .icon {
  185. width: 70px;
  186. height: 70px;
  187. object-fit: contain;
  188. position: absolute;
  189. top: 140px;
  190. right: 40px;
  191. z-index: 999;
  192. }
  193. .status {
  194. display: flex;
  195. flex-wrap: wrap;
  196. align-items: center;
  197. align-content: space-between;
  198. justify-content: space-between;
  199. width: 100%;
  200. margin: 40px 0;
  201. p {
  202. font-size: 30px;
  203. color: #434144;
  204. font-weight: bold;
  205. }
  206. ul {
  207. display: flex;
  208. flex-wrap: wrap;
  209. align-items: center;
  210. justify-content: flex-start;
  211. li {
  212. width: 40px;
  213. height: 20px;
  214. border-radius: 60px;
  215. position: relative;
  216. &+li {
  217. margin-left: 10px;
  218. }
  219. &.toobad {
  220. background-color: #ff5f8b;
  221. &:after {
  222. background-color: #ff5f8b;
  223. }
  224. }
  225. &.ordinary {
  226. background-color: #2ea7e0;
  227. &:after {
  228. background-color: #2ea7e0;
  229. }
  230. }
  231. &.sameas {
  232. background-color: #8dc21f;
  233. &:after {
  234. background-color: #8dc21f;
  235. }
  236. }
  237. &.excellent {
  238. background-color: #179b3b;
  239. &:after {
  240. background-color: #179b3b;
  241. }
  242. }
  243. &.active {
  244. width: 120px;
  245. &:after {
  246. opacity: 1;
  247. }
  248. &:before {
  249. opacity: 1;
  250. }
  251. }
  252. &:after {
  253. content: '';
  254. display: block;
  255. position: absolute;
  256. top: 50%;
  257. left: 50%;
  258. transform: translateX(-50%) translateY(-50%);
  259. width: 40px;
  260. height: 40px;
  261. opacity: 0;
  262. border-radius: 50%;
  263. }
  264. &:before {
  265. content: '';
  266. display: block;
  267. position: absolute;
  268. top: 50%;
  269. left: 50%;
  270. transform: translateX(-50%) translateY(-50%);
  271. width: 25px;
  272. height: 25px;
  273. opacity: 0;
  274. border-radius: 50%;
  275. background-color: #fff;
  276. z-index: 2;
  277. }
  278. }
  279. }
  280. }
  281. .interpret {
  282. padding: 50px 20px;
  283. border-radius: 40px;
  284. border: 1px solid $com_light_green;
  285. width: calc(100% - 40px);
  286. .no-text {
  287. position: relative;
  288. width: 100%;
  289. @include center();
  290. flex-direction: column;
  291. img {
  292. height: 220px;
  293. width: 350px;
  294. }
  295. p {
  296. @include colorAndFont(#999, 28);
  297. }
  298. }
  299. p {
  300. font-size: 28px;
  301. color: #434144;
  302. white-space: pre-line;
  303. padding: 10px 0;
  304. }
  305. .bottom {
  306. width: 100%;
  307. position: relative;
  308. p {
  309. text-align: center;
  310. color: $com_light_green;
  311. }
  312. div {
  313. position: absolute;
  314. top: 50%;
  315. right: 0;
  316. transform: translatey(-50%);
  317. display: flex;
  318. flex-wrap: wrap;
  319. align-items: center;
  320. justify-content: flex-start;
  321. span {
  322. color: $com_light_green;
  323. font-size: 24px;
  324. }
  325. img {
  326. width: 40px;
  327. height: 40px;
  328. object-fit: contain;
  329. margin-left: 10px;
  330. }
  331. }
  332. }
  333. }
  334. }
  335. .title {
  336. display: flex;
  337. flex-wrap: wrap;
  338. align-items: center;
  339. align-content: space-between;
  340. justify-content: space-between;
  341. p {
  342. font-size: 30px;
  343. color: #434144;
  344. font-weight: bold;
  345. }
  346. >div {
  347. display: flex;
  348. flex-wrap: wrap;
  349. align-items: center;
  350. justify-content: flex-start;
  351. p {
  352. margin-right: 10px;
  353. }
  354. >div {
  355. display: flex;
  356. flex-wrap: wrap;
  357. align-items: center;
  358. justify-content: flex-start;
  359. p {
  360. font-size: 26px;
  361. color: #fff;
  362. background-color: #179b3b;
  363. border-radius: 20px;
  364. padding: 8px 20px;
  365. margin-right: 10px;
  366. font-weight: normal;
  367. }
  368. }
  369. }
  370. }
  371. .emotion {
  372. padding: 0 40px;
  373. margin-top: 60px;
  374. margin-bottom: 40px;
  375. ul {
  376. display: flex;
  377. flex-wrap: wrap;
  378. align-items: center;
  379. align-content: space-between;
  380. justify-content: space-between;
  381. margin-top: 30px;
  382. li {
  383. width: 25%;
  384. border-radius: 40px;
  385. padding: 20px;
  386. &:nth-of-type(1) {
  387. background-color: #179b3b;
  388. }
  389. &:nth-of-type(2) {
  390. background-color: #ff5f8b;
  391. }
  392. &:nth-of-type(3) {
  393. background-color: #8dc21f;
  394. }
  395. h4 {
  396. color: #fff;
  397. font-size: 50px;
  398. font-weight: normal;
  399. }
  400. p {
  401. color: #fff;
  402. font-size: 32px;
  403. margin-top: 0px;
  404. }
  405. span {
  406. color: #fff;
  407. font-size: 24px;
  408. border-top: 1px solid #fff;
  409. padding-top: 12px;
  410. }
  411. time {
  412. color: #fff;
  413. font-size: 24px;
  414. display: block;
  415. }
  416. }
  417. }
  418. }
  419. .perception {
  420. padding: 0 40px;
  421. margin-top: 60px;
  422. ul {
  423. display: flex;
  424. flex-wrap: wrap;
  425. align-items: center;
  426. align-content: space-between;
  427. justify-content: space-between;
  428. margin-top: 30px;
  429. li {
  430. width: 25%;
  431. border-radius: 40px;
  432. padding: 50px 20px;
  433. /* padding-bottom: px2rem(80); */
  434. display: flex;
  435. align-items: flex-start;
  436. justify-content: center;
  437. flex-direction: column;
  438. &:nth-of-type(1) {
  439. background-color: #179b3b;
  440. }
  441. &:nth-of-type(2) {
  442. background-color: #ff5f8b;
  443. }
  444. &:nth-of-type(3) {
  445. background-color: #8dc21f;
  446. }
  447. h4 {
  448. color: #fff;
  449. font-size: 46px;
  450. font-weight: normal;
  451. }
  452. p {
  453. color: #fff;
  454. font-size: 30px;
  455. margin-top: 0px;
  456. }
  457. time {
  458. color: #fff;
  459. font-size: 24px;
  460. display: block;
  461. }
  462. }
  463. }
  464. .tip {
  465. margin-top: 30px;
  466. display: flex;
  467. justify-content: flex-start;
  468. border-bottom: 1px solid #dfdfdf;
  469. padding-bottom: 40px;
  470. img {
  471. width: 29px;
  472. height: 47px;
  473. object-fit: contain;
  474. margin-right: 30px;
  475. }
  476. p {
  477. font-size: 28px;
  478. color: #434144;
  479. line-height: 1.5em;
  480. span {
  481. color: #edb21d;
  482. }
  483. }
  484. }
  485. }
  486. .step {
  487. padding: 0 40px;
  488. margin-top: 50px;
  489. .main {
  490. border-radius: 30px;
  491. border: 1px solid #179b3b;
  492. padding: 40px 30px;
  493. display: flex;
  494. align-items: center;
  495. align-content: space-between;
  496. justify-content: space-between;
  497. ul {
  498. li {
  499. .specific {
  500. font-size: 40px;
  501. color: #434144;
  502. span {
  503. font-weight: bold;
  504. }
  505. }
  506. .category {
  507. font-size: 28px;
  508. color: #434144;
  509. font-weight: bold;
  510. margin-top: 6px;
  511. span {
  512. font-weight: normal;
  513. padding: 5px 15px;
  514. background-color: #434144;
  515. color: #fff;
  516. font-size: 24px;
  517. border-radius: 20px;
  518. margin-left: 10px;
  519. }
  520. }
  521. &+li {
  522. margin-top: 40px;
  523. }
  524. }
  525. }
  526. .annular {
  527. width: 50%;
  528. position: relative;
  529. transform: rotate(180deg);
  530. .van-circle {
  531. position: absolute;
  532. top: 50%;
  533. left: 50%;
  534. transform: translateX(-50%) translateY(-50%);
  535. }
  536. p {
  537. position: absolute;
  538. top: 50%;
  539. left: 50%;
  540. transform: translateX(-50%) translateY(-50%) rotate(180deg);
  541. font-size: 28px;
  542. color: #434144;
  543. font-weight: bold;
  544. }
  545. }
  546. }
  547. }
  548. .diary {
  549. padding: 0 40px;
  550. margin: 50px 0;
  551. .main {
  552. width: 100%;
  553. .van-radio-group {
  554. width: 100%;
  555. margin-top: 50px;
  556. display: grid;
  557. grid-template-columns: repeat(3, 1fr);
  558. /* 或者固定宽度,例如:repeat(4, 1fr) */
  559. gap: 10px;
  560. }
  561. .van-radio {
  562. width: 100%;
  563. &:nth-of-type(n+4) {
  564. margin-top: 40px;
  565. }
  566. .checkbox-label {
  567. width: 100%;
  568. display: flex !important;
  569. justify-content: flex-start !important;
  570. align-items: center !important;
  571. img {
  572. width: 25px;
  573. height: 25px;
  574. object-fit: contain;
  575. }
  576. .text {
  577. position: relative;
  578. height: 27px;
  579. padding: 0 10px;
  580. background-image: url('@/assets/today/images/text.png');
  581. background-repeat: no-repeat;
  582. /* 防止背景图片重复 */
  583. background-size: 50px 27px;
  584. background-position: center;
  585. /* 水平和垂直居中 */
  586. @include center();
  587. color: #333;
  588. font-size: 14px;
  589. }
  590. }
  591. .van-checkbox__label img {
  592. width: 30px;
  593. }
  594. }
  595. .textarea {
  596. border-radius: 40px;
  597. border: 1px solid #179b3b;
  598. margin-top: 30px;
  599. overflow: hidden;
  600. textarea {
  601. width: 100%;
  602. padding: 30px;
  603. font-size: 28px;
  604. }
  605. }
  606. }
  607. }
  608. .knowledge {
  609. padding: 0 0 40px 40px;
  610. .main {
  611. width: 100%;
  612. overflow-x: scroll;
  613. ul {
  614. width: max-content;
  615. margin-top: 30px;
  616. display: flex;
  617. flex-wrap: wrap;
  618. align-items: center;
  619. justify-content: flex-start;
  620. li {
  621. width: 480px;
  622. background-color: #179b3b;
  623. padding: 40px;
  624. border-radius: 50px;
  625. display: flex;
  626. align-items: center;
  627. align-content: space-between;
  628. justify-content: space-between;
  629. &+li {
  630. margin-left: 30px;
  631. }
  632. p {
  633. width: 55%;
  634. font-size: 28px;
  635. color: #fff;
  636. white-space: pre-line;
  637. }
  638. img {
  639. height: 40px;
  640. object-fit: contain;
  641. }
  642. }
  643. }
  644. }
  645. }
  646. }
  647. .bind-tips {
  648. position: fixed;
  649. bottom: 100px;
  650. left: 0;
  651. width: 100%;
  652. overflow: hidden;
  653. .con {
  654. width: 100%;
  655. padding: 15px 0;
  656. @include center();
  657. background-color: $next;
  658. }
  659. p {
  660. font-size: 32px;
  661. color: #fff;
  662. }
  663. }
  664. .no-data {
  665. @include center();
  666. flex-direction: column;
  667. img {
  668. height: 220px;
  669. width: 350px;
  670. }
  671. p {
  672. @include colorAndFont(#999, 28);
  673. }
  674. }
  675. }