Cosa ci sottrae la tecnologia – e come riappropriarsene | Rebecca Solnit

Cosa ci sottrae la tecnologia – e come riappropriarsene | Rebecca Solnit
Questo codice CSS definisce un carattere personalizzato chiamato "Guardian Headline Full" con più stili e pesi. Include versioni light, regular, medium e semibold, ciascuna sia in stile normale che corsivo. I file del font sono forniti in tre formati—WOFF2, WOFF e TrueType—e sono ospitati sui server del Guardian. @media (min-width: 71.25em) { .content__main-column--interactive { margin-left: 160px; } } @media (min-width: 81.25em) { .content__main-column--interactive { margin-left: 240px; } } .content__main-column--interactive .element-atom { max-width: 620px; } @media (max-width: 46.24em) { .content__main-column--interactive .element-atom { max-width: 100%; } } .content__main-column--interactive .element-showcase { margin-left: 0; } @media (min-width: 46.25em) { .content__main-column--interactive .element-showcase { max-width: 620px; } } @media (min-width: 71.25em) { .content__main-column--interactive .element-showcase { max-width: 860px; } } .content__main-column--interactive .element-immersive { max-width: 1100px; } @media (max-width: 46.24em) { .content__main-column--interactive .element-immersive { width: calc(100vw - var(--scrollbar-width, 0px)); position: relative; left: 50%; right: 50%; margin-left: calc(-50vw + var(--half-scrollbar-width, 0px)) !important; margin-right: calc(-50vw + var(--half-scrollbar-width, 0px)) !important; } } @media (min-width: 46.25em) { .content__main-column--interactive .element-immersive { transform: translate(-20px); width: calc(100% + 60px); } } @media (max-width: 71.24em) { .content__main-column--interactive .element-immersive { margin-left: 0; margin-right: 0; } } @media (min-width: 71.25em) { .content__main-column--interactive .element-immersive { transform: translate(0); width: auto; } } @media (min-width: 81.25em) { .content__main-column--interactive .element-immersive { max-width: 1260px; } } .content__main-column--interactive p, .content__main-column--interactive ul { max-width: 620px; } .content__main-column--interactive:before { position: absolute; top: 0; height: calc(100% + 15px); min-height: 100px; content: ""; } @media (min-width: 71.25em) { }.content__main-column--interactive:before { border-left: 1px solid #dcdcdc; z-index: -1; left: -10px; } @media (min-width: 81.25em) { .content__main-column--interactive:before { border-left: 1px solid #dcdcdc; left: -11px; } } .content__main-column--interactive .element-atom { margin-top: 0; margin-bottom: 0; padding-bottom: 12px; padding-top: 12px; } .content__main-column--interactive p + .element-atom { padding-top: 0; padding-bottom: 0; margin-top: 12px; margin-bottom: 12px; } .content__main-column--interactive .element-inline { max-width: 620px; } @media (min-width: 61.25em) { figure[data-spacefinder-role="inline"].element { max-width: 620px; } } :root { --dateline: #606060; --headerBorder: #dcdcdc; --captionText: #999; --captionBackground: hsla(0, 0%, 7%, 0.72); --feature: #c70000; --new-pillar-colour: var(--primary-pillar, var(--feature)); } :root:root { --subheading-text: var(--secondary-pillar); --pullquote-text: var(--secondary-pillar); --pullquote-icon: var(--secondary-pillar); --block-quote-text: var(--article-text); } :root:root blockquote { --block-quote-fill: var(--secondary-pillar); } @media (prefers-color-scheme: dark) { :root:root:not([data-color-scheme="light"]) { --subheading-text: var(--darkmode-pillar); --pullquote-text: var(--darkmode-pillar); --pullquote-icon: var(--darkmode-pillar); } :root:root:not([data-color-scheme="light"]) blockquote { --block-quote-fill: var(--darkmode-pillar); } } .content__main-column--interactive .element.element-atom, .element.element-atom { padding: 0; } #article-body > div .element-atom:first-of-type + p:first-of-type, #article-body > div .element-atom:first-of-type + .sign-in-gate + p:first-of-type, #article-body > div .element-atom:first-of-type + #sign-in-gate + p:first-of-type, #article-body > div hr:not(.last-horizontal-rule) + p, .content--interactive > div .element-atom:first-of-type + p:first-of-type, .content--interactive > div .element-atom:first-of-type + .sign-in-gate + p:first-of-type, .content--interactive > div .element-atom:first-of-type + #sign-in-gate + p:first-of-type, .content--interactive > div hr:not(.last-horizontal-rule) + p, #comment-body .element-atom:first-of-type + p:first-of-type, #comment-body .element-atom:first-of-type + .sign-in-gate + p:first-of-type, #comment-body .element-atom:first-of-type + #sign-in-gate + p:first-of-type, #comment-body hr:not(.last-horizontal-rule) + p, [data-gu-name="body"] .element-atom:first-of-type + p:first-of-type, [data-gu-name="body"] .element-atom:first-of-type + .sign-in-gate + p:first-of-type, [data-gu-name="body"] .element-atom:first-of-type + #sign-in-gate + p:first-of-type, [data-gu-name="body"] hr:not(.last-horizontal-rule) + p, #feature-body .element-atom:first-of-type + p:first-of-type, #feature-body .element-atom:first-of-type + .sign-in-gate + p:first-of-type, #feature-body .element-atom:first-of-type + #sign-in-gate + p:first-of-type, #feature-body hr:not(.last-horizontal-rule) + p { padding-top: 14px; } #article-body > div .element-atom:first-of-type + p:first-of-type:first-letter, #article-body > div .element-atom:first-of-type + .sign-in-gate + p:first-of-type:first-letter, #article-body > div .element-atom:first-of-type + #sign-in-gate + p:first-of-type:first-letter, #article-body > div hr:not(.last-horizontal-rule) + p:first-letter, .content--interactive > div .element-atom:first-of-type + p:first-of-type:first-letter, .content--interactive > div .element-atom:first-of-type + .sign-in-gate + p:first-of-type:first-letter, .content--interactive > div .element-atom:first-of-type + #sign-in-gate + p:first-of-type:first-letter, .content--interactive > div hr:not(.last-horizontal-rule) + p:first-letter, #comment-body .element-atom:first-of-type + p:first-of-type:first-letter, #comment-body .element-atom:first-of-type + .sign-in-gate + p:first-of-type:first-letter, #comment-body .element-atom:first-of-type + #sign-in-gate + p:first-of-type:first-letter, #comment-body hr:not(.last-horizontal-rule) + p:first-letter, [data-gu-name="body"] .element-atom:first-of-type + p:first-of-type:first-letter, [data-gu-name="body"] .element-atom:first-of-type + .sign-in-gate + p:first-of-type:first-letter, [data-gu-name="body"] .element-atom:first-of-type + #sign-in-gate + p:first-of-type:first-letter, [data-gu-name="body"] hr:not(.last-horizontal-rule) + p:first-letter, #feature-body .element-atom:first-of-type + p:first-of-type:first-letter,La prima lettera del primo paragrafo nel corpo dell'articolo, o dopo certi elementi come i gate di accesso o le regole orizzontali, è stilizzata come una grande capolettera. Utilizza specifici caratteri per i titoli, è in grassetto, maiuscola e colorata, con una dimensione di 111px e un'altezza di riga di 92px, flottata a sinistra con un margine destro. I paragrafi che seguono le regole orizzontali non hanno padding superiore. I virgolettati all'interno del corpo dell'articolo sono limitati a una larghezza massima di 620px. Le didascalie per gli elementi showcase sono posizionate staticamente e impostate a larghezza piena, fino a 620px. Gli elementi immersivi si estendono per tutta la larghezza del viewport, meno la barra di scorrimento. Su schermi più piccoli di 71.24em, la loro larghezza massima è di 978px, con il padding delle didascalie regolato a diversi breakpoint. Sotto i 46.24em, gli elementi immersivi sono allineati al bordo sinistro con margini negativi. Per schermi più grandi (sopra i 61.25em), il wrapper del furniture utilizza un layout CSS grid con colonne e righe definite. Stilizza il bordo del titolo, il posizionamento dei meta e i link dello standfirst—rimuovendo i bordi e le sottolineature predefiniti, mentre aggiunge sottolineature personalizzate che cambiano colore al passaggio del mouse.Per schermi con una larghezza minima di 61.25em, il primo paragrafo all'interno dell'elemento standfirst avrà un bordo superiore e nessun padding inferiore. Quando lo schermo è largo almeno 61.25em e anche almeno 71.25em, questo bordo superiore viene rimosso. Per schermi larghi almeno 61.25em, le figure all'interno del wrapper del furniture non hanno margine sinistro, e le figure inline con un ruolo specifico hanno una larghezza massima di 630px. Con una larghezza minima di 71.25em, il wrapper del furniture utilizza un layout grid con colonne e righe definite. Una linea decorativa appare prima dell'elemento meta, e i paragrafi dello standfirst perdono il loro bordo superiore, sostituito da una linea verticale sul lato sinistro. Quando il viewport raggiunge gli 81.25em, il template della grid regola le sue colonne e righe, la linea decorativa prima dell'elemento meta si allarga, e la linea verticale nello standfirst si sposta leggermente. I titoli hanno una larghezza massima e una dimensione del font che cambiano al breakpoint di 71.25em. Alcune linee guida sono nascoste su schermi più grandi (61.25em+), e i bordi degli elementi social/meta corrispondono al colore del bordo dell'intestazione. Alcuni elementi contenitore dei meta sono nascosti. La sezione standfirst ha un margine sinistro e un padding, con i suoi paragrafi stilizzati per peso, dimensione e padding inferiore. L'area media principale è posizionata all'interno della grid e ha margini superiore e inferiore specifici.Il codice CSS imposta stili per vari elementi. Rende certi div a larghezza piena senza margini laterali. Per schermi più grandi, rimuove i margini inferiori dagli elementi media. Su schermi più piccoli, regola le larghezze e i margini dei media, inclusi margini sinistri negativi a specifici breakpoint. Le didascalie delle figure sono posizionate in modo assoluto in basso con padding, sfondo e colori del testo personalizzati. Alcuni span delle didascalie sono nascosti o stilizzati diversamente, con uno nascosto e un altro che occupa la maggior parte della larghezza. Un pulsante per la didascalia è posizionato in basso a destra con un design circolare. Per le colonne dei contenuti interattivi, vengono apportate regolazioni al posizionamento e le intestazioni h2 sono limitate in larghezza. Su dispositivi iOS e Android, vengono impostate variabili di colore personalizzate per la modalità scura e tipi di articoli specifici. La prima lettera del primo paragrafo negli articoli è stilizzata con un colore del pilastro secondario, e le intestazioni degli articoli sono mirate per ulteriori stilizzazioni.Per i dispositivi Android, imposta l'altezza dell'intestazione dell'articolo negli articoli di commento a zero. Per entrambi i dispositivi iOS e Android, applica il padding al wrapper del furniture negli articoli di feature