Trước đây nếu bạn muốn website chạy những font chữ độc và lạ mà trên máy tính của Client không cài đặt thì đó là điều không thể, trừ khi client download về và cài đặt trên máy tính của họ.
Điều phiền toái này đã được CSS3 khắc phục bằng cách bổ sung vào một rule với tên gọi là @font-face, rule này sẽ tạo ra một font định danh và nó sẽ trỏ tới một file font nào đó lưu trữ trên Internet. Điều này đã giúp các Designer thỏa sức bung ý tưởng của mình mà không còn lo ngại vấn đề font format nữa.
Trước tiên chúng ta cùng tìm hiểu một số định dạng của file fonts đã nhé.
1. Một số định dạng file font
Mình xin trích một số định nghĩa lấy từ trang W3C.
TrueType Fonts (TTF): TrueType là một định dạng được phát triển vào cuối những năm 1980 bởi Apple và Microsoft, đây là định dạng font phổ biến cho các hệ điều hành Mac OS và Windows.
OpenType Fonts (OTF): OpenType là một định dạng được phát triển dựa trên nền tảng của TrueType và nó đã được đăng ký thương hiệu bởi Microsoft. Font chữ OpenType được sử dụng phổ biến hiện nay trên các nền tảng máy tính lớn.
The Web Open Font Format (WOFF): WOFF là một định dạng sử dụng trong các trang web, nó được phát triển vào năm 2009. WOFF bản chất là một OpenType hoặc TrueType được bổ sung một số siêu dữ liệu giúp việc truyền tải qua mạng nhẹ nhàng hơn. W3C khuyến khích sử dụng định dạng này.
The Web Open Font Format (WOFF 2.0): TrueType/OpenType là một bản nén tuyệt vời hơn WOFF 1.0.
SVG Fonts/Shapes: SVG Fonts giúp hiển thị văn bản giống như một hình ảnh Graphic.
Embedded OpenType Fonts (EOT): EOT là một hình thức nén của OpenType, được phát triển bởi Microsoft và dùng để nhúng vào website.
Với danh sách các kiểu font như trên thì liệu tất cả các trình duyệt có hỗ trợ hết không? Để trả lời câu hỏi này bạn tham khảo bảng danh sách sau:
Font format | IE | Chrome | Firefox | Safary | Opera |
---|---|---|---|---|---|
TTF/OTF | 9.0* | 4.0 | 3.5 | 3.1 | 10.0 |
WOFF | 9.0 | 5.0 | 3.6 | 5.1 | 11.1 |
WOFF2 | Not supported | 36.0 | 35.0* | Not supported | 26.0 |
SVG | Not supported | 4.0 | Not supported | 3.2 | 9.0 |
EOT | 6.0 | Not supported | Not supported | Not supported | Not supported |
2. Sử dụng @font-face
@font-face giống như một function gom nhiều thuộc tính CSS lại kết hợp với định dạng font giúp tạo ra những loại font theo ý muốn của lập rình viên.
Ví dụ:
1 2 3 4 5 6 7 8 | @font-face{ font-family : MyFont; src : url (sansation_light.woff); font-weight : 100 ; } h 2 { font-family : MyFont; } |
Đường dẫn trỏ tới file font bạn có thể sử dụng CDN của Google hoặc trực tiếp trên host của bạn.
Thuộc tính này cũng không có gì đặc biệt, bạn có thẻ tham khảo thêm tại đây.
3. Lời kết
Đa số các layout hiện nay đều sử dụng những font mới và lạ nên việc sử dụng @font-face đóng vai trò rất quan trọng.
Bài này kết thúc tại đây, bài tiếp theo chúng ta tìm hiểu 2D Transform trong CSS3.