Vectorize website settings icons in omnibox
[chromium-blink-merge.git] / components / dom_distiller / core / css / distilledpage.css
blob742e28d604b85729703426b2c342b6b408ad9c72
1 /* Copyright 2014 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file. */
5 /* Set the global 'box-sizing' state to 'border-box'.
6 * *::after and *::before used to select pseudo-elements not selectable by *. */
8 *,
9 *::after,
10 *::before {
11 box-sizing: border-box;
14 /* Remove all margins and padding from certain element and add word wrap. */
16 blockquote,
17 body,
18 caption,
19 dd,
20 dl,
21 fieldset,
22 figure,
23 form,
24 h1,
25 h2,
26 h3,
27 h4,
28 h5,
29 h6,
30 hr,
31 legend,
32 ol,
34 pre,
35 ul,
36 table,
37 td,
38 th {
39 margin: 0;
40 padding: 0;
41 word-wrap: break-word;
44 /* Prevent 'sub' and 'sup' affecting 'line-height'. */
46 sub,
47 sup {
48 font-size: 75%;
49 line-height: 0;
50 position: relative;
51 vertical-align: baseline;
54 sup {
55 top: -0.5em;
58 sub {
59 bottom: -0.25em;
62 /* Remove most spacing between table cells. */
64 table {
65 border-collapse: collapse;
66 border-spacing: 0;
67 display: block;
68 overflow-x: auto;
71 td,
72 th {
73 padding: 0.5rem;
76 /* Base typography. */
78 html {
79 font-size: 14px;
80 height: 100%;
83 body {
84 height: 100%;
85 line-height: 1.714;
86 margin: 0px auto;
87 text-rendering: optimizeLegibility;
88 transition-property: color, background-color;
89 transition-duration: 0.5s;
90 transition-timing-function: ease;
91 overflow-x: hidden;
92 -webkit-overflow-scrolling: touch;
95 /* Classes for light, dark and sepia themes.
96 * Must agree with classes returned by useTheme() in dom_distiller_viewer.js
97 * and with CSS class constants in viewer.cc */
99 .light {
100 color: #424242;
101 background-color: #FAFAFA;
104 .dark {
105 color: #E0E0E0;
106 background-color: #212121;
109 .sepia {
110 color: #000;
111 background-color: rgb(203, 173, 141);
114 .light a:link,
115 .sepia a:link {
116 color: #55F;
119 .dark a:link {
120 color: #88F;
123 .light a:visited,
124 .sepia a:visited {
125 color: #902290;
128 .dark a:visited {
129 color: #D872D8;
132 .light code,
133 .light pre {
134 background-color: #EEE;
135 border-color: #AAA;
138 .sepia code,
139 .sepia pre {
140 background-color: rgb(217, 196, 175);
141 border-color: rgb(147, 125, 102);
144 .dark code,
145 .dark pre {
146 background-color: #333;
147 border-color: #555;
150 .light tbody tr:nth-child(odd) {
151 background-color: #EEE;
154 .light th, .light td {
155 border-left: 1px solid #AAA;
158 .sepia tbody tr:nth-child(odd) {
159 background-color: rgb(217, 196, 175);
162 .sepia th, .sepia td {
163 border-left: 1px solid rgb(147, 125, 102);
166 .dark tbody tr:nth-child(odd) {
167 background-color: #333;
170 .dark th, .dark td {
171 border-left: 1px solid #555;
174 /* #contentWrap is added to be more specific than the color theme rules */
175 #contentWrap th:first-child { border-left: none; }
176 #contentWrap td:first-child { border-left: none; }
179 /* Font settings */
181 .serif {
182 font-family: serif;
185 .sans-serif {
186 font-family: 'Roboto', sans-serif;
189 .monospace {
190 font-family: monospace;
193 /* Define vertical rhythm (baseline grid of 4px). */
195 blockquote,
196 caption,
197 code,
200 fieldset,
201 figure,
202 form,
204 legend,
207 pre,
209 table,
212 ul {
213 margin-bottom: 1.143rem;
221 h6 {
222 line-height: 1.417;
223 margin: 1em 0;
226 /* Content. */
228 /* Margins for Show Original link. */
230 .light #closeReaderView {
231 border-top: 1px solid #E0E0E0;
232 color: #4285F4;
235 .dark #closeReaderView {
236 border-top: 1px solid #555;
237 color: #3adaff;
240 .sepia #closeReaderView {
241 border-top: 1px solid rgb(147, 125, 102);
242 color: #55F;
245 #closeReaderView {
246 flex: 0 0 auto;
247 font-family: 'Roboto', sans-serif;
248 font-weight: 700;
249 line-height: 14px;
250 padding: 24px 16px;
251 font-size: 14px;
252 text-align: right;
253 text-decoration: none;
254 text-transform: uppercase;
255 width: 100%;
258 @media print {
259 #closeReaderView {
260 display: none;
263 /* Remove backgrounds and custom colors. */
264 .light, .dark, .sepia {
265 color: #000 !important;
266 background-color: #fff !important;
269 /* If the transition duration is unchanged, the above color changes
270 happen after the document is ready for print. */
271 body {
272 transition-duration: unset !important;
276 #content {
277 margin: 24px 16px 24px 16px;
280 #mainContent {
281 flex: 1 1 auto;
282 margin: 0px auto;
283 max-width: 35em;
284 width: 100%;
287 #articleHeader {
288 margin-top: 24px;
289 width: 100%;
292 #titleHolder {
293 font-size: 1.714rem;
294 line-height: 1.417;
295 margin: 0 16px;
298 blockquote {
299 border-left: 4px solid #888;
300 padding-left: 1em;
303 cite {
304 opacity: .8;
305 font-style: italic;
308 hr {
309 opacity: .5;
310 border-style: solid;
311 height: 1px 0 0 0;
312 width: 75%;
317 opacity: .8;
318 display:block;
319 font-style: italic;
320 font-weight: 600;
323 embed,
324 img,
325 object,
326 video {
327 max-width: 100%;
330 /* TODO(sunangel): make images zoomable. */
332 img {
333 display: block;
334 height: auto;
335 margin: 0.6rem auto 0.4rem 0;
338 /* TODO(nyquist): set these classes directly in the dom distiller. */
340 embed+[class*='caption'],
341 figcaption,
342 img+[class*='caption'],
343 object+[class*='caption'],
344 video+[class*='caption'] {
345 opacity: .8;
346 display: table;
347 margin-bottom: 1rem;
348 font-size: 0.857rem;
349 line-height: 1.667;
353 ul {
354 margin-left: 1.296rem;
357 code, pre {
358 border: 1px solid;
359 border-radius: 2px;
362 pre code {
363 border: none;
366 pre {
367 line-height: 1.642;
368 padding: .5em;
369 white-space: pre-wrap;
372 .hidden {
373 display: none;
376 /* Footer feedback form. */
377 #contentWrap {
378 display: flex;
379 flex-flow: column;
380 min-height: 100%;
381 overflow: auto;
382 position: relative;
383 z-index: 1;
386 #feedbackContainer {
387 font-size: 14px;
388 position: relative;
389 z-index: 2;
392 .footerFeedback {
393 background-color: #4285F4;
394 clear: both;
395 color: #fff;
396 display: none;
397 height: 120px;
398 margin-top: -120px;
399 width: 100%;
402 .feedbackContent {
403 font-size: 14px;
404 background-color: #4285F4;
405 clear: both;
406 padding: 14px;
409 #feedbackQuestion {
410 font-size: 1.4em;
411 font-weight: 700;
412 text-align: center;
413 width: 100%;
416 .feedbackButtonWrap {
417 margin-top: 14px;
418 text-align: center;
419 width: 100%;
422 .feedbackButton {
423 -webkit-user-select: none;
424 background-color: #FFFFFF;
425 border-radius: 3px;
426 color: #4285F4;
427 display: inline-block;
428 font-weight: 900;
429 height: 35px;
430 margin: 0px 4% 0px 4%;
431 padding-top: 8px;
432 text-align: center;
433 text-transform: uppercase;
434 user-select: none;
435 width: 40%;
438 .clear {
439 clear: both;
442 /* Feedback fade out */
443 .fadeOut {
444 animation-duration: 0.5s;
445 animation-name: fadeOutAndSwipeAnimation;
448 @keyframes fadeOutAndSwipeAnimation {
449 from {
450 margin-left: 0%;
451 opacity: 1;
454 to {
455 margin-left: -100%;
456 opacity: 0;
460 /* Iframe sizing. */
461 .youtubeContainer {
462 height: 0px;
463 /* This is the perecnt height of a standard HD video. */
464 padding-bottom: 56.25%;
465 position: relative;
466 width: 100%;
469 .youtubeIframe {
470 height: 100%;
471 left: 0px;
472 position: absolute;
473 top: 0px;
474 width: 100%;
477 /* Loading Indicator. */
478 #loader {
479 height: 22px;
480 margin-left: auto;
481 margin-right: auto;
482 position: relative;
483 width: 22px;
486 #loader * {
487 display: block;
488 position: absolute;
491 #loader .circle {
492 border-radius: 50%;
493 height: 100%;
494 opacity: 0;
495 overflow: hidden;
496 width: 100%;
499 #loader .mask {
500 height: 100%;
501 opacity: 0;
502 overflow: hidden;
503 width: 100%;
506 #loader .mask.first {
507 transition-delay: 0.22s;
508 transition-duration: 0s;
509 transition-property: border-color;
512 #loader .circle.initial .mask {
513 height: 50%;
514 top: 0;
517 #loader .circle.red .mask.first {
518 border-bottom: 1px solid #555;
519 height: 50%;
520 top: 0;
523 #loader .circle.red .mask.second {
524 bottom: 0;
525 height: 50%;
528 #loader .circle.yellow .mask.first {
529 border-left: 1px solid #888;
530 right: 0;
531 width: 50%;
534 #loader .circle.yellow .mask.second {
535 left: 0;
536 width: 50%;
539 #loader .circle.green .mask.first {
540 border-top: 1px solid #555;
541 bottom: 0;
542 height: 50%;
545 #loader .circle.green .mask.second {
546 height: 50%;
547 top: 0;
550 #loader .circle.blue .mask.first {
551 border-right: 1px solid #888;
552 left: 0;
553 width: 50%;
556 #loader .circle.blue .mask.second {
557 right: 0;
558 width: 50%;
561 #loader .circle .mask .base {
562 border-radius: 50%;
563 height: 100%;
564 opacity: 0;
565 transition-property: opacity;
566 transition-timing-function: linear;
567 transition-duration: 0s;
568 transition-delay: 0s;
569 width: 100%;
572 #loader .circle .mask .mover {
573 border-radius: 50%;
574 height: 100%;
575 transition-delay: 0s;
576 transition-duration: 0.22s;
577 transition-property: background-color, left, top, right, bottom, width,
578 height;
579 transition-timing-function: ease-in;
580 width: 100%;
583 #loader .circle .mask.second .mover,
584 #loader .circle.initial .mask .mover {
585 transition-delay: 0.22s;
586 transition-timing-function: ease-out;
589 #loader .circle.red .mask.first .base {
590 height: 200%;
591 top: 0;
593 #loader .circle.red .mask.second .base {
594 bottom: 0;
595 height: 200%;
598 #loader .circle.yellow .mask.first .base {
599 right: 0;
600 width: 200%;
603 #loader .circle.yellow .mask.second .base {
604 left: 0;
605 width: 200%;
608 #loader .circle.green .mask.first .base {
609 bottom: 0;
610 height: 200%;
613 #loader .circle.green .mask.second .base {
614 height: 200%;
615 top: 0;
618 #loader .circle.blue .mask.first .base {
619 left: 0;
620 width: 200%;
623 #loader .circle.blue .mask.second .base {
624 right: 0;
625 width: 200%;
628 #loader .circle.initial .mask .mover {
629 height: 0;
630 top: 100%;
633 #loader .circle.red .mask.first .mover {
634 height: 200%;
635 top: 0;
638 #loader .circle.red .mask.second .mover {
639 bottom: 100%;
640 height: 0;
643 #loader .circle.yellow .mask.first .mover {
644 right: 0;
645 width: 200%;
648 #loader .circle.yellow .mask.second .mover {
649 left: 100%;
650 width: 0;
653 #loader .circle.green .mask.first .mover {
654 bottom: 0;
655 height: 200%;
658 #loader .circle.green .mask.second .mover {
659 height: 0;
660 top: 100%;
663 #loader .circle.blue .mask.first .mover {
664 left: 0;
665 width: 200%;
668 #loader .circle.blue .mask.second .mover {
669 right: 100%;
670 width: 0;
673 /* Initial State. */
674 #loader.initial .circle.initial,
675 #loader.initial .circle.initial .mask {
676 opacity: 1;
678 #loader.initial .circle.initial .mask .mover {
679 height: 200%;
680 top: 0;
683 /* Moving from Red to Yellow. */
684 #loader.yellow .circle.yellow,
685 #loader.yellow .circle.yellow .mask,
686 #loader.yellow .circle.yellow .mask .base {
687 opacity: 1;
689 #loader.yellow .circle.yellow .mask.first .mover {
690 right: 100%;
691 width: 0;
693 #loader.yellow .circle.yellow .mask.second .mover {
694 left: 0;
695 width: 200%;
698 /* Moving from Yellow to Green. */
699 #loader.green .circle.green,
700 #loader.green .circle.green .mask,
701 #loader.green .circle.green .mask .base {
702 opacity: 1;
704 #loader.green .circle.green .mask.first .mover {
705 bottom: 100%;
706 height: 0;
708 #loader.green .circle.green .mask.second .mover {
709 height: 200%;
710 top: 0;
714 /* Moving from Green to Blue. */
715 #loader.blue .circle.blue,
716 #loader.blue .circle.blue .mask,
717 #loader.blue .circle.blue .mask .base {
718 opacity: 1;
720 #loader.blue .circle.blue .mask.first .mover {
721 left: 100%;
722 width: 0;
724 #loader.blue .circle.blue .mask.second .mover {
725 right: 0;
726 width: 200%;
729 /* Moving from Blue to Red. */
730 #loader.red .circle.red,
731 #loader.red .circle.red .mask,
732 #loader.red .circle.red .mask .base {
733 opacity: 1;
735 #loader.red.firstTime .circle.red .mask.second .base {
736 opacity: 0;
738 #loader.red .circle.red .mask.first .mover {
739 height: 0;
740 top: 100%;
742 #loader.red .circle.red .mask.second .mover {
743 bottom: 0;
744 height: 200%;
747 #loader .circle.red .mask.first {
748 border-bottom-color: rgb(60,120,248);
751 #loader .circle.yellow .mask.first {
752 border-left-color: rgb(250,36,36);
755 #loader .circle.green .mask.first {
756 border-top-color: rgb(255,211,75);
759 #loader .circle.blue .mask.first {
760 border-right-color: rgb(0,177,95);
763 #loader .circle.red .mask.first .base {
764 background-color: rgb(250,36,36);
767 #loader .circle.red .mask.second .base {
768 background-color: rgb(60,120,248);
771 #loader .circle.yellow .mask.first .base {
772 background-color: rgb(255,211,75);
775 #loader .circle.yellow .mask.second .base {
776 background-color: rgb(250,36,36);
779 #loader .circle.green .mask.first .base {
780 background-color: rgb(0,177,95);
783 #loader .circle.green .mask.second .base {
784 background-color: rgb(255,211,75);
787 #loader .circle.blue .mask.first .base {
788 background-color: rgb(60,120,248);
791 #loader .circle.blue .mask.second .base {
792 background-color: rgb(0,177,95);
795 #loader .circle.initial .mask .mover {
796 background-color: rgb(33,89,189);
799 #loader .circle.red .mask.first .mover {
800 background-color: rgb(60,120,248);
803 #loader .circle.red .mask.second .mover {
804 background-color: rgb(158,18,18);
807 #loader .circle.yellow .mask.first .mover {
808 background-color: rgb(250,36,36);
811 #loader .circle.yellow .mask.second .mover {
812 background-color: rgb(222,161,26);
815 #loader .circle.green .mask.first .mover {
816 background-color: rgb(255,211,75);
819 #loader .circle.green .mask.second .mover {
820 background-color: rgb(0,137,72);
823 #loader .circle.blue .mask.first .mover {
824 background-color: rgb(0,177,95);
827 #loader .circle.blue .mask.second .mover {
828 background-color: rgb(33,89,189);
831 #loader.initial .circle.initial .mask .mover {
832 background-color: rgb(60,120,248);
835 #loader.yellow .circle.yellow .mask.first {
836 border-color: rgb(255,211,75);
839 #loader.yellow .circle.yellow .mask.first .mover {
840 background-color: rgb(158,18,18);
843 #loader.yellow .circle.yellow .mask.second .mover {
844 background-color: rgb(255,211,75);
847 #loader.green .circle.green .mask.first {
848 border-color: rgb(0,177,95);
851 #loader.green .circle.green .mask.first .mover {
852 background-color: rgb(222,161,26);
855 #loader.green .circle.green .mask.second .mover {
856 background-color: rgb(0,177,95);
859 #loader.blue .circle.blue .mask.first {
860 border-color: rgb(60,120,248);
863 #loader.blue .circle.blue .mask.first .mover {
864 background-color: rgb(0,137,72);
867 #loader.blue .circle.blue .mask.second .mover {
868 background-color: rgb(60,120,248);
871 #loader.red .circle.red .mask.first {
872 border-color: rgb(250,36,36);
875 #loader.red .circle.red .mask.first .mover {
876 background-color: rgb(33,89,189);
879 #loader.red .circle.red .mask.second .mover {
880 background-color: rgb(250,36,36);