David
David

Reputation: 4767

How to import Google Web Font in CSS file?

I'm working with a CMS which I only have access to the CSS file. So, I can't include anything in the <head> of the document. I was wondering if there was a way to import the web font from within the CSS file?

Upvotes: 318

Views: 1174808

Answers (14)

Mahozad
Mahozad

Reputation: 24472

  1. Go to https://fonts.google.com/ and select your desired font family (you can search by name):

    Step 1: selecting a font

  2. Select the desired variations (weight, italics, etc.):

    Step 2: selecting the variations

  3. Click on View selected families button on the top right corner:

    Step 3: clicking on the view font family button

  4. Select @import on the right panel to get the code:

    Step 4: getting the css code

Upvotes: 1

Scylax
Scylax

Reputation: 11

Everyone here have given an answer using link tag and @import. That works well if you have an internet connection while working on your project(html,css). But if you want to use your font 'offline' ie by downloading ,follow these steps-

  1. Download zip file of desired font from google fonts website using DOWNLOAD ALL option.
  2. Extract zip file and you will get your .ttf files.
  3. in your styles.css use-
    @font-face{ font-family: ....... ; src:url(........); }

**Inside font-family write name of the font you want to use from extracted .ttf file. Name can found by opening that .ttf file.

Inside url mention local path of your .ttf file.**

  1. Now if you want to use your font. Simply use font-family property and inside it write name of font used in above step(that you got using opening .ttf file) If you want to add this font to whole webpage use font-family property within universal selector(*).

Upvotes: 1

Burk
Burk

Reputation: 3067

<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Open+Sans:300,400,600,700&amp;lang=en" />

Better to not use @import. Just use the link element, as shown above, in your layout's head.

Upvotes: 105

MarcoZen
MarcoZen

Reputation: 1653

Along with the above answers, do also consider this site; https://google-webfonts-helper.herokuapp.com/fonts

Main Advantage:

  • allows you to self-host those google fonts for better response times

Other Advantages :

  • choose your font(s)
  • choose your character set
  • choose your font styles/weight
  • choose your target browsers ( modern preferred )
  • and u get the CSS snippets ( to add to your css stylesheet ) plus a zip of the font files to include in your project folder ( say css_fonts )

In file 'your_css_theme.css' add

/* open-sans-regular - latin - modern browsers  */
@font-face {
   font-family: 'Open Sans';
   font-style: normal;
   font-weight: 400;
   src: local(''),
        url('css_fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
        url('css_fonts/open-sans-v18-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
 }

 body { 
        font-family: 'Open Sans',sans-serif;  
 }

Upvotes: 28

Leon
Leon

Reputation: 78

Googles side changed a bit since 2015.. I had some difficulties finding it so figured to include the new method:

  1. Scroll down on the desired font page
  2. click the small plus icon on the side of the font name
  3. the embed link and other options will appear on the "selected family" dialogue on the right of the web page.

Upvotes: 2

ModernDesigner
ModernDesigner

Reputation: 7707

Use the @import method:

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

Obviously, "Open Sans" (Open+Sans) is the font that is imported. So replace it with yours. If the font's name has multiple words, URL-encode it by adding a + sign between each word, as I did.

Make sure to place the @import at the very top of your CSS, before any rules.

Google Fonts can automatically generate the @import directive for you. Once you have chosen a font, click the (+) icon next to it. In bottom-left corner, a container titled "1 Family Selected" will appear. Click it, and it will expand. Use the "Customize" tab to select options, and then switch back to "Embed" and click "@import" under "Embed Font". Copy the CSS between the <style> tags into your stylesheet.

Upvotes: 489

Shubham Kumar
Shubham Kumar

Reputation: 1229

Add the Below code in your CSS File to import Google Web Fonts.

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

Replace the Open+Sans parameter value with your Font name.

Your CSS file should look like:

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

body{
   font-family: 'Open Sans',serif;
}

Upvotes: 48

rohanvtk
rohanvtk

Reputation: 131

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

To choose the font you can visit the link : https://fonts.google.com

Write the font name of your choice from the website excluding the brackets.

For example you chose Lobster as a font of your choice then,

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

Then you can use this normally as a font-family in your whole HTML/CSS file.

For example

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

Upvotes: 4

Gyan
Gyan

Reputation: 37

We can easily do that in css3. We have to simply use @import statement. The following video easily describes the way how to do that. so go ahead and watch it out.

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

Upvotes: 0

subindas pm
subindas pm

Reputation: 2774

Jus go through the link

https://developers.google.com/fonts/docs/getting_started

To import it to stylesheet use

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

Upvotes: 3

Fidel
Fidel

Reputation: 932

Download the font ttf/other format files, then simply add this CSS code example:

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

Upvotes: 79

karunesh
karunesh

Reputation: 315

  1. Just go to https://fonts.google.com/
  2. Add font by clicking +
  3. Go to selected font > Embed > @IMPORT > copy url and paste in your .css file above body tag.
  4. It's done.

Upvotes: 21

jmz7v
jmz7v

Reputation: 361

Use the tag @import

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

Upvotes: 13

Eric Keyte
Eric Keyte

Reputation: 651

You can also use @font-face to link to the URLs. http://www.css3.info/preview/web-fonts-with-font-face/

Does the CMS support iframes? You might be able to throw an iframe into the top of your content, too. This would probably be slower - better to include it in your CSS.

Upvotes: 4

Related Questions