闭社主体 forked from https://github.com/tootsuite/mastodon
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

304 lines
5.0 KiB

  1. .activity-stream {
  2. clear: both;
  3. box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  4. .entry {
  5. .status.light, .detailed-status.light {
  6. border-bottom: 1px solid #d9e1e8;
  7. }
  8. &:last-child {
  9. .status.light, .detailed-status.light {
  10. border-bottom: 0;
  11. border-radius: 0 0 4px 4px;
  12. }
  13. }
  14. &:first-child {
  15. .status.light, .detailed-status.light {
  16. border-radius: 4px 4px 0 0;
  17. }
  18. &:last-child {
  19. .status.light, .detailed-status.light {
  20. border-radius: 4px;
  21. }
  22. }
  23. }
  24. }
  25. .status.light {
  26. padding: 14px 14px 14px (48px + 14px*2);
  27. position: relative;
  28. min-height: 48px;
  29. cursor: default;
  30. background: lighten(#d9e1e8, 8%);
  31. .status__header {
  32. font-size: 15px;
  33. .status__meta {
  34. float: right;
  35. font-size: 14px;
  36. .status__relative-time {
  37. color: #9baec8;
  38. }
  39. }
  40. }
  41. .status__display-name {
  42. display: block;
  43. max-width: 100%;
  44. padding-right: 25px;
  45. color: #282c37;
  46. }
  47. .status__avatar {
  48. position: absolute;
  49. left: 14px;
  50. top: 14px;
  51. width: 48px;
  52. height: 48px;
  53. & > div {
  54. width: 48px;
  55. height: 48px;
  56. }
  57. img {
  58. display: block;
  59. border-radius: 4px;
  60. }
  61. }
  62. .display-name {
  63. display: block;
  64. max-width: 100%;
  65. overflow: hidden;
  66. white-space: nowrap;
  67. text-overflow: ellipsis;
  68. strong {
  69. font-weight: 500;
  70. color: #282c37;
  71. }
  72. span {
  73. font-size: 14px;
  74. color: #9baec8;
  75. }
  76. }
  77. .status__content {
  78. color: #282c37;
  79. a {
  80. color: #2b90d9;
  81. }
  82. }
  83. .status__attachments {
  84. margin-top: 8px;
  85. overflow: hidden;
  86. width: 100%;
  87. box-sizing: border-box;
  88. height: 110px;
  89. display: flex;
  90. }
  91. }
  92. .detailed-status.light {
  93. padding: 14px;
  94. background: #fff;
  95. cursor: default;
  96. .detailed-status__display-name {
  97. display: block;
  98. overflow: hidden;
  99. margin-bottom: 15px;
  100. & > div {
  101. float: left;
  102. margin-right: 10px;
  103. }
  104. .display-name {
  105. display: block;
  106. max-width: 100%;
  107. overflow: hidden;
  108. white-space: nowrap;
  109. text-overflow: ellipsis;
  110. strong {
  111. font-weight: 500;
  112. color: #282c37;
  113. }
  114. span {
  115. font-size: 14px;
  116. color: #9baec8;
  117. }
  118. }
  119. }
  120. .avatar {
  121. width: 48px;
  122. height: 48px;
  123. img {
  124. display: block;
  125. border-radius: 4px;
  126. }
  127. }
  128. .status__content {
  129. color: #282c37;
  130. a {
  131. color: #2b90d9;
  132. }
  133. }
  134. .detailed-status__meta {
  135. margin-top: 15px;
  136. color: #9baec8;
  137. font-size: 14px;
  138. line-height: 18px;
  139. a {
  140. color: inherit;
  141. }
  142. span > span {
  143. font-weight: 500;
  144. font-size: 12px;
  145. margin-left: 6px;
  146. display: inline-block;
  147. }
  148. }
  149. .detailed-status__attachments {
  150. margin-top: 8px;
  151. overflow: hidden;
  152. width: 100%;
  153. box-sizing: border-box;
  154. height: 300px;
  155. display: flex;
  156. }
  157. .video-player {
  158. margin-top: 8px;
  159. height: 300px;
  160. overflow: hidden;
  161. video {
  162. position: relative;
  163. z-index: 1;
  164. width: 100%;
  165. height: 100%;
  166. object-fit: cover;
  167. top: 50%;
  168. transform: translateY(-50%);
  169. }
  170. }
  171. }
  172. .media-item, .video-item {
  173. box-sizing: border-box;
  174. position: relative;
  175. left: auto;
  176. top: auto;
  177. right: auto;
  178. bottom: auto;
  179. float: left;
  180. border: medium none;
  181. display: block;
  182. flex: 1 1 auto;
  183. height: 100%;
  184. margin-right: 2px;
  185. &:last-child {
  186. margin-right: 0;
  187. }
  188. a {
  189. display: block;
  190. width: 100%;
  191. height: 100%;
  192. background: no-repeat scroll center center / cover;
  193. text-decoration: none;
  194. cursor: zoom-in;
  195. }
  196. }
  197. .video-item {
  198. max-width: 196px;
  199. a {
  200. cursor: pointer;
  201. }
  202. .video-item__play {
  203. position: absolute;
  204. top: 50%;
  205. left: 50%;
  206. font-size: 36px;
  207. transform: translate(-50%, -50%);
  208. padding: 5px;
  209. border-radius: 100px;
  210. color: rgba(255, 255, 255, 0.8);
  211. }
  212. }
  213. .media-spoiler {
  214. background: #9baec8;
  215. width: 100%;
  216. height: 100%;
  217. cursor: pointer;
  218. display: flex;
  219. align-items: center;
  220. justify-content: center;
  221. flex-direction: column;
  222. text-align: center;
  223. transition: all 100ms linear;
  224. &:hover {
  225. background: darken(#9baec8, 5%);
  226. }
  227. span {
  228. display: block;
  229. &:first-child {
  230. font-size: 14px;
  231. }
  232. &:last-child {
  233. font-size: 11px;
  234. font-weight: 500;
  235. }
  236. }
  237. }
  238. }
  239. .embed {
  240. .activity-stream {
  241. border-radius: 4px;
  242. box-shadow: none;
  243. .entry {
  244. &:last-child {
  245. border-radius: 0 0 4px 4px;
  246. }
  247. &:first-child {
  248. border-radius: 4px 4px 0 0;
  249. &:last-child {
  250. border-radius: 4px;
  251. }
  252. }
  253. }
  254. }
  255. }