이 CSS 코드는 "Guardian Headline Full"이라는 사용자 정의 글꼴을 정의하며, 여러 스타일과 두께를 포함합니다. 라이트, 레귤러, 미디움, 세미볼드 버전이 각각 일반체와 이탤릭체 스타일로 제공됩니다. 글꼴 파일은 WOFF2, WOFF, TrueType 세 가지 형식으로 제공되며 Guardian 서버에 호스팅되어 있습니다.
@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,
기사 본문의 첫 번째 단락이나 로그인 게이트 또는 수평선과 같은 특정 요소 뒤에 오는 첫 번째 단락의 첫 글자는 큰 드롭 캡으로 스타일링됩니다. 특정 헤드라인 글꼴을 사용하며, 볼드체, 대문자, 색상이 지정되고, 크기는 111px, 줄 높이는 92px로 설정되며, 오른쪽 여백과 함께 왼쪽으로 플로팅됩니다.
수평선 뒤에 오는 단락은 상단 패딩이 없습니다. 기사 본문 내 풀쿼트는 최대 너비 620px로 제한됩니다.
쇼케이스 요소의 캡션은 정적으로 위치 지정되며 최대 620px까지 전체 너비로 설정됩니다.
몰입형 요소는 스크롤바를 제외한 전체 뷰포트 너비를 차지합니다. 71.24em보다 작은 화면에서는 최대 너비가 978px이며, 캡션 패딩은 다른 중단점에서 조정됩니다. 46.24em 미만에서는 몰입형 요소가 음수 여백과 함께 왼쪽 가장자리에 정렬됩니다.
더 큰 화면(61.25em 이상)의 경우, 가구 래퍼는 정의된 열과 행이 있는 CSS 그리드 레이아웃을 사용합니다. 헤드라인 테두리, 메타 위치 지정, 스탠드퍼스트 링크를 스타일링합니다. 기본 테두리와 밑줄을 제거하고, 호버 시 색상이 변경되는 사용자 정의 밑줄을 추가합니다.최소 너비 61.25em 이상의 화면에서, 스탠드퍼스트 요소 내 첫 번째 단락은 상단 테두리를 가지며 하단 패딩이 없습니다. 화면이 최소 61.25em이면서 동시에 최소 71.25em 너비일 때, 이 상단 테두리는 제거됩니다.
최소 61.25em 너비의 화면에서, 가구 래퍼 내의 그림은 왼쪽 여백이 없으며, 특정 역할을 가진 인라인 그림은 최대 너비 630px을 가집니다.
최소 너비 71.25em에서, 가구 래퍼는 정의된 열과 행이 있는 그리드 레이아웃을 사용합니다. 메타 요소 앞에 장식선이 나타나며, 스탠드퍼스트 단락은 상단 테두리를 잃고 왼쪽 측면의 수직선으로 대체됩니다.
뷰포트가 81.25em에 도달하면, 그리드 템플릿이 열과 행을 조정하고, 메타 요소 앞의 장식선이 넓어지며, 스탠드퍼스트의 수직선이 약간 이동합니다.
헤드라인은 최대 너비와 글꼴 크기를 가지며, 이는 71.25em 중단점에서 변경됩니다. 특정 키라인은 더 큰 화면(61.25em 이상)에서 숨겨지며, 소셜/메타 요소 테두리는 헤더 테두리 색상과 일치합니다. 일부 메타 컨테이너 요소는 숨겨집니다.
스탠드퍼스트 섹션은 왼쪽 여백과 패딩을 가지며, 그 단락들은 두께, 크기, 하단 패딩에 대해 스타일링됩니다. 주요 미디어 영역은 그리드 내에 위치 지정되며 특정 상단 및 하단 여백을 가집니다.CSS 코드는 다양한 요소에 대한 스타일을 설정합니다. 특정 div를 측면 여백 없이 전체 너비로 만듭니다. 더 큰 화면에서는 미디어 요소의 하단 여백을 제거합니다. 더 작은 화면에서는 미디어 너비와 여백을 조정하며, 특정 중단점에서 음수 왼쪽 여백을 포함합니다.
그림 캡션은 사용자 정의 패딩, 배경 및 텍스트 색상과 함께 하단에 절대적으로 위치 지정됩니다. 일부 캡션 스팬은 숨겨지거나 다르게 스타일링되며, 하나는 숨겨지고 다른 하나는 너비의 대부분을 차지합니다. 캡션 버튼은 원형 디자인으로 하단 오른쪽에 위치 지정됩니다.
인터랙티브 콘텐츠 열의 경우 위치 지정이 조정되며 h2 제목은 너비가 제한됩니다. iOS 및 Android 기기에서 다크 모드 및 특정 기사 유형에 대한 사용자 정의 색상 변수가 설정됩니다. 기사의 첫 번째 단락 첫 글