《卫报》标题完整字体家族包含多种样式,每种样式均提供多种文件格式。细体版本包含常规与斜体样式,字重为300。常规版本字重为400,同样提供常规与斜体样式。中等版本字重为500,包含常规与斜体样式。半粗体版本字重为600,也提供常规与斜体样式。所有字体文件均托管于《卫报》资源服务器。
```css
@font-face {
font-family: Guardian Headline Full;
src: url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-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/full-not-hinted/GHGuardianHeadline-BoldItalic.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BoldItalic.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-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/full-not-hinted/GHGuardianHeadline-Black.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Black.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-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/full-not-hinted/GHGuardianHeadline-BlackItalic.woff2) format("woff2"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BlackItalic.woff) format("woff"),
url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-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 (scripting: enabled) {
:root article.content--interactive > div,
:root .article {
opacity: 0;
}
:root.interactive-loaded article.content--interactive > div,
:root.interactive-loaded .article {
opacity: 1;
transition: opacity 0.25s ease 0.25s;
}
}
@media (scripting: enabled) and (prefers-reduced-motion) {
:root.interactive-loaded article.content--interactive > div,
:root.interactive-loaded .article {
transition: opacity 0.25s ease 0.1s;
}
}
@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;
}
}
```
交互内容栏与列表的最大宽度为620像素。在大屏幕上(宽度从1140像素起),交互栏左侧会添加一条垂直线,其位置在更大屏幕上会微调。内嵌元素的间距和内边距经过设置以确保布局合理,特定元素后的首段会获得额外的上内边距和装饰性首字下沉效果。
文章正文的首字母采用大号、粗体、大写的Georgia字体,颜色由特定变量定义,并设置为左浮动。水平线后接的段落无上内边距。引文的最大宽度限制为620像素。
对于展示型元素,说明文字采用静态定位,最大宽度为620像素。沉浸式元素横跨整个视口宽度(根据滚动条调整),在大屏幕上最大宽度为978像素。其说明文字的水平内边距随屏幕尺寸变化。在中等屏幕上,最大宽度为738像素;在较小屏幕上,这些元素会左对齐并调整边距。
在大屏幕上,家具包装器采用网格布局,定义了列与行。标题的首个子元素有上边框。元信息区块有较小的上内边距且无右边距。在导语中,列表项尺寸更大,链接带下划线且无下边框,悬停时下划线颜色会变化。导语的首段有上边框且无下内边距,但在更大屏幕上该边框会被移除。
```css
.furniture-wrapper figure {
margin: 0 0 0 -10px;
}
.furniture-wrapper figure[data-spacefinder-role="inline"].element {
max-width: 630px;
}
@media (min-width: 71.25em) {
.furniture-wrapper {
grid-template-columns: [title-start headline-start meta-start] repeat(2, 1fr) [meta-end standfirst-start] repeat(5, 1fr) [title-end headline-end standfirst-end portrait-start] repeat(7, 1fr) [portrait-end];
grid-template-rows: [title-start portrait-start] 80px [title-end headline-start] auto [headline-end standfirst-start meta-start] auto [standfirst-end meta-end portrait-end];
}
.furniture-wrapper #meta:before,
.furniture-wrapper [data-gu-name="meta"]:before {
content: "";
width: 540px;
position: absolute;
top: 0;
background-color: var(--headerBorder);
height: 1px;
}
.furniture-wrapper .standfirst p,
.furniture-wrapper #standfirst p,
.furniture-wrapper [data-gu-name="standfirst"] p {
border-top: unset;
}
.furniture-wrapper .standfirst:before,
.furniture-wrapper #standfirst:before,
.furniture-wrapper [data-gu-name="standfirst"]:before {
content: "";
width: 1px;
background-color: var(--headerBorder);
height: 100%;
position: absolute;
top: 0;
left: 0.5px;
}
}
@media (min-width: 81.25em) {
.furniture-wrapper {
grid-template-columns: [title-start headline-start meta-start] repeat(3, 1fr) [meta-end standfirst-start] repeat(5, 1fr) [title-end headline-end standfirst-end portrait-start] repeat(8, 1fr) [portrait-end];
grid-template-rows: [title-start portrait-start] 0.25fr [title-end headline-start] 1fr [headline-end standfirst-start meta-start] 0.75fr [standfirst-end meta-end portrait-end];
}
.furniture-wrapper #meta:before,
.furniture-wrapper [data-gu-name="meta"]:before {
width: 620px;
}
.furniture-wrapper .standfirst:before,
.furniture-wrapper #standfirst:before,
.furniture-wrapper [data-gu-name="standfirst"]:before {
left: -0.5px;
}
}
.furniture-wrapper .article-header .content__labels > div,
.furniture-wrapper [data-gu-name="title"] .content__labels > div {
padding-top: 2px;
}
.furniture-wrapper #headline h1,
.furniture-wrapper [data-gu-name="headline"] h1,
.furniture-wrapper .headline h1 {
font-weight: 600;
max-width: 620px;
font-size: 32px;
}
@media (min-width: 71.25em) {
.furniture-wrapper #headline h1,
.furniture-wrapper [data-gu-name="headline"] h1,
.furniture-wrapper .headline h1 {
max-width: 540px;
font-size: 50px;
}
}
@media (min-width: 46.25em) {
.furniture-wrapper .keyline-4,
.furniture-wrapper [data-gu-name="lines"] {
margin-right: 0;
}
}
@media (min-width: 61.25em) {
.furniture-wrapper .keyline-4,
.furniture-wrapper [data-gu-name="lines"] {
display: none;
}
}
.furniture-wrapper .keyline-4 svg,
.furniture-wrapper [data-gu-name="lines"] svg {
stroke: var(--headerBorder);
}
@media (min-width: 46.25em) {
.furniture-wrapper #meta,
.furniture-wrapper [data-gu-name="meta"] {
margin-right: 0;
}
}
.furniture-wrapper #meta .meta__social,
.furniture-wrapper #meta .meta__social ul li a span,
.furniture-wrapper #meta .meta__comment,
.furniture-wrapper [data-gu-name="meta"] .meta__social,
.furniture-wrapper [data-gu-name="meta"] .meta__social ul li a span,
.furniture-wrapper [data-gu-name="meta"] .meta__comment {
border-color: var(--headerBorder);
}
.furniture-wrapper #meta .content__meta-container_dcr > div > gu-island,
.furniture-wrapper [data-gu-name="meta"] .content__meta-container_dcr > div > gu-island {
display: none;
}
.furniture-wrapper .standfirst,
.furniture-wrapper #standfirst,
.furniture-wrapper [data-gu-name="standfirst"] {
margin-left: -10px;
padding-left: 10px;
position: relative;
}
@media (min-width: 46.25em) {
.furniture-wrapper .standfirst,
.furniture-wrapper #standfirst,
.furniture-wrapper [data-gu-name="standfirst"] {
padding-top: 2px;
}
}
.furniture-wrapper .standfirst p,
.furniture-wrapper #standfirst p,
.furniture-wrapper [data-gu-name="standfirst"] p {
font-weight: 400;
font-size: 20px;
padding-bottom: 14px;
}
.furniture-wrapper #main-media,
.furniture-wrapper [data-gu-name="media"] {
position: relative;
margin-top: 0;
margin-bottom: 2px;
grid-area: portrait;
}
.furniture-wrapper #main-media div div,
.furniture-wrapper [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 -
```
此CSS代码定义了家具包装器元素的样式。它针对不同屏幕尺寸调整边距和内边距,定位说明文字和按钮,并设置背景颜色。媒体查询根据视口宽度修改这些样式,确保跨设备布局合理。代码还处理滚动条宽度计算,并在特定组件内自定义排版和链接外观。
此CSS代码定义了家具包装器和列表包装器的样式。对于家具包装器,它设置边距、说明文字和颜色,并针对移动设备和深色模式进行调整。列表包装器处理带有序号段落的列表项,采用交替背景色和淡入动画,同样适配不同屏幕尺寸和深色模式偏好。
所提供文本为CSS代码块,非标准英文散文。因此,无法在保持其技术含义和语法完整的前提下,将其重写为流畅自然的英文。为提升可读性,可对代码进行格式化和注释。以下是带有解释性注释的整理版本:
```css
/* 应用渲染目标内列表项的样式 */
[data-rendering-target=apps] .list-wrapper .list-item h2:has(em) {
color: #dcdcdc;
}
[data-rendering-target=apps] .list-wrapper .list-item .ad-portal-placeholder {
padding-bottom: 100px;
}
[data-rendering-target=apps] .list-wrapper .list-item .ad-portal-placeholder aside div:last-of-type {
margin-top: -100px;
}
/* 针对偏好减少运动的用户的调整 */
@media (prefers-reduced-motion: reduce) {
[data-rendering-target=apps] .list-wrapper .list-item .ad-portal-placeholder {
padding-bottom: 0;
}
[data-rendering-target=apps] .list-wrapper .list-item .ad-portal-placeholder aside div:last-of-type {
margin-top: 0;
}
}
/* “年终”主题的特殊样式 */
html.is-eoy {
--headerBorder: #4f6280;
--comment-count-fill: #eacca0;
}
html.is-eoy article.content--interactive>div {
border: none;
}
/* 为标题区块创建垂直边框线 */
html.is-eoy [data-gu-name=title]:before,
html.is-eoy [data-gu-name=title]:after {
content: "";
position: absolute;
top: 0;
width: 1px;
height: var(--furniture-bg-height, 100%);
background-color: var(--headerBorder, #4f6280);
display: none;
}
html.is-eoy [data-gu-name=title]:before { left: -20px; }
html.is-eoy [data-gu-name=title]:after { right: -20px; }
/* 在中等至大屏幕上显示标题边框 */
@media (min-width: 46.3125em) and (max-width: 61.24em),
(min-width: 61.3125em) and (max-width: 71.24em),
(min-width: 71.3125em) and (max-width: 81.24em),
(min-width: 81.3125em) {
html.is-eoy [data-gu-name=title]:before,
html.is-eoy [data-gu-name=title]:after {
display: block;
}
}
/* 在更大屏幕上调整标题边框高度 */
@media (min-width: 61.25em) {
html.is-eoy [data-gu-name=title]:before,
html.is-eoy [data-gu-name=title]:after {
height: 100%;
}
}
/* 社交和评论元信息区块的样式 */
html.is