The font
properti di CSS adalah properti singkatan yang menggabungkan semua sub-properti di deklarasi tunggal.
body ( font: normal small-caps normal 16px/1.4 Georgia; ) /* is the same as: body ( font-family: Georgia; line-height: 1.4; font-weight: normal; font-stretch: normal; font-variant: small-caps; font-size: 16px; ) */
Ada tujuh font
sub-properti, termasuk:
font-stretch
: properti ini menyetel lebar font, seperti diringkas atau diperluas.normal
ultra-condensed
extra-condensed
condensed
semi-condensed
semi-expanded
expanded
extra-expanded
ultra-expanded
font-style
: membuat teks tampak miring atau miring.normal
italic
oblique
inherit
font-variant
: mengubah teks target menjadi huruf kecil.normal
small-caps
inherit
font-weight
: mengatur bobot atau ketebalan font.normal
bold
bolder
lighter
100, 200, 300, 400, 500, 600, 700, 800, 900
inherit
font-size
: mengatur tinggi font.xx-small
x-small
small
medium
large
x-large
xx-large
smaller, larger
percentage
inherit
line-height
: menentukan jumlah spasi di atas dan di bawah elemen sebaris.normal
number (font-size multiplier)
percentage
font-family
: mendefinisikan fonta yang diterapkan ke elemen.sans-serif
serif
monospace
cursive
fantasy
caption
icon
menu
message-box
small-caption
status-bar
"string"
Jenis huruf Singkatan Gotchas
The font
properti tidak sesederhana sifat singkatan lainnya, sebagian karena persyaratan sintaks untuk itu, dan sebagian karena masalah warisan.
Berikut adalah ringkasan dari beberapa hal yang harus Anda ketahui saat menggunakan properti singkatan ini.
Nilai Wajib
Dua nilai dalam font
singkatan adalah wajib: font-size
dan font-family
. Jika salah satu dari ini tidak disertakan, seluruh deklarasi akan diabaikan.
Juga, font-family
harus dideklarasikan terakhir dari semua nilai, jika tidak, sekali lagi, seluruh deklarasi akan diabaikan.
Nilai Opsional
Kelima nilai lainnya adalah opsional. Jika Anda termasuk salah font-style
, font-variant
dan font-weight
, mereka harus datang sebelum font-size
dalam deklarasi. Jika tidak, mereka akan diabaikan dan juga dapat menyebabkan nilai wajib diabaikan.
body ( font: italic small-caps bold 44px Georgia, sans-serif; )
Dalam contoh di atas, tiga pilihan disertakan. Selama ini didefinisikan sebelumnya font-size
, mereka dapat ditempatkan dalam urutan apa pun.
Menyertakan line-height
juga opsional tetapi dapat dideklarasikan hanya setelah font-size
dan hanya setelah garis miring:
body ( font: 44px/20px Georgia, sans-serif; )
Dalam contoh di atas, line-height
adalah "20px". Jika Anda menghilangkan line-height
, Anda juga harus menghilangkan garis miring, jika tidak seluruh baris akan diabaikan.
Menggunakan font-stretch
The font-stretch
properti baru di CSS3 sehingga jika digunakan dalam browser yang lebih tua yang tidak mendukung font-stretch
di font
steno, akan menyebabkan seluruh baris untuk diabaikan.
Spesifikasi merekomendasikan untuk menyertakan fallback tanpa font-stretch
, seperti ini:
body ( font: italic small-caps bold 44px Georgia, sans-serif; /* fallback for older browsers */ font: ultra-condensed italic small-caps bold 44px Georgia, sans-serif; )
Warisan untuk pilihan
Jika Anda menghilangkan salah satu nilai optianal (termasuk line-height
), opsional yang dihilangkan tidak akan mewarisi nilai dari elemen induknya, seperti yang sering terjadi pada properti tipografi. Sebagai gantinya, mereka akan disetel ulang ke keadaan awalnya.
Sebagai contoh:
body ( font: italic small-caps bold 44px/50px Georgia, sans-serif; ) p ( font: 30px Georgia, sans-serif; )
Dalam hal ini, nilai opsional (miring, huruf kecil, dan tebal) ditempatkan pada font
deklarasi elemen. Ini juga akan berlaku untuk sebagian besar elemen anak.
Namun, karena kami telah mendeklarasikan ulang font
properti pada elemen paragraf, semua opsional akan disetel ulang pada paragraf, menyebabkan gaya, varian, bobot, dan tinggi garis kembali ke nilai awalnya.
Kata kunci untuk Mendefinisikan Font Sistem
Selain sintaks di atas, font
properti juga memungkinkan penggunaan kata kunci sebagai nilai. Mereka:
caption
icon
menu
message-box
small-caption
status-bar
Nilai kata kunci ini menetapkan font ke salah satu yang digunakan pada sistem operasi pengguna untuk kategori tertentu itu. Misalnya, mendefinisikan "caption" akan menyetel font pada elemen tersebut untuk menggunakan font yang sama yang digunakan pada sistem operasi untuk kontrol teks (tombol, drop-down, dll).
Satu kata kunci terdiri dari seluruh nilai:
body ( font: menu; )
Properti lain yang disebutkan sebelumnya tidak valid sehubungan dengan kata kunci ini. Kata kunci ini hanya dapat digunakan dengan font
singkatan dan tidak dapat dideklarasikan menggunakan salah satu properti longhand individual.
Informasi Lebih Lanjut
- Spesifikasi W3C
- Artikel Trik CSS: px - em -% - pt - kata kunci
- Jonathan Snook: ukuran font dengan rem
- Sebuah Primer tentang Properti Singkatan Font CSS
- CSS Font Singkatan Properti Cheat Sheet
Dukungan Browser
Chrome | Safari | Firefox | Opera | YAITU | Android | iOS |
---|---|---|---|---|---|---|
Apa saja | Apa saja | Apa saja | Apa saja | Apa saja | Apa saja | Apa saja |