media/css/firefox/releasenotes.scss (351 lines of code) (raw):
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
@use 'sass:math';
$font-path: '/media/protocol/fonts';
$image-path: '/media/protocol/img';
@import '~@mozilla-protocol/core/protocol/css/includes/lib';
@import '~@mozilla-protocol/core/protocol/css/templates/main-with-sidebar';
@import '../protocol/components/sub-navigation';
@import '~@mozilla-protocol/core/protocol/css/components/logos/logo';
@import '~@mozilla-protocol/core/protocol/css/components/logos/logo-product-firefox';
@import '~@mozilla-protocol/core/protocol/css/components/logos/logo-product-nightly';
@import '~@mozilla-protocol/core/protocol/css/components/logos/logo-product-beta';
@import '~@mozilla-protocol/core/protocol/css/components/logos/logo-product-developer';
// * -------------------------------------------------------------------------- */
// Call out / page header
.mzp-c-callout.t-firefox,
.mzp-c-callout.t-beta {
background: $color-marketing-gray-20;
}
// nightly header gradient
.mzp-c-callout.t-nightly {
background: linear-gradient(#000, #001e44);
}
// developer header gradient
.mzp-c-callout.t-developer {
background: linear-gradient(#000, #001e44);
}
// old logos
// - cannot use at2x mixin here because it will over-ride the background-size,
// which we don't want to have to reset here because it's different for
// mobile and desktop
.t-quantum {
// firefox release
.mzp-c-logo.mzp-t-product-firefox {
background-image: url('/media/img/firefox/releasenotes/release-quantum.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/release-quantum-high-res.png');
}
}
// firefox beta
.mzp-c-logo.mzp-t-product-beta {
background-image: url('/media/img/firefox/releasenotes/beta-quantum.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/beta-quantum-high-res.png');
}
}
// firefox nightly
.mzp-c-logo.mzp-t-product-nightly {
background-image: url('/media/img/firefox/releasenotes/nightly-quantum.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/nightly-quantum-high-res.png');
}
}
// firefox developer edition
.mzp-c-logo.mzp-t-product-developer {
background-image: url('/media/img/firefox/releasenotes/developer-quantum.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/developer-quantum-high-res.png');
}
}
// pre-dev edition firefox aurora
.mzp-c-logo.mzp-t-product-developer.t-aurora {
background-image: url('/media/img/firefox/releasenotes/aurora.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/aurora-high-res.png');
}
}
}
.t-pre-quantum {
// firefox release
.mzp-c-logo.mzp-t-product-firefox {
background-image: url('/media/img/firefox/releasenotes/firefox-old.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/firefox-old-high-res.png');
}
}
// firefox beta
.mzp-c-logo.mzp-t-product-beta {
background-image: url('/media/img/firefox/releasenotes/beta-old.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/beta-old-high-res.png');
}
}
// firefox nightly
.mzp-c-logo.mzp-t-product-nightly {
background-image: url('/media/img/firefox/releasenotes/nightly-old.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/nightly-old-high-res.png');
}
}
// firefox developer edition
.mzp-c-logo.mzp-t-product-developer {
background-image: url('/media/img/firefox/releasenotes/developer-old.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/developer-old-high-res.png');
}
}
// pre-dev edition firefox aurora
.mzp-c-logo.mzp-t-product-developer.t-aurora {
background-image: url('/media/img/firefox/releasenotes/aurora.png');
@media #{$mq-high-res} {
background-image: url('/media/img/firefox/releasenotes/aurora-high-res.png');
}
}
}
.c-download-cta {
> a {
display: inline-block;
margin-top: $spacing-lg;
}
.is-firefox & {
display: none;
}
}
// * -------------------------------------------------------------------------- */
// secondary navigation
.t-release {
background-color: $color-marketing-gray-30;
text-align: center;
.mzp-c-menu-panel-content {
text-align: left;
}
/* mobile only */
@media screen and (max-width: #{$screen-md - 1px}) {
.mzp-c-menu-panel {
background-color: transparent;
}
}
}
// * -------------------------------------------------------------------------- */
// release notes custom typography
.c-release-summary {
margin-bottom: 0;
}
.c-release-version {
@include text-title-xl;
font-family: var(--body-font-family);
display: block;
}
.c-release-first-text,
.c-release-draft-text {
@include text-body-md;
}
.mzp-l-content {
.c-release-product {
@include text-title-2xs;
font-family: var(--body-font-family);
display: block;
}
.c-release-date {
@include text-title-2xs;
font-family: var(--body-font-family);
}
.c-release-first-title,
.c-release-draft-title {
@include text-title-2xs;
font-family: var(--body-font-family);
font-weight: bold;
// pushes the text down after the big release-version text
&::before {
@include text-title-xl;
content: '.';
display: block;
visibility: hidden;
}
}
h3 {
@include text-title-xs;
margin-bottom: $layout-sm;
}
}
.c-release-notes > .mzp-l-content {
padding-top: $layout-lg;
&::before {
content: '';
display: block;
width: calc(100% - #{ $layout-xs * 2});
height: 2px;
background-color: $color-marketing-gray-20;
position: absolute;
top: 0;
left: $layout-xs;
@media #{$mq-md} {
left: $layout-lg;
width: calc(100% - #{ $layout-lg * 2});
}
@media #{$mq-lg} {
left: $layout-xl;
width: calc(100% - #{ $layout-xl * 2});
}
}
}
.mzp-l-article {
> ul > li {
border-bottom: 2px solid $color-marketing-gray-20;
margin-bottom: $layout-sm;
padding-bottom: $layout-sm;
scroll-margin-top: 88px;
&:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
> ul,
> ol,
> p {
&:last-child {
margin-bottom: 0;
}
}
p + ul,
p + ol {
margin-top: -1em;
}
ul,
ol {
@include bidi(((margin-left, $layout-sm, margin-right, 0),));
}
ul {
list-style: disc;
li {
margin-bottom: 0.25em;
}
ul {
list-style: circle;
margin-bottom: 0;
}
ol {
list-style: decimal;
margin-bottom: 0;
}
}
ol {
list-style: decimal;
li {
margin-bottom: 0.25em;
}
ol {
list-style: lower-alpha;
margin-bottom: 0;
}
ul {
list-style: disc;
margin-bottom: 0;
}
}
}
}
// icons
.c-release-notes .mzp-l-sidebar {
display: flex;
align-items: flex-start;
}
.sidebar-icon {
float: left;
margin-right: $spacing-sm;
}
.developer-more {
border-bottom: 2px solid $color-marketing-gray-20;
margin-bottom: $layout-md;
padding-bottom: $layout-md;
&:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
}
.mdn-icon {
@include align-items(center);
@include flexbox;
@include justify-content(end);
margin-top: 10px;
&::before {
content: ' ';
background-image: url('/media/img/firefox/releasenotes/mdn-icon.png');
background-repeat: no-repeat;
background-size: 100%;
display: inline-block;
height: 25px;
margin-right: 5px;
vertical-align: bottom;
width: 25px;
}
ul + & {
margin-top: 20px;
}
}
// * -------------------------------------------------------------------------- */
// all-download link
.all-download {
background-color: $color-marketing-gray-20;
font-weight: bold;
padding: $spacing-sm $layout-2xs;
@include text-body-md;
@media #{$mq-md} {
text-align: center;
}
}
// * -------------------------------------------------------------------------- */
// more information links at end of page
.c-release-footer {
padding: $layout-sm 0;
h2 {
@include text-body-md;
}
a {
display: block;
}
.c-release-footer-col {
margin-top: $layout-md;
&:first-child {
margin-top: 0;
}
@media #{$mq-md} {
@include bidi(((float, left, right),));
@include bidi(((padding-left, $layout-md, padding-right, 0),));
margin-top: 0;
width: calc(#{math.div(100%, 3)} - (#{$layout-md} - #{math.div($layout-md, 3)}));
&:first-child {
@include bidi(((padding-left, 0, padding-right, 0),));
}
}
}
}
.release-note {
.release-note-content{
width: 100%;
}
.bug-id {
@include bidi(((text-align, right, left),));
display: block;
margin-bottom: 0;
p + &,
ul + & {
margin-top: -1em;
}
}
.relevant-countries {
@include text-body-xs;
margin-bottom: $spacing-lg;
}
.release-note-progressive-rollout-indicator {
@include text-body-md;
text-align: center;
width: 210px;
border: 2px solid $color-marketing-gray-20;
border-radius: $border-radius-md;
padding: $spacing-sm 0;
margin: auto;
img {
width: 100px
}
p {
margin-bottom: $spacing-sm;
}
details {
@include text-body-xs;
padding: 0 $spacing-md;
p {
text-align: left;
}
summary {
color: $color-marketing-gray-60;
font-weight: bold;
padding: 0 0 $spacing-xs;
position: static;
text-decoration: underline;
&::before {
content:none;
}
}
}
}
@media #{$mq-md} {
display: flex;
.release-note-progressive-rollout-indicator {
margin-left: $spacing-lg;
max-width: 210px;
min-width: 210px;
}
}
}