Professeur contre chatbot : mon voyage dans la salle de classe à l'ère de l'IA

Professeur contre chatbot : mon voyage dans la salle de classe à l'ère de l'IA

Ce code CSS définit une famille de polices personnalisée nommée "Guardian Headline Full" avec plusieurs poids et styles de police. Il inclut les poids light, regular, medium et semibold, chacun avec des variantes normale et italique. Les polices sont chargées depuis les serveurs du Guardian aux formats WOFF2, WOFF et TrueType pour garantir la compatibilité entre les différents navigateurs.

@font-face {
font-family: Guardian Headline Full;
src: url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Bold.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Bold.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Bold.ttf) format("truetype");
font-weight: 700;
font-style: normal;
}

@font-face {
font-family: Guardian Headline Full;
src: url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BoldItalic.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BoldItalic.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BoldItalic.ttf) format("truetype");
font-weight: 700;
font-style: italic;
}

@font-face {
font-family: Guardian Headline Full;
src: url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Black.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Black.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Black.ttf) format("truetype");
font-weight: 900;
font-style: normal;
}

@font-face {
font-family: Guardian Headline Full;
src: url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BlackItalic.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BlackItalic.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BlackItalic.ttf) format("truetype");
font-weight: 900;
font-style: italic;
}

@font-face {
font-family: Guardian Titlepiece;
src: url(https://assets.guim.co.uk/static/frontend/fonts/guardian-titlepiece/noalts-not-hinted/GTGuardianTitlepiece-Bold.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-titlepiece/noalts-not-hinted/GTGuardianTitlepiece-Bold.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-titlepiece/noalts-not-hinted/GTGuardianTitlepiece-Bold.ttf) format("truetype");
font-weight: 700;
font-style: normal;
}

@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 première lettre du premier paragraphe dans le corps de l'article utilise une police de titre spécifique, est en gras, grande, flottante à gauche, en majuscules et colorée. Les paragraphes suivant une règle horizontale n'ont pas de marge supérieure. Les citations sont limitées à 620 pixels de large.

Les légendes pour les éléments showcase sont positionnées normalement, avec une largeur maximale de 620 pixels. Les éléments immersifs s'étendent sur toute la largeur de la fenêtre d'affichage, ajustant leur largeur maximale et le remplissage des légendes sur différentes tailles d'écran. Sur les très petits écrans, ils s'alignent sur le bord gauche.

Pour les écrans plus larges, l'en-tête de l'article utilise une mise en page en grille. Le titre a une bordure supérieure, les informations méta sont positionnées avec un petit remplissage supérieur, et les liens du chapô sont soulignés avec une couleur personnalisée au lieu d'avoir une bordure inférieure.Pour les écrans d'une largeur minimale de 61,25 em, le premier paragraphe à l'intérieur de l'élément chapô aura une bordure supérieure et aucun remplissage inférieur. Si l'écran a également une largeur d'au moins 71,25 em, cette bordure supérieure est supprimée.

Sur les écrans d'au moins 61,25 em de large, les figures à l'intérieur du wrapper mobilier n'ont pas de marge gauche, et les figures en ligne avec un rôle spécifique ont une largeur maximale de 630px.

Pour les écrans d'au moins 71,25 em de large, le wrapper mobilier utilise une mise en page en grille avec des colonnes et des lignes définies. Une ligne décorative apparaît avant l'élément méta, et les paragraphes du chapô perdent leur bordure supérieure. Une ligne verticale est ajoutée avant le contenu du chapô.

Sur les écrans d'au moins 81,25 em de large, la mise en page en grille ajuste ses colonnes et ses lignes. La ligne décorative avant l'élément méta devient plus large, et la ligne verticale avant le chapô se décale légèrement.

Les titres ont une largeur et une taille de police maximales, qui changent sur les écrans plus grands. Certaines lignes de séparation sont masquées sur les écrans plus larges, et les éléments sociaux et de commentaires utilisent la variable de couleur de bordure. Certains éléments de conteneur méta ne sont pas affichés.

La section chapô a une marge gauche négative et un positionnement relatif, avec un remplissage ajusté sur les écrans moyens. Ses paragraphes ont des propriétés de police spécifiques.

La zone média principale est positionnée de manière relative, n'a pas de marge supérieure, une petite marge inférieure, et est placée dans la zone de grille 'portrait'.Le code CSS définit des styles pour divers éléments. Les éléments média à l'intérieur de la classe furniture-wrapper sont définis sur une largeur totale sans marges horizontales. Sur les écrans plus larges (plus de 61,25 em), ces sections média n'ont pas de marge inférieure. Sur les écrans plus petits (moins de 46,24 em), elles s'étendent sur toute la largeur de la fenêtre d'affichage, en tenant compte des barres de défilement, avec une marge gauche de -10px. Pour les écrans moyens-petits (entre 30 em et 46,24 em), la marge gauche est de -20px.

Les légendes des figures sont positionnées de manière absolue en bas avec un remplissage, un arrière-plan et des couleurs de texte spécifiques. Le premier span à l'intérieur d'une légende est masqué, tandis que le second est affiché et limité à 90 % de la largeur. Sur les écrans plus larges que 30 em, le remplissage des légendes augmente. Les légendes avec la classe "hidden" sont invisibles.

Un bouton de légende est positionné en bas à droite, stylisé avec un arrière-plan circulaire et une icône mise à l'échelle. Sur les écrans de plus de 30 em, il se déplace légèrement vers la droite.

Pour les colonnes de contenu interactif sur les très grands écrans (plus de 71,25 em), un pseudo-élément est ajusté en position et en hauteur. Les titres à l'intérieur de ces colonnes sont limités à 620px de largeur.

Des variables de couleur sont définies pour les arrière-plans sombres et les couleurs de fonctionnalité, avec des ajustements pour les appareils iOS et Android en mode sombre. Sur iOS et Android, la première lettre du premier paragraphe après des éléments spécifiques dans les