]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/videos/+video-watch/video-watch.component.scss
Handle when autoplay fails
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / +video-watch / video-watch.component.scss
1 @import '_variables';
2 @import '_mixins';
3
4 #video-element-wrapper {
5 background-color: #000;
6 display: flex;
7 justify-content: center;
8
9 /deep/ .video-js {
10 width: 888px;
11 height: 500px;
12
13 @media screen and (max-width: 600px) {
14 height: auto;
15 max-height: calc(100vh - #{$header-height});
16 }
17
18 // VideoJS create an inner video player
19 video {
20 outline: 0;
21 position: relative !important;
22 }
23 }
24 }
25
26 #video-not-found {
27 height: 300px;
28 line-height: 300px;
29 margin-top: 50px;
30 text-align: center;
31 font-weight: $font-semibold;
32 font-size: 15px;
33 }
34
35 .video-bottom {
36 margin-top: 40px;
37 display: flex;
38
39 .video-info {
40 flex-grow: 1;
41 margin-right: 40px;
42 // Set min width for flex item
43 min-width: 1px;
44
45 .video-info-first-row {
46 display: flex;
47
48 & > div:first-child {
49 flex-grow: 1;
50 }
51
52 .video-info-name {
53 margin-right: 30px;
54 min-height: 40px; // Align with the action buttons
55 font-size: 27px;
56 font-weight: $font-semibold;
57 flex-grow: 1;
58 }
59
60 .video-info-date-views {
61 font-size: 16px;
62 margin-bottom: 10px;
63 flex-grow: 1;
64 }
65
66 .video-info-channel {
67 font-weight: $font-semibold;
68 font-size: 15px;
69 }
70
71 .video-info-by {
72 display: flex;
73 align-items: center;
74 font-size: 13px;
75
76 a {
77 color: black;
78 display: inline-block;
79 }
80
81 img {
82 @include avatar(18px);
83
84 margin-left: 7px;
85 }
86 }
87
88 my-video-feed {
89 margin-left: 5px;
90 margin-top: 1px;
91 }
92
93 .video-actions-rates {
94 display: flex;
95 flex-direction: column;
96 align-items: flex-end;
97
98 .video-actions {
99 height: 40px; // Align with the title
100 display: flex;
101 align-items: center;
102
103 .action-button:not(:first-child), .action-more {
104 margin-left: 10px;
105 }
106
107 .action-button {
108 @include peertube-button;
109 @include grey-button;
110
111 font-size: 15px;
112 font-weight: $font-semibold;
113 display: inline-block;
114 padding: 0 10px 0 10px;
115 white-space: nowrap;
116
117 .icon {
118 @include icon(21px);
119
120 position: relative;
121 top: -2px;
122
123 &.icon-like {
124 background-image: url('../../../assets/images/video/like-grey.svg');
125 }
126
127 &.icon-dislike {
128 background-image: url('../../../assets/images/video/dislike-grey.svg');
129 }
130
131 &.icon-support {
132 background-image: url('../../../assets/images/video/heart.svg');
133 }
134
135 &.icon-share {
136 background-image: url('../../../assets/images/video/share.svg');
137 }
138
139 &.icon-more {
140 background-image: url('../../../assets/images/video/more.svg');
141 top: -1px;
142 }
143 }
144
145 &.action-button-share {
146 width: 82px;
147 }
148
149 &.action-button-like.activated {
150 background-color: #39CC0B;
151
152 .icon-like {
153 background-image: url('../../../assets/images/video/like-white.svg');
154 }
155 }
156
157 &.action-button-dislike.activated {
158 background-color: #FF0000;
159
160 .icon-dislike {
161 background-image: url('../../../assets/images/video/dislike-white.svg');
162 }
163 }
164 }
165
166 .action-more {
167 display: inline-block;
168
169 .dropdown-menu .dropdown-item {
170 padding: 6px 24px;
171
172 .icon {
173 @include icon(24px);
174
175 margin-right: 10px;
176 position: relative;
177 top: -1px;
178
179 &.icon-download {
180 background-image: url('../../../assets/images/video/download-black.svg');
181 }
182
183 &.icon-edit {
184 background-image: url('../../../assets/images/global/edit-black.svg');
185 }
186
187 &.icon-alert {
188 background-image: url('../../../assets/images/video/alert.svg');
189 }
190
191 &.icon-blacklist {
192 background-image: url('../../../assets/images/video/blacklist.svg');
193 }
194 }
195 }
196 }
197 }
198
199 .video-info-likes-dislikes-bar {
200 height: 5px;
201 width: 186px;
202 background-color: #E5E5E5;
203 margin-top: 25px;
204
205 .likes-bar {
206 height: 100%;
207 background-color: #39CC0B;
208 }
209 }
210 }
211 }
212
213 .video-info-description {
214 margin: 20px 0;
215 font-size: 15px;
216
217 .video-info-description-html {
218 word-wrap: break-word;
219 text-align: justify;
220 }
221
222 .description-loading {
223 display: inline-block;
224 }
225
226 .video-info-description-more {
227 cursor: pointer;
228 font-weight: $font-semibold;
229 color: #585858;
230 font-size: 14px;
231
232 .glyphicon {
233 position: relative;
234 top: 2px;
235 }
236 }
237 }
238
239 .video-attributes .video-attribute {
240 font-size: 13px;
241 display: block;
242 margin-bottom: 12px;
243
244 .video-attribute-label {
245 width: 86px;
246 display: inline-block;
247 color: #585858;
248 font-weight: $font-bold;
249 }
250 }
251 }
252
253 .other-videos {
254 .title-page {
255 margin-top: 0;
256 }
257
258 /deep/ .video-miniature {
259 display: flex;
260 height: 100%;
261 margin-bottom: 20px;
262
263 .video-miniature-information {
264 margin-left: 10px;
265 }
266 }
267 }
268 }
269
270 // If the view is not expanded, take into account the menu
271 .privacy-concerns {
272 width: calc(100% - #{$menu-width});
273 }
274
275 :host-context(.expanded) {
276 .privacy-concerns {
277 width: 100%;
278 }
279 }
280
281 .privacy-concerns {
282 position: fixed;
283 bottom: 0;
284
285 padding: 5px 15px;
286
287 display: flex;
288 align-items: center;
289 justify-content: flex-start;
290 background-color: rgba(0, 0, 0, 0.9);
291 color: #fff;
292
293 .privacy-concerns-text {
294 margin: 0 5px;
295 }
296
297 a {
298 @include disable-default-a-behaviour;
299
300 color: $orange-color;
301 transition: color 0.3s;
302
303 &:hover {
304 color: #fff;
305 }
306 }
307
308 .privacy-concerns-okay {
309 background-color: $orange-color;
310 padding: 5px 8px 5px 7px;
311 margin-left: auto;
312 border-radius: 3px;
313 cursor: pointer;
314 transition: background-color 0.3s;
315 font-weight: $font-semibold;
316
317 &:hover {
318 background-color: #000;
319 }
320 }
321 }
322
323
324 @media screen and (max-width: 1600px) {
325 .video-bottom {
326 .video-info {
327 margin-right: 20px;
328
329 .video-info-first-row {
330 flex-direction: column;
331 margin-bottom: 30px;
332
333 .video-actions-rates {
334 margin-top: 20px;
335 align-items: start;
336
337 .video-info-likes-dislikes-bar {
338 margin-top: 10px;
339 }
340 }
341 }
342
343 .video-info-date-views {
344 flex-direction: column;
345 margin-bottom: 30px;
346
347 .video-info-likes-dislikes-bar {
348 margin-top: 0;
349 }
350 }
351
352 .video-attributes .video-attribute {
353 margin-bottom: 5px;
354 }
355 }
356 }
357 }
358
359 @media screen and (max-width: 1300px) {
360 .other-videos {
361 display: none;
362 }
363
364 .privacy-concerns {
365 font-size: 12px;
366 padding: 2px 5px;
367
368 .privacy-concerns-text {
369 margin: 0;
370 }
371 }
372 }
373
374 @media screen and (max-width: 600px) {
375 .video-bottom {
376 margin: 20px 0 0 0;
377
378 .video-info {
379
380 .video-info-first-row {
381
382 .video-info-name {
383 font-size: 20px;
384 height: auto;
385 }
386 }
387 }
388 }
389
390 .privacy-concerns {
391 width: 100%;
392
393 strong {
394 display: none;
395 }
396 }
397 }
398
399 @media screen and (max-width: 450px) {
400 .video-bottom .action-button .icon-text {
401 display: none !important;
402 }
403 }