css3 @font-face

hi new to css3

i cant see why this wont work

*the font is in the root folder,
*The font is otf and compatible

I have suspisions about the url reference

<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=utf-8” />
<link rel=“stylesheet” href=“joe.css” type=“text/css” media=“all” />
</head>
<body>
<div class=“pic”>
why wont this work
</div>
</body>
</html>

@font-face
{
font-family: Chunkfive;
src: url (‘Chunckfive.otf’);
}

.pic
{
font-family: Chunkfive.otf;
}

You need different versions of a font for different platforms. So there’s a lot more code and a few fonts needed to make this work. You can download the necessary font formats and code from here:

http://www.fontsquirrel.com/fontfacedemo/ChunkFive


@font-face {
    font-family: 'ChunkFiveRegular';
    src: url('Chunkfive-webfont.eot');
    src: url('Chunkfive-webfont.eot?#iefix') format('embedded-opentype'),
         url('Chunkfive-webfont.woff') format('woff'),
         url('Chunkfive-webfont.ttf') format('truetype'),
         url('Chunkfive-webfont.svg#ChunkFiveRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}



The Font-squirrel site is a great @font-face resource.

In reference to your specific code (from my limited knowledge of the @font-face (which is actually not CSS3))…

When defining the font-family in the div with class “pic”, you don’t need the ‘.otf’.

It should look like:


.pic
{
 font-family:Chunkfive;
}

That should make it work.

As Ralph said, you need to define it for multiple web browser supports.

I know that Google Web Fonts (the resource that I use) and, now, Font Squirrel are both excellent for automatically providing the code for you so you don’t have to worry about .otf, .ttf, .eot, .woff. and .svg.

~TehYoyo

Note:

It’s cool to see someone who formats their css the same way I do :slight_smile:

It’s normally frowned upon as the web standard is to format as such:


.pic {
font-family: Chunkfive;
}

so ichecked out that squirrell site

I am i right in thinking that to call a font in my css i need to have uploadeded it to that site???

TehYoyo

thanks for you help.

No, you upload the fonts that they supply to your own site, and then link to them in your CSS file. Simply modify the code I posted above to point to the location of the font files. If you place the fonts in the same folder as your CSS file, you can leave the links untouched. Just upload the fonts, add the above CSS to your CSS file, and then call the font by the font name on any element that needs that font, as TehYoyo said.

E.g.

.pic {font-family:ChunkFiveRegular;}

okay so i have a better understanding now

when i generate a font kit

what is all that webfont stuff in the code mean
i understand the differnet formats for different browsers etc.

Hypothetically why couldn’t i just design for one browser?

We cross-posted, so see my reply above.

The webfont stuff has been worked out as the most reliable way to get @font-face working in the current environment. Designing for one browser only is not much use in general, but you can do it.

You can only design for one browser, realistically, if you are doing an intranet (company website)