캡션 버튼은 높이와 너비가 각각 40픽셀인 원형 요소로 스타일링되어 있으며, 화면 오른쪽 하단에 10픽셀의 여백을 두고 배치됩니다. 반투명한 어두운 배경과 높은 z-index를 가지고 있어 다른 콘텐츠 위에 항상 표시됩니다. 다양한 화면 크기에 대해 스크롤바가 있는 경우를 고려하여 콘텐츠 너비에 따라 중앙에 위치하도록 오른쪽 위치가 조정됩니다.
또한 Guardian Headline Full 글꼴 패밀리는 여러 가지 두께와 스타일(라이트, 일반, 미디움, 세미볼드, 각각 일반체와 이탤릭체)로 정의되어 있으며, 광범위한 브라우저 호환성을 위해 WOFF2, WOFF, TTF 형식으로 Guardian의 자산에서 제공됩니다.
```css
@font-face {
font-family: 'Guardian Headline Full';
src: url('https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Semibold.ttf') format('truetype');
font-weight: 600;
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-SemiboldItalic.woff2') format('woff2'),
url('https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-SemiboldItalic.woff') format('woff'),
url('https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-SemiboldItalic.ttf') format('truetype');
font-weight: 600;
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-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://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.woff2') format('woff2'),
url('https://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.woff') format('woff'),
url('https://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.ttf') format('truetype');
font-weight: 700;
font-style: normal;
}
.Scrolly-header.svelte-ok2wri {
grid-area: header;
height: 100vh;
width: 100vw;
overflow: clip;
position: relative;
background-color: #121212;
margin-bottom: 20px;
margin-left: -10px;
padding: 0;
}
@media (min-width: 30em) {
.Scrolly-header.svelte-ok2wri {
margin-left: -20px;
}
}
@media (min-width: 46.25em) {
.Scrolly-header.svelte-ok2wri {
margin-left: calc((100vw - 740px - var(--scrollbar-width, 0px)) / 2 * -1 - 21px);
padding: 0 calc((100vw - 740px - var(--scrollbar-width, 0px)) / 2);
}
}
@media (min-width: 61.25em) {
.Scrolly-header.svelte-ok2wri {
margin-left: calc((100vw - 980px - var(--scrollbar-width, 0px)) / 2 * -1 - 21px);
}
}
@media (min-width: 71.25em) {
.Scrolly-header.svelte-ok2wri {
margin-left: calc((100vw - 1140px - var(--scrollbar-width, 0px)) / 2 * -1 - 21px);
}
}
@media (min-width: 81.25em) {
.Scrolly-header.svelte-ok2wri {
margin-left: calc((100vw - 1300px - var(--scrollbar-width, 0px)) / 2 * -1 - 21px);
}
}
```
Scrolly-header 요소는 뷰포트 너비에 따라 조정되는 패딩을 가지며, 0에서 시작하여 콘텐츠를 980px, 1140px, 1300px의 최대 너비 내에서 중앙에 배치하도록 증가합니다. 스크롤바 너비도 고려합니다.
중간 크기 이상의 화면에서는 헤더 높이가 뷰포트 높이의 90%로 설정되고, 화면 크기에 따라 달라지는 콘텐츠 영역 가장자리에 맞춰 배치된 왼쪽과 오른쪽에 수직선이 추가됩니다.
이미지 래퍼는 처음에는 전체 뷰포트를 덮도록 고정되어 있으며, 큰 화면에서는 고정 너비(740px, 980px, 1140px, 1300px)로 축소됩니다. 움직임을 선호하지 않는 사용자를 위해 투명도가 낮아집니다.
래퍼 내 이미지는 기본적으로 약간 확대되어 배경을 중앙에 배치하며, 움직임 감소를 선호하는 경우 확대되지 않고 너비가 반응적으로 조정됩니다.
텍스트 컨테이너는 절대 위치로 지정되며, 전체 뷰포트 높이를 차지하고 콘텐츠를 중앙에 배치하며 헤더 레이아웃과 일치하는 반응형 패딩을 가집니다. 중간 크기 이상의 화면에서는 뷰포트 높이의 90%로 조정됩니다.
71.25em보다 넓은 화면의 경우, Scrolly-header 내 텍스트 컨테이너는 패딩을 조정하여 콘텐츠를 스크롤바를 고려하여 최대 800px 너비로 중앙에 배치합니다.
헤더의 텍스트 래퍼는 투명하게 시작되며 전체 뷰포트 너비를 차지하고 콘텐츠를 중앙에 배치하며 하단 패딩이 80px입니다. 처음에는 숨겨져 있고 30% 아래로 이동되었지만, 0.5초 동안 서서히 나타나면서 위로 이동합니다. 움직임 감소를 선호하는 경우 애니메이션 없이 즉시 나타납니다.
중간 크기 화면(46.25em 이상)에서는 래퍼 너비가 740px이 되고, 큰 화면(61.25em 이상)에서는 640px로 좁아집니다.
헤드라인과 스탠드퍼스트 텍스트는 특정 글꼴 패밀리를 사용하며, 가독성을 위해 흰색에 그림자 효과가 있고, 균형 잡힌 텍스트 줄바꿈을 가집니다. 대비를 위해 흐림 효과가 있는 어두운 배경 효과도 포함됩니다. 헤드라인은 더 크고 굵으며, 스탠드퍼스트는 더 가볍고 상단 여백을 두고 아래에 나타납니다.
중간 화면 크기에서는 텍스트 크기가 증가하고 레이아웃을 개선하기 위해 여백이 조정됩니다. 큰 화면에서는 여백이 약간 줄어듭니다.
애니메이션이 적용되면 이미지 래퍼는 더 불투명해지고, 텍스트 래퍼는 완전히 보이게 되며 중앙에 배치됩니다. iOS와 Android에서는 헤더가 여백 없이 왼쪽에 정렬됩니다.
Guardian Headline Full의 글꼴 면은 라이트, 라이트 이탤릭, 일반 두께로 정의되며, woff2, woff, ttf 형식의 특정 URL에서 제공됩니다.
Guardian 웹사이트는 헤드라인에 "Guardian Headline Full"이라는 사용자 정의 글꼴을 사용합니다. 이 글꼴은 일반, 이탤릭, 미디움, 세미볼드, 볼드, 블랙 등 다양한 스타일과 두께를 가지며, 각각 WOFF2, WOFF, TrueType과 같은 여러 파일 형식으로 다양한 브라우저 호환성을 위해 제공됩니다.
```css
@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://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.woff2') format('woff2'),
url('https://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.woff') format('woff'),
url('https://interactive.guim.co.uk/fonts/garnett/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));
position: relative;
left: 50%;
right: 50%;
margin-left: calc(-50vw + var(--half-scrollbar-width)) !important;
margin-right: calc(-50vw + var(--half-scrollbar-width)) !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 (scripting: enabled) {
:root .content--interactive,
:root #article-header > div,
:root #feature-header > div,
:root #article-header > h1,
:root #feature-header > h1 {
opacity: 0;
}
:root.interactive-loaded .content--interactive,
:root.interactive-loaded #article-header > div,
:root.interactive-loaded #feature-header > div,
:root.interactive-loaded #article-header > h1,
:root.interactive-loaded #feature-header > h1 {
opacity: 1;
transition: opacity 0.2s ease;
}
}
nav + section {
display: none;
}
nav + aside {
display: none;
}
aside + section {
display: none;
}
header {
z-index: 3;
}
#maincontent {
margin-top: 0;
}
[data-gu-name=lines] {
display: none;
}
@media (min-width: 46.25em) {
[data-gu-name=lines] {
display: block;
}
}
.content--interactive-grid {
position: relative;
grid-template-areas: "title" "header" "media" "media" "lines" "meta" "body";
grid-template-rows: [title