- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 next.js 样式组件的全局样式,每次我重新加载我的页面时,我都能看到字体闪烁。
我的字体文件在 public/fonts/Inconsolata
我在频谱聊天中到处寻找,next.js github问题,但似乎找不到任何解决方案。
页面/index.js
import styled from 'styled-components';
const H1 = styled.h1`
font-family: 'Inconsolata Bold';
font-weight: 700;
color: #000;
`;
const index = () => {
return (
<div>
<H1>font flashes</H1>
</div>
);
};
export default index;
import App from 'next/app';
import React from 'react';
import GlobalStyle from '../src/style/globalStyle';
export default class MyApp extends App {
render() {
const { Component, pageProps } = this.props;
return (
<>
<GlobalStyle />
<Component {...pageProps} />
</>
);
}
}
import Document from 'next/document';
import { ServerStyleSheet } from 'styled-components';
export default class MyDocument extends Document {
static async getInitialProps(ctx) {
const sheet = new ServerStyleSheet();
const originalRenderPage = ctx.renderPage;
try {
ctx.renderPage = () =>
originalRenderPage({
enhanceApp: App => props => sheet.collectStyles(<App {...props} />)
});
const initialProps = await Document.getInitialProps(ctx);
return {
...initialProps,
styles: (
<>
{initialProps.styles}
{sheet.getStyleElement()}
</>
)
};
} finally {
sheet.seal();
}
}
}
import { createGlobalStyle } from 'styled-components';
const globalStyle = createGlobalStyle`
@font-face {
font-family: 'Inconsolata';
src: url('./fonts/Inconsolata/Inconsolata-Regular.woff2') format('woff2'),
url('./fonts/Inconsolata/Inconsolata-Regular.woff') format('woff');
font-weight: 400;
font-style: normal;
font-display: fallback;
}
@font-face {
font-family: 'Inconsolata Bold';
src: url('./fonts/Inconsolata/Inconsolata-Bold.woff2') format('woff2'),
url('./fonts/Inconsolata/Inconsolata-Bold.woff') format('woff');
font-weight: 700;
font-style: bold;
font-display: fallback;
}
`;
export default globalStyle;
最佳答案
更新:
Next.js 发布了一个名为 的新功能Automatic Webfont Optimization .
只需包含您的字体(目前仅适用于 Google 字体),它将在构建时作为原始 css 包含在内。
// Before
<link
href="https://fonts.googleapis.com/css2?family=Inter"
rel="stylesheet"
/>
// After
<style data-href="https://fonts.googleapis.com/css2?family=Inter">
@font-face{font-family:'Inter';font-style:normal.....
</style>
<link
rel="preload"
href="/assets/my-font.woff2"
as="font"
type="font/woff2"
/>
<style jsx global />
将其包含在您的页面中。它可以是外部文件或直接在 style
中元素。关于reactjs - 使用 next.js 和样式组件重新加载时无样式文本 (FOUT) 的 Flash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60841540/
我是java编程新手,所以我找不到代码错误的解决方案。这是我的代码 - import java.io.FileOutputStream; class FileOutputStream1 { p
有人能帮我创建这个命令吗 fout <<"osql -Ubatascan -Pdtsbsd12345 -dpos -i""c:\\temp_pd.sql"""<
我正在尝试使用 python 文件系统读取和写入文件,但遇到了一些问题。我相信读取/打开功能是正确的,但写入功能给我带来了困难。 我在一个反转字典的函数中执行此操作,我希望它从文本文件中读取字典,而不
我制作了一个小程序,让用户输入文件名,然后程序创建一个具有该名称的 .doc 文件。然后,用户输入一些内容,它出现在 .doc 文件中: #include #include #include u
我们正在使用它来加载与 typekit 异步的字体: try{Typekit.load({async:true});}catch(e){} 但随后我们遇到了问题,在页面加载前的一瞬间将字体设置为 a
我正在使用@font-face 将两种外部字体加载到我的网页。它们在 Chrome 中加载完美,但当我在 IE 中尝试时,浏览器在页面加载时显示一些默认字体,然后字体根据我的 css @font-fa
我试图使用不属于 main 的函数写入文件,但每当我在一个不是 main 的函数中调用 fout 时,我都会收到一条错误消息,指出 fout 未在此范围内声明。这是我的文件标题,后面是我尝试在其中使用
我对 cpp 还是个新手,如果有人能帮助我理解这行代码,我会很高兴: ofstream fout(getenv("OUTPUT_PATH")); 这段代码我几乎看到了每一个 Hacker Rank 挑
我正在使用 icomoon.io将一些 SVG 文件转换为字体。 SVG 是图形,不是字母。我知道这个can be accomplished with JavaScript ,但我想知道是否有更简单的
我正在尝试找到一种将 fout 或 cout 传递给函数的方法。我意识到有一些逻辑上简单的方法来处理这个问题,比如将 ifs 放在任何输出数据的函数中,甚至只是双向编写函数。然而,这似乎是原始和低效的
因此,最近,我们一直在研究针对新的“Core web Vitality”优化我们的网站,并确定了与 flexbox 行(已解决)相关的问题,这导致桌面的 CLS 得分不佳,而在移动设备上,它似乎是破坏
我正在使用 next.js 样式组件的全局样式,每次我重新加载我的页面时,我都能看到字体闪烁。 我的字体文件在 public/fonts/Inconsolata 我在频谱聊天中到处寻找,next.js
#include #include #include using namespace std; int main() { ofstream fout("test.txt"); f
我正在使用大约 100kb 的自定义字体。可以想象,浏览器文本从不可见文本闪烁到可见文本。因此我开始使用 webfontloader:https://github.com/typekit/webfon
我想将相机拍摄的图像压缩为 png 格式以使其尺寸更小,所以我正在使用这段代码: compressedPictureFile = new File(imagePath); Bitmap bitmap
我是一名优秀的程序员,十分优秀!