좌파가 인터넷을 되찾고 부활할 수 있는 방법 | 로버트 토핀카

좌파가 인터넷을 되찾고 부활할 수 있는 방법 | 로버트 토핀카
이 CSS 코드는 "Guardian Headline Full"이라는 사용자 정의 글꼴 패밀리를 정의하며, 라이트, 레귤러, 미디엄, 세미볼드 버전을 포함하고 각각 일반체와 이탤릭체 스타일을 제공합니다. 글꼴 파일은 온라인에 호스팅되어 WOFF2, WOFF, TrueType 세 가지 형식으로 제공되며, 다양한 브라우저 간 호환성을 보장합니다. @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,기사 본문의 첫 번째 단락 첫 글자는 특정 헤드라인 글꼴을 사용하며, 볼드체, 대문자, 큰 크기와 드롭 캡 스타일로 설정됩니다. 사용자 정의 속성을 사용하여 색상이 지정됩니다. 수평선 바로 뒤에 오는 단락은 상단 패딩이 없습니다. 기사 본문 내 풀쿼트는 최대 너비가 620픽셀입니다. 쇼케이스 요소의 캡션은 정적으로 위치하며, 최대 620px까지 전체 너비를 차지합니다. 몰입형 요소는 스크롤바를 고려하여 조정되며 전체 뷰포트 너비를 차지합니다. 큰 화면에서는 최대 너비로 제한되고, 작은 화면에서는 조정된 마진으로 가장자리까지 확장됩니다. 몰입형 요소의 캡션은 반응형 수평 패딩을 가집니다. 넓은 화면에서는 기사 헤더가 CSS 그리드 레이아웃을 사용합니다. 헤드라인에는 상단 테두리가 있으며, 메타 정보는 상대적으로 위치합니다. 스탠드퍼스트 내 링크는 사용자 정의 색상으로 밑줄이 그어지고, 호버 시 색상이 변경됩니다. 첫 번째 단락에는 상단 테두리가 있습니다.제공된 텍스트는 웹페이지 레이아웃, 특히 "furniture-wrapper"라는 구성 요소나 래퍼의 스타일을 지정하는 CSS 코드로 보입니다. 이 코드는 그리드 레이아웃, 테두리, 글꼴 및 요소의 가시성 조정을 포함하여 다양한 화면 크기에 대한 스타일을 정의합니다. 또한 헤드라인, 메타 정보, 스탠드퍼스트 텍스트 및 미디어 요소의 외관을 제어하여 다양한 기기에서의 표시를 관리합니다.[data-gu-name=media] div div { width: 100%; margin-inline: 0; } @media (min-width: 61.25em) { .furniture-wrapper #main-media, .furniture-wrapper [data-gu-name=media] { margin-bottom: 0; } } @media (max-width: 46.24em) { .furniture-wrapper #main-media, .furniture-wrapper [data-gu-name=media] { width: calc(100vw - var(--scrollbar-width, 0px)); margin-left: -10px; } } @media (max-width: 46.24em) and (min-width: 30em) { .furniture-wrapper #main-media, .furniture-wrapper [data-gu-name=media] { margin-left: -20px; } } .furniture-wrapper figcaption { position: absolute; bottom: 0; padding: 4px 10px 12px; background-color: var(--captionBackground); color: var(--captionText); max-width: unset; width: 100%; margin-bottom: 0; min-height: 46px; } .furniture-wrapper figcaption span { color: var(--headerBorder); } .furniture-wrapper figcaption span svg { fill: var(--headerBorder); } .furniture-wrapper figcaption span:nth-of-type(1) { display: none; } .furniture-wrapper figcaption span:nth-of-type(2) { display: block; max-width: 90%; } @media (min-width: 30em) { .furniture-wrapper figcaption { padding: 4px 20px 12px; } } .furniture-wrapper figcaption.hidden { opacity: 0; } .furniture-wrapper #caption-button { display: block; position: absolute; bottom: 10px; right: 8px; z-index: 30; background-color: var(--captionBackground); border: none; border-radius: 50%; padding: 6px 5px 5px; } .furniture-wrapper #caption-button svg { transform: scale(.85); } @media (min-width: 30em) { .furniture-wrapper #caption-button { right: 10px; } } @media (min-width: 71.25em) { .content__main-column--interactive:before { top: -12px !important; height: calc(100% + 24px) !important; } } .content__main-column--interactive h2 { max-width: 620px; } :root:has(.ios, .android) { --darkBackground: #1a1a1a; --feature: #c70000; --darkmodeFeature: #ff