Files
edx-platform/lms/static/certificates/sass/_print.scss
2017-10-16 12:41:20 -04:00

344 lines
6.5 KiB
SCSS

// ------------------------------
// // Open edX Certificates: Print Specific Styling
// About: styling specific for print layouts.
// #UTILITIES
// #BASE
// #LAYOUT
// #ELEMENTS
// #CASES
// ------------------------------
// #UTILITIES
// ------------------------------
// page set up - only available to modern browsers now
@page {
size : landscape;
}
@media print {
// helpers
%print-no-background {
background: none !important;
}
%print-hide {
display: none !important;
}
%print-black-on-white {
background: $white !important;
color: $black !important;
}
%print-layout-wrapper {
padding: 0 !important;
}
%print-rendering-section {
margin-bottom: spacing-vertical(small);
border-bottom: none !important;
padding-bottom: 0 !important;
&:last-child {
border: none;
padding-bottom: 0;
}
}
}
// ------------------------------
// #BASE
// ------------------------------
@media print {
// prevent images from bleeding over the edge of the printed page
img {
max-width: 100% !important;
}
// prevent large elements from being split across multiple pages
ul, img {
page-break-inside: avoid;
}
// reset body/view properties
html,
body {
@extend %print-black-on-white;
}
body {
height: auto;
margin: spacing-vertical(mid-large) spacing-vertical(mid-small) 0 spacing-vertical(mid-small) !important;
padding: 0;
}
.wrapper-view {
margin-bottom: 0 !important;
}
}
// force background images and colors
@media print and (color) {
* {
-webkit-print-color-adjust: exact;
print-color-adjust: exact;
}
}
// ------------------------------
// #LAYOUT
// ------------------------------
@media print {
// hide elements not needed for print rendering
.wrapper-banner-user,
.wrapper-about,
.wrapper-footer,
.wrapper-header,
.wrapper-introduction,
.accomplishment-metadata-title,
.accomplishment-metadata .accomplishment-recipient,
.deco-corner,
.accomplishment-date .label {
@extend %print-hide;
}
// remove layout wrappers' padding
.wrapper-introduction,
.wrapper-accomplishment-rendering,
.wrapper-accomplishment-metadata {
@extend %print-layout-wrapper;
}
}
// ------------------------------
// #ELEMENTS
// ------------------------------
@media print {
// headings
.hd-1 {
font-size: font-size(x-large);
line-height: line-height(x-large);
}
.hd-2 {
font-size: font-size(large);
line-height: line-height(large);
}
.hd-3 {
font-size: font-size(large);
line-height: line-height(large);
}
.hd-4 {
font-size: font-size(base);
line-height: line-height(base);
}
.hd-5 {
font-size: font-size(small);
line-height: line-height(small);
}
.hd-6 {
font-size: font-size(x-small);
line-height: line-height(x-small);
}
.hd-7 {
font-size: font-size(xx-small);
line-height: line-height(x-small);
}
// copy
.copy-lead {
font-size: font-size(base);
line-height: line-height(base);
}
.copy-large {
font-size: font-size(base);
line-height: line-height(base);
}
.copy-base {
font-size: font-size(small);
line-height: line-height(small);
}
.copy-meta {
font-size: font-size(x-small);
line-height: line-height(small);
}
.copy-micro {
font-size: font-size(xx-small);
line-height: line-height(x-small);
}
// accomplishment
.accomplishment-main {
@extend %print-no-background;
}
.accomplishment-rendering {
top: 0 !important;
border: rem(1) solid palette(grayscale, back);
border-top: rem(2) solid $cert-base-color;
box-shadow: none;
padding: spacing-vertical(small) spacing-horizontal(mid-large);
.accomplishment-type {
margin-top: -(spacing-vertical(mid-large));
}
.accomplishment-type-symbol {
@include size(rem(75));
border: none !important;
}
.wrapper-statement-and-signatories {
border-bottom: rem(2) solid palette(grayscale, x-back);
}
.accomplishment-statement {
@extend %print-rendering-section;
@include span(8);
margin: 0 auto;
}
.accomplishment-summary,
.accomplishment-statement-detail {
margin-bottom: spacing-vertical(mid-small);
}
.wrapper-orgs::after {
display: none;
}
.accomplishment-orgs {
margin-bottom: 0 !important;
border-bottom: none !important;
padding-bottom: 0 !important;
.wrapper-organization {
height: rem(48);
margin-top: spacing-vertical(mid-small) !important;
margin-bottom: spacing-vertical(mid-small) !important;
}
.organization-logo {
max-width: 100%;
max-height: 80%;
}
}
.accomplishment-signatories {
@extend %print-rendering-section;
@include span(12, before);
.signatory-credentials {
font-size: 8pt;
line-height: 1.3;
}
.signatory-signature {
height: spacing-vertical(small);
max-width: 100%;
margin-top: 0;
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.signatory-name {
font-size: font-size(x-small);
}
.signatory-credentials {
margin-bottom: 0 !important;
}
// CASE: > 4 signatures
&.has-many {
.signatory {
@include span(2);
}
}
}
}
.layout-accomplishment .wrapper-accomplishment-metadata {
margin-bottom: 0;
}
.accomplishment-metadata {
margin-bottom: 0;
.wrapper-metadata {
@include clearfix();
margin-bottom: 0;
.metadata {
margin-bottom: 0;
border-bottom: none !important;
padding-bottom: 0 !important;
.label, .value {
display: inline-block;
vertical-align: baseline;
font-size: font-size(x-small);
line-height: line-height(small);
}
.label {
@include margin-right(spacing-horizontal(small));
}
}
}
.accomplishment-id {
float: left;
width: 65% !important;
margin: 0 !important;
@include text-align(left);
}
.accomplishment-date {
float: right;
width: 35% !important;
margin: 0 !important;
@include text-align(right);
}
}
}
// ------------------------------
// #CASES
// ------------------------------
// certificate - distinguished
@media print {
.certificate-distinguished {
.accomplishment-rendering {
border-top-color: $cert-distinguished-color;
}
}
}