无冕之王:哈利法·哈夫塔尔如何统治利比亚

无冕之王:哈利法·哈夫塔尔如何统治利比亚

这段CSS代码定义了一个名为"Guardian Headline Full"的自定义字体族,包含多种字重和样式。它涵盖了细体、常规体、中等体和半粗体,每种都有常规和斜体变体。字体以WOFF2、WOFF和TrueType格式从《卫报》服务器加载,以确保在不同浏览器中的兼容性。

@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,文章正文或某些元素(如登录门或水平分隔线)之后的第一段的首字母被设计为大号首字下沉效果。它使用特定的标题字体,加粗、大写并带有颜色,大小为111像素,行高为92像素。它向左浮动并带有小边距。

紧接在水平分隔线之后的段落没有上内边距。文章正文内的引文被限制在最大宽度620像素。

展示元素的标题采用静态定位,同样具有最大宽度620像素。沉浸式元素横跨整个视口宽度,并根据滚动条进行调整。在较大的屏幕上,它们被限制在最大宽度内,而在较小的屏幕上,它们延伸至边缘并调整边距。沉浸式元素的标题具有响应式内边距。

对于较宽的屏幕,文章标题使用CSS网格布局,定义了列和行。这个网格组织了标题、头条、元数据和导语。头条有上边框,元数据定位时带有较小的上内边距。导语内的链接使用自定义颜色下划线,悬停时颜色会改变,列表项的字体大小为20像素。导语中的第一段没有特殊样式指示。对于最小宽度为61.25em的屏幕,导语元素内的第一段将具有上边框且无下内边距。如果屏幕宽度也至少为71.25em,则此上边框将被移除。

在宽度至少为61.25em的屏幕上,家具包装器内的图形没有左边距,具有特定角色的内联图形最大宽度为630像素。

对于宽度至少为71.25em的屏幕,家具包装器使用详细的网格布局来定义列和行。元数据部分前会出现一条装饰线,导语段落失去上边框,转而获得左边框。

在宽度至少为81.25em的更宽屏幕上,网格模板会调整列和行的分配。元数据部分前的装饰线变得更宽,导语的左边框略微移动。

头条具有特定的字重、大小和最大宽度,这些属性在较大的屏幕上会改变。某些关键线在中等尺寸的屏幕上被隐藏,其SVG描边使用定义的边框颜色。

元数据部分内的社交和评论元素使用相同的边框颜色。元数据部分内的特定容器被隐藏。

导语部分具有负的左边距和相对定位,在中等屏幕上调整了内边距。其段落具有定义的字体属性。

主要媒体区域相对定位,具有特定的边距,并放置在“portrait”网格区域中。CSS代码为各种元素设置样式。它使某些div全宽且无边距。对于较大的屏幕,它移除媒体元素的底部边距。在较小的屏幕上,媒体元素调整宽度并具有负的左边距,对于中等偏小的屏幕,此边距略有增加。

图形标题定位在底部,具有背景颜色和特定的内边距。标题内的第一个span被隐藏,而第二个span显示且宽度限制在90%。在中等屏幕上,标题内边距增加。

标题按钮定位在右下角,具有圆形背景。在中等屏幕上,它略微向右移动。

对于超大屏幕上的交互式内容列,伪元素调整其位置和高度。这些列内的H2标题具有最大宽度。

对于iOS和Android,自定义属性定义了深色模式颜色。在深色模式下,支柱颜色变为深色模式变体。

在iOS和Android上,文章容器内特定元素之后的第一段的首字母使用次要支柱颜色着色。这些容器内的文章标题也接收特定的样式。对于Android设备,将评论文章中文章标题的高度设置为零。

对于iOS和Android设备,对专题、标准和评论文章中的家具包装器应用以下样式:
- 添加上内边距4px,侧边内边距10px,底部内边距0。
- 内容标签样式:
- 粗体字重。
- 特定的字体族堆栈(Guardian Headline、Guardian Egyptian Web等)。
- 使用自定义CSS变量设置支柱颜色。
- 大写文本。
- H1头条样式:
- 字体大小32px。
- 粗体字重。
- 底部内边距12px。
- 深灰色(#121212),使用`!important`覆盖其他样式。
- 图像图形样式:
- 相对定位。
- 上边距14px,左边距-10px,无下边距。
- 宽度计算为完整视口宽度减去任何滚动条宽度。
- 自动高度。
- 对于这些图形内的内部图形元素、图像和链接:
- 背景设置为透明。
- 宽度计算为完整视口宽度减去任何滚动条宽度。
- 高度设置为自动,使用`!important`覆盖其他样式。
- 为iOS和Android设备上的专题、标准和评论文章设置导语元素(文章摘要/介绍)样式。CSS代码为文章容器设置样式。对于导语部分,它添加上下内边距,并具有负的右边距。在iOS和Android设备上,导语内的文本使用特定的字体族。导语内的链接使用特定颜色样式,带有偏移的下划线,并具有自定义边框颜色,悬停时会改变。元数据部分无边距,署名和作者姓名等元素在不同文章类型中样式一致。对于iOS和Android设备,文章署名中的作者姓名应以新的支柱颜色显示。此外,移除元数据杂项部分的内边距,并将其SVG图标的描边颜色设置为新的支柱颜色