index.less 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. @import '~antd/es/style/themes/default.less';
  2. @padding: 20px;
  3. @grid-gap: 2px;
  4. .live-player-warp {
  5. display: flex;
  6. .live-player-content {
  7. display: flex;
  8. flex: 1;
  9. flex-direction: column;
  10. .player-screen-tool {
  11. display: flex;
  12. align-items: center;
  13. justify-content: space-between;
  14. margin-bottom: 20px;
  15. .ant-radio-button-wrapper {
  16. height: auto;
  17. padding: 4px 20px;
  18. }
  19. }
  20. .player-body {
  21. flex: 1;
  22. .player-screen {
  23. position: relative;
  24. display: grid;
  25. box-sizing: border-box;
  26. &.screen-1 {
  27. grid-template-columns: 1fr;
  28. }
  29. &.screen-4 {
  30. grid-template-rows: 1fr 1fr;
  31. grid-template-columns: 1fr 1fr;
  32. }
  33. &.screen-9 {
  34. grid-template-rows: 1fr 1fr 1fr;
  35. grid-template-columns: 1fr 1fr 1fr;
  36. }
  37. &.screen-4,
  38. &.screen-9 {
  39. grid-gap: 12px;
  40. }
  41. .active {
  42. border: 2px solid red;
  43. }
  44. .full-screen {
  45. border: 1px solid #fff;
  46. }
  47. }
  48. }
  49. }
  50. .live-player-tools {
  51. display: flex;
  52. flex-basis: 250px;
  53. flex-direction: column;
  54. justify-content: center;
  55. margin-left: 24px;
  56. padding: 0 12px;
  57. .direction {
  58. position: relative;
  59. display: grid;
  60. grid-gap: @grid-gap;
  61. grid-template-rows: 1fr 1fr;
  62. grid-template-columns: 1fr 1fr;
  63. margin-bottom: 30px;
  64. overflow: hidden;
  65. border-radius: 50%;
  66. transform: rotateZ(45deg);
  67. .direction-item {
  68. position: relative;
  69. display: flex;
  70. align-items: center;
  71. justify-content: center;
  72. padding-bottom: 100%;
  73. font-size: 36px;
  74. background-color: rgba(#000, 0.1);
  75. transition: background-color 0.3s;
  76. .direction-icon {
  77. position: absolute;
  78. top: 50%;
  79. left: 50%;
  80. transform: translate(-50%, -50%) rotateZ(-45deg);
  81. }
  82. }
  83. .direction-audio {
  84. position: absolute;
  85. top: 50%;
  86. left: 50%;
  87. display: flex;
  88. align-items: center;
  89. justify-content: center;
  90. width: 45%;
  91. height: 45%;
  92. font-size: 30px;
  93. background-color: #fff;
  94. border-radius: 50%;
  95. transform: translate(-50%, -50%) rotateZ(-45deg);
  96. }
  97. .zoom .zoom-item,
  98. & .direction-item {
  99. &:hover {
  100. color: #fff;
  101. background-color: @primary-color-hover;
  102. }
  103. &:active {
  104. color: #fff;
  105. background-color: @primary-color-active;
  106. }
  107. }
  108. > div {
  109. cursor: pointer;
  110. &.disable {
  111. color: @disabled-color;
  112. }
  113. }
  114. }
  115. .zoom {
  116. display: grid;
  117. grid-gap: @grid-gap;
  118. grid-template-columns: 1fr 1fr;
  119. .zoom-item {
  120. padding: 8px 0;
  121. font-size: 24px;
  122. text-align: center;
  123. background-color: rgba(#000, 0.1);
  124. cursor: pointer;
  125. &:hover {
  126. color: #fff;
  127. background-color: @primary-color-hover;
  128. }
  129. &:active {
  130. color: #fff;
  131. background-color: @primary-color-active;
  132. }
  133. }
  134. .zoom-in {
  135. border-top-left-radius: 4px;
  136. border-bottom-left-radius: 4px;
  137. }
  138. .zoom-out {
  139. border-top-right-radius: 4px;
  140. border-bottom-right-radius: 4px;
  141. }
  142. }
  143. }
  144. }