drift-bottle.component_20241224152846.scss 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. /* drift-bottle.component.scss */
  2. :host {
  3. display: block;
  4. }
  5. /* 设置页面背景色 */
  6. ion-content {
  7. --background: transparent; /* 确保内容背景透明 */
  8. position: relative;
  9. height: 100vh; /* 确保内容高度占满整个视口 */
  10. }
  11. .top-image {
  12. position: absolute;
  13. top: 0;
  14. left: 0;
  15. width: 100%;
  16. height: 80%; /* 图片占据页面的70%高度 */
  17. overflow: hidden;
  18. z-index: 0; /* 确保图片在工具栏之下 */
  19. &::before {
  20. content: '';
  21. position: absolute;
  22. top: 0;
  23. left: 0;
  24. width: 200%; /* 双倍宽度以支持平移 */
  25. height: 100%;
  26. background: url('/assets/img/漂流瓶.jpg') no-repeat center / cover;
  27. animation: wave-effect 5s linear infinite;
  28. filter: blur(5px); /* 添加轻微模糊效果,使波浪更柔和 */
  29. }
  30. }
  31. @keyframes wave-effect {
  32. 0% {
  33. transform: translateX(0);
  34. }
  35. 100% {
  36. transform: translateX(-50%);
  37. }
  38. }
  39. .top-image img {
  40. width: 100%;
  41. height: 100%;
  42. object-fit: fill; /* 使图片填充整个容器并可能被拉伸 */
  43. clip-path: ellipse(140% 130% at 50% -30%); /* 使用椭圆剪裁路径 */
  44. }
  45. .button-container {
  46. position: absolute;
  47. bottom: 15%; /* 调整此值以改变按钮距离底部的距离 */
  48. z-index: 2; /* 确保按钮在图片之上 */
  49. }
  50. .left-button {
  51. left: 30px; /* 距离左边的距离 */
  52. }
  53. .right-button {
  54. right: 30px; /* 距离右边的距离 */
  55. }
  56. .button-container img {
  57. width: 60px; /* 按钮图片宽度 */
  58. height: 60px; /* 按钮图片高度 */
  59. display: block;
  60. }
  61. .circular-button {
  62. width: 60px; /* 按钮图片宽度 */
  63. height: 60px; /* 按钮图片高度 */
  64. border-radius: 50%; /* 将图片剪裁为圆形 */
  65. object-fit: cover; /* 保证图片填充圆形区域 */
  66. transform: scale(1.5); /* 放大1.5倍 */
  67. transform-origin: center; /* 放大的基点为中心 */
  68. transition: transform 0.3s ease; /* 添加平滑过渡效果 */
  69. }
  70. /* 如果需要,可以在悬停时添加一些效果 */
  71. .circular-button:hover {
  72. transform: scale(1.6); /* 鼠标悬停时稍微再放大一点 */
  73. }