Como importar o Google Web Font no arquivo CSS?

258

Estou trabalhando com um CMS que só tenho acesso ao arquivo CSS. Portanto, não posso incluir nada no cabeçalho do documento. Eu queria saber se havia uma maneira de importar a fonte da web de dentro do arquivo CSS?

David
fonte

Respostas:

382

Use o @importmétodo:

@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');

Obviamente, "Open Sans" ( Open+Sans) é a fonte importada. Então substitua-o pelo seu. Se o nome da fonte tiver várias palavras, codifique-a por URL adicionando um+ sinal entre cada palavra, como eu fiz.

Certifique-se de colocar o @import no topo do seu CSS, antes de qualquer regra.

O Google Fonts pode gerar automaticamente a @importdiretiva para você. Depois de escolher uma fonte, clique no (+)ícone ao lado dela. No canto inferior esquerdo, um contêiner intitulado "1 família selecionada" será exibido. Clique nele e ele será expandido. Use a guia "Personalizar" para selecionar opções e, em seguida, volte para "Incorporar" e clique em "@import" em "Incorporar fonte". Copie o CSS entre as <style>tags na sua folha de estilo.

ModernDesigner
fonte
25
Você deve evitar o uso de @import, pois adiará o carregamento do recurso incluído até que o arquivo seja buscado. Veja a resposta detalhada aqui: stackoverflow.com/a/12380004/925560
Renato Carvalho
5
Mover a linha @import para o topo resolveu minha vida! Obrigado!
joalcego
2
Por que o google diz isso? O Google Insides alega não fazer @import. developers.google.com/speed/pagespeed/insights ?
usar o seguinte comando
2
Esta é uma resposta desatualizada. @importcarrega sequencialmente e é melhor evitar: varvy.com/pagespeed/avoid-css-import.html A maneira preferida (e padrão) de carregar fontes do Google atualmente está em uso <link>.
mandril Le extremidade
2
Você se arrependerá disso quando chegar ao SEO e começar a otimizar a velocidade da página com as informações do Google PageSpeed. Use <link>e otimize sua entrega.
Contador م
66
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Open+Sans:300,400,600,700&amp;lang=en" />

Melhor não usar @import. Basta usar o elemento link, como mostrado acima, na cabeça do seu layout.

Burk
fonte
19
Você pode expandir o porquê "Melhor não usar"? Procurei essa pergunta porque gostaria de saber qual método é considerado melhor.
9788 Adam Hollow
2
Eu tive um problema no Internet Explorer com @import. Às vezes, simplesmente não lê.
Burk
6
Ele disse especificamente que não pode usar a tag <link> no cabeçalho.
Nathan
26
+1 por usar 'link', pois não bloqueará o carregamento paralelo de outros arquivos externos. 'import' bloqueará o carregamento paralelo de outros arquivos externos.
Jahmic
2
Usando @import, você pode tornar a fonte parte do estilo CSS, em vez da marcação HTML, que semanticamente parece mais correta, e você pode trocar as fontes do seu site pelo CSS. Mas, como Chuck comentou, parece que você leva um leve golpe de velocidade por isso. Talvez registe os tempos de carregamento e decida caso a caso. Observe que, para SVGs, @import é a única maneira de trabalhar com o AFAIK.
Mentalist
38

Faça o download da fonte ttf / outros arquivos de formato e adicione simplesmente este exemplo de código CSS:

@font-face { font-family: roboto-regular; 
			 src: url('../font/Roboto-Regular.ttf'); } 
h2{
	font-family: roboto-regular;
}

Fidel
fonte
37

Adicione o código Abaixo no seu arquivo CSS para importar o Google Web Fonts.

@import url(https://fonts.googleapis.com/css?family=Open+Sans);

Substitua o Open + Sans valor do parâmetro pelo seu nome da fonte.

Seu arquivo CSS deve se parecer com:

@import url(https://fonts.googleapis.com/css?family=Open+Sans);

body{
   font-family: 'Open Sans',serif;
}
Shubham Kumar
fonte
13
  1. Basta ir para https://fonts.google.com/
  2. Adicione fonte clicando em +
  3. Vá para a fonte selecionada> Incorporar> @IMPORT> copie o URL e cole no arquivo .css acima da etiqueta do corpo.
  4. Está feito.
karunesh
fonte
9

Use a tag @import

@import url('http://fonts.googleapis.com/css?family=Kavoon');
jmz7v
fonte
8

Juntamente com as respostas acima, considere também este site; https://google-webfonts-helper.herokuapp.com/fonts

Vantagem:

  • permite que você auto-hospede essas fontes do Google para obter melhores tempos de resposta

  • escolha sua (s) fonte (s)

  • escolha seu conjunto de caracteres
  • escolha seus estilos / peso de fonte
  • escolha o seu navegador de destino
  • e você obtém os trechos de CSS (adicione à sua folha de estilo css) mais um zip dos arquivos de fonte para incluir no seu projeto

Por exemplo, your_theme.css

@font-face { 
    font-family: 'Open Sans'; 
    font-style: normal;  
    font-weight: 400;
    src: local('Open Sans Regular'), local('OpenSans-Regular'),
             url('css_fonts/open-sans-v15-latin-regular.woff2') format('woff2'), 
             url('css_fonts/open-sans-v15-latin-regular.woff') format('woff'); 
}

body { 
    font-family: 'Open Sans',sans-serif;
}
MarcoZen
fonte
1
Isso também permite que você carregue font-weight: 400primeiro e depois carregue o restante da fonte usando o mesmo código sem argumentos. Isso permite uma exibição mais rápida e, se você não precisar da fonte inteira, arquivos CSS menores.
moto
4

Você também pode usar @ font-face para vincular aos URLs. http://www.css3.info/preview/web-fonts-with-font-face/

O CMS suporta iframes? Você também pode lançar um iframe na parte superior do seu conteúdo. Provavelmente seria mais lento - melhor incluí-lo no seu CSS.

Eric Keyte
fonte
3
<link href="https://fonts.googleapis.com/css?family=(any font of your 
choice)" rel="stylesheet" type="text/css">

Para escolher a fonte, você pode visitar o link: https://fonts.google.com

Escreva o nome da fonte de sua escolha no site, excluindo os colchetes.

Por exemplo, você escolheu Lobster como uma fonte de sua escolha,

<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" 
type="text/css">

Em seguida, você pode usar isso normalmente como uma família de fontes em todo o arquivo HTML / CSS.

Por exemplo

<h2 style="Lobster">Please Like This Answer</h2>
RohanVTK
fonte
1

Podemos fazer isso facilmente em css3. Temos que simplesmente usar a declaração @import. O vídeo a seguir descreve facilmente a maneira de fazer isso. então vá em frente e assista.

https://www.youtube.com/watch?v=wlPr6EF6GAo

Gyan
fonte