Från att ta hand om vilande lejon till att behandla spottande ormar: ett år med veterinärerna på London Zoo.
Denna CSS-kod sätter upp stilar för ett mjukrullningsbibliotek som heter Lenis. Den säkerställer att sidhöjden anpassas automatiskt och kontrollerar overflow-beteende när rullning stoppas. Den definierar också anpassade teckensnitt för teckensnittsfamiljen "Guardian Headline Full", inklusive olika vikter och stilar (som light, regular, medium och semibold, var och en med normala och kursiva versioner), och laddar dem från specifika webbadresser i olika filformat.
Teckensnittsfamiljen Guardian Headline Full inkluderar flera stilar, var och en tillgänglig i flera format. Den vanliga stilen har en font-weight på 400 och en normal font-style, med filer i WOFF-, WOFF2- och TrueType-format. Den kursiva versionen har också en vikt på 400 men med en kursiv stil. Medelvikten (500) finns i både normal och kursiv stil. På samma sätt finns semibold (600) och bold (700) vikter tillgängliga i normala och kursiva varianter. Svarta vikten tillhandahålls i WOFF2-format.
#article-body>div .content--interactive-grid,
.content--interactive>div .content--interactive-grid,
#comment-body .content--interactive-grid,
[data-gu-name=body] .content--interactive-grid,
#feature-body .content--interactive-grid {
grid-column-gap: 0px;
grid-template-columns: 100%;
grid-template-areas: "media" "title" "headline" "standfirst" "lines" "meta" "body";
}
@media (min-width: 30em) {
#article-body>div .content--interactive-grid figure.element--immersive figcaption,
.content--interactive>div .content--interactive-grid figure.element--immersive figcaption,
#comment-body .content--interactive-grid figure.element--immersive figcaption,
[data-gu-name=body] .content--interactive-grid figure.element--immersive figcaption,
#feature-body .content--interactive-grid figure.element--immersive figcaption {
padding: 0 20px;
max-width: 620px;
}
}
@media (min-width: 46.25em) {
#article-body>div .content--interactive-grid,
.content--interactive>div .content--interactive-grid,
#comment-body .content--interactive-grid,
[data-gu-name=body] .content--interactive-grid,
#feature-body .content--interactive-grid {
grid-template-columns: 100%;
grid-column-gap: 10px;
grid-template-areas: "title" "headline" "standfirst" "media" "lines" "meta" "body";
}
#article-body>div .content--interactive-grid #maincontent,
.content--interactive>div .content--interactive-grid #maincontent,
#comment-body .content--interactive-grid #maincontent,
[data-gu-name=body] .content--interactive-grid #maincontent,
#feature-body .content--interactive-grid #maincontent {
padding-right: 80px;
}
}
@media (min-width: 61.25em) {
#article-body>div .content--interactive-grid,
.content--interactive>div .content--interactive-grid,
#comment-body .content--interactive-grid,
[data-gu-name=body] .content--interactive-grid,
#feature-body .content--interactive-grid {
grid-template-columns: 620px 300px;
grid-template-areas: "title right-column" "headline right-column" "standfirst right-column" "media right-column" "lines right-column" "meta right-column" "body right-column" ". right-column";
}
#article-body>div .content--interactive-grid #maincontent,
.content--interactive>div .content--interactive-grid #maincontent,
#comment-body .content--interactive-grid #maincontent,
[data-gu-name=body] .content--interactive-grid #maincontent,
#feature-body .content--interactive-grid #maincontent {
padding-right: unset;
}
}
@media (min-width: 71.25em) {
#article-body>div .content--interactive-grid,
.content--interactive>div .content--interactive-grid,
#comment-body .content--interactive-grid,
[data-gu-name=body] .content--interactive-grid,
#feature-body .content--interactive-grid {
grid-template-columns: 140px 1px 620px 300px;
grid-template-areas: "title border headline right-column" ". border standfirst right-column" ". border media right-column" ". border body right-column" ". border . right-column";
}
#article-body>div .content--interactive-grid .content__standfirst,
.content--interactive>div .content--interactive-grid .content__standfirst,
#comment-body .content--interactive-grid .content__standfirst,
[data-gu-name=body] .content--interactive-grid .content__standfirst,
#feature-body .content--interactive-grid .content__standfirst {
/ Regeln fortsätter här /
}
}
CSS-koden sätter specifika stilar för olika element. För interaktivt rutnätsinnehåll tar den bort bottenutfyllnad från standfirst-sektionen och justerar bildtextutfyllnad för immersiva figurer. Den positionerar också linjer och metadata inom ett rutnätslayout, och sätter deras höjd och marginaler.
På större skärmar använder rutnätet definierade kolumnbredder. För mobila enheter modifierar den typografin i artikelhuvuden, gör sektionsnamn versaler och justerar författarnamnstilar. Den säkerställer också att bilder visas korrekt och hanterar mellanrum runt inbäddade element.
En rullningsverktygstips är stilad med en gradientbakgrund och positionerad längst ner i visningsporten, medan fasta bildtexter ges en fast höjd och absolut positionering.
Den fasta bildtextfältet är positionerat längst ner till vänster på skärmen med en mörk bakgrund. Den använder en flexibel layout för att placera ut sitt innehåll och inkluderar utfyllnad. På större skärmar lägger den till en vänsterkantlinje och justerar sin vänstermarginal.
Inuti innehåller en bildtextomslutning bildtexterna. Varje bildtext använder en flexdisplay med små mellanrum mellan objekt. Ikoner inom bildtexterna har fasta dimensioner och en specifik fyllningsfärg. Bildtexttext använder ett specifikt teckensnitt, trunkeras med en ellips vid behov och matchar artikelns textfärg.
En växlingsknapp för bildtexterna är transparent och kantlös, positionerad längst ner i fältet. Dess ikon roterar och skalas smidigt vid hovring. När den är expanderad justerar bildtextfältet sin höjd, visar bildtexter normalt utan trunkering och ändrar växlingsikonens rotation.
För iOS- och Android-enheter tas bildtextstyckemarginaler bort, och specifika spanelement visas eller döljs. När den expanderas på dessa enheter flyter den första bildtextstycket till vänster, och den andra visas som ett block. På iOS justeras också det fasta fältets bottenposition.
CSS-anpassade egenskaper (CSS-variabler) definierar ett mörkt färgschema för olika artikeldelar som bakgrund, text, länkar och accentfärger. Dessa variabler sätts för rotelement och artikeldelar, med vissa justeringar för hovringstillstånd.
En mediefråga tillämpar ett mörkt färgschema, och sätter specifika färger för element som blockcitat och bakgrunder om inte ett ljust schema uttryckligen väljs.
Artikelhuvudet använder en rutnätslayout för att arrangera områden som media, titel och brödtext. En horisontell klass lägger till toppmarginal och bottenutfyllnad. Huvudinnehållet har negativa sidomarginaler på mindre skärmar, vilka tas bort på större. Specifika element inom brödtexten, såsom stycken