จะรวมฟอนต์. tf โดยใช้ CSS ได้อย่างไร?


120

ฉันมีปัญหากับรหัสของฉัน เนื่องจากฉันต้องการรวมแบบอักษรสากลสำหรับเพจของฉันและฉันดาวน์โหลดไฟล์. ttf และฉันรวมไว้ใน CSS หลักของฉัน แต่แบบอักษรของฉันจะไม่เปลี่ยน

นี่คือรหัสง่ายๆของฉัน:

@font-face {
    font-family: 'oswald';
    src: url('/font/oswald.regular.ttf');
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    font:inherit;
    font-family: oswald;
    vertical-align:baseline
} 

ฉันไม่รู้ว่าฉันผิดพลาดตรงไหน คุณช่วยฉันด้วยได้ไหม ขอบคุณ


1
คุณสามารถตรวจสอบแท็บเครือข่ายในคอนโซลของเบราว์เซอร์เพื่อให้แน่ใจว่าแบบอักษรโหลดถูกต้องหรือไม่
ลานสเก็ตผู้เข้าร่วม 6

รับ woff จากที่นี่
Mr. Alien

1
แน่ใจหรือว่าสะกดชื่อไฟล์ฟอนต์ถูกต้อง ควรoswald.regular.ttfหรือไม่?

1
ใช่ฉันตรวจสอบชื่อแบบอักษรของฉัน
ซ้ำแล้ว

5
@Jerielle คุณมีฟอนต์ TTF ที่มีนามสกุลtff? คุณแน่ใจจริงๆหรือ?

คำตอบ:


174

การให้เฉพาะไฟล์. ttf สำหรับ webfont นั้นไม่ดีพอสำหรับการรองรับข้ามเบราว์เซอร์ ชุดค่าผสมที่ดีที่สุดในปัจจุบันคือการใช้ชุดค่าผสมเป็น:

@font-face {
  font-family: 'MyWebFont';
  src: url('webfont.eot'); /* IE9 Compat Modes */
  src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('webfont.woff') format('woff'), /* Modern Browsers */
       url('webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
}

รหัสนี้จะถือว่าคุณมีรูปแบบ. eot, .woff, .ttf และ svg สำหรับ webfont ของคุณ เพื่อทำให้กระบวนการทั้งหมดนี้คุณสามารถใช้: Transfonter.org

นอกจากนี้เบราว์เซอร์สมัยใหม่ยังเปลี่ยนไปใช้แบบอักษร. woff ดังนั้นคุณอาจทำได้เช่นกัน:

@font-face {
  font-family: 'MyWebFont';
  src: url('myfont.woff') format('woff'), /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
   url('myfont.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5, Opera 10+, Safari 3—5 */
}  

อ่านเพิ่มเติมที่นี่: http://css-tricks.com/snippets/css/using-font-face/


มองหาการสนับสนุนเบราว์เซอร์: ฉันสามารถใช้ fontface


และหากคุณกำลังใช้ GFonts โปรดดูที่stackoverflow.com/a/30585464/1727470
Samy Bencherif

1
สำหรับคนอย่างฉันที่สับสนง่าย - เส้นทางมีเครื่องหมายทับurl('path/to/font.woff')
2561

ฉันมีปัญหาเกี่ยวกับความคิดเห็นในกฎแบบอักษร การย้ายความคิดเห็นไปยังจุดสิ้นสุดของกฎช่วยแก้ปัญหาได้
Eric D'Souza

ฉันพบว่าแบบอักษรที่ฉันต้องการสร้างแบบอักษรของเว็บถูกขึ้นบัญชีดำจาก Font Squirrel อย่างไรก็ตามTransfonter.orgทำงานให้ฉัน
HotN

ฉันมีปัญหากับ Font Squirrel ด้วย ประสบความสำเร็จกับ font-converter.net
Peter Hayman


14

คุณสามารถใช้แบบอักษรได้ดังนี้:

@font-face {
  font-family:"Name-Of-Font";
  src: url("yourfont.ttf") format("truetype");
}

3

ฉันรู้ว่านี่เป็นโพสต์เก่า แต่มันช่วยแก้ปัญหาของฉันได้

@font-face{
  font-family: "Font Name";
  src: url("../fonts/font-name.ttf") format("truetype");
}

สังเกตว่าsrc:url("../fonts/font-name.ttf");เราใช้สองช่วงเวลาเพื่อกลับไปที่ไดเร็กทอรีรูทจากนั้นเข้าไปในโฟลเดอร์ฟอนต์หรือที่ใดก็ตามที่ไฟล์ของคุณอยู่

หวังว่านี่จะช่วยใครบางคนได้ :) มีความสุขในการเขียนโค้ด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.