Przejdź do treści

Czcionki

Rodzaj

selektor { font-family: rodzaj, rodzaj1, rodzaj2,... }
Selektorem może być dowolny znacznik, w którym można wpisywać tekst, np. p - akapit, h1 - tytuł czy td - komórka tabeli [zobacz: Wstawianie stylów].

Natomiast jako "rodzaj, rodzaj1, rodzaj2,..." należy podać rodzaje czcionek. Podanie kilku rodzajów spowoduje, że jeśli użytkownik nie będzie posiadał pierwszego, to zostanie wybrany następny w kolejności (można oczywiście podać tylko jeden rodzaj). Jeżeli nazwa czcionki składa się z kilku wyrazów, należy ją objąć w znaki apostrofu (np. 'Times New Roman', 'Courier New').

Polecenie pozwala wybrać konkretny krój czcionki.

UWAGA! Należy być ostrożnym z używaniem tego polecenia, ponieważ jeśli użytkownik oglądający Twoją stronę, nie będzie posiadał podanej czcionki w swoim systemie operacyjnym, tekst zostanie napisany czcionką domyślną (w Internet Explorerze będzie to najprawdopodobniej 'Times New Roman', chociaż to też nie jest pewne).
Poza tym nie każda czcionka potrafi zapisać poprawnie polskie znaki (w standardzie ISO). Koniecznie sprawdź rezultat w praktyce!

Korzystniej jest wypisać kilka rodzajów - wtedy zostanie użyta taka czcionka, którą pierwszą w kolejności podawania będzie posiadał użytkownik.

W systemie Windows standardowo dostępne powinny być czcionki: 'Times New Roman' (szeryfowa), Arial (bezszeryfowa), 'Courier New' (monotypiczna). Dodatkowo od jakiegoś czasu z Internet Explorerem dostarczane są: Verdana, Tahoma, 'Trebuchet MS', Georgia. Przy definiowaniu czcionki, dobrze jest wykorzystywać te właśnie rodzaje, a także takie które domyślnie występują w innych systemach operacyjnych (np. Helvetica - podobna do Arial).

Rodziny ogólne

Oprócz podania rodzaju czcionki wprost, możliwe jest także wpisanie rodziny ogólnej:

  • serif - czcionka szeryfowa (końcówki znaków posiadają "ozdobniki"), np.: 'Times New Roman', Georgia, Garamond, Bodoni
  • sans-serif - czcionka bezszeryfowa (końcówki znaków są proste), np.: Arial, Verdana, 'Trebuchet MS', Helvetica, Univers, Futura
  • monospace - czcionka o stałej szerokości znaków - monotypiczna (wygląda, jak pisana na maszynie), np.: Courier, 'Courier New'
  • cursive - czcionka mająca pewne cechy pochyłej (wygląda, jak pisana ręcznie)
  • fantasy - czcionka fantazyjna (dekoracyjna)
UWAGA! Rodziny ogólne wykorzystuje się jako ostatnia alternatywa - jeśli użytkownik nie będzie posiadał żadnej czcionki, której nazwę wpisaliśmy wprost. Dlatego zwykle rodzinę ogólną podaje się na samym końcu listy nazw czcionek, np.:
body { font-family: Arial, Helvetica, Verdana, sans-serif }

Taki sposób jest mocno zalecany, gdyż wtedy nawet jeśli użytkownik nie będzie posiadał żadnej z podanych czcionek, strona zostanie wyświetlona przy użyciu czcionki podobnej do zdefiniowanych, a nie domyślnej, która może zupełnie nie pasować do typografii naszej strony. Dlatego zawsze staraj się na końcu wpisywać rodzinę ogólną, do której należą czcionki, podane w pierwszej kolejności (najczęściej wykorzystuje się rodziny: serif lub sans-serif).

Niestety, ponieważ w takim przypadku to przeglądarka automatycznie dobiera rodzaj czcionki, może się zdarzyć, że wybierze czcionkę, która niepoprawnie zapisuje polskie znaki (tak się właśnie stało w mojej przeglądarce z rodziną fantasy). Chociaż jeśli chodzi o rodziny podstawowe (serif, sans-serif, monospace), wszystko powinno być w porządku.

Przykład:

To jest czcionka Arial

To jest czcionka 'Courier New'

To jest czcionka 'Times New Roman'

To jest czcionka Verdana


To jest rodzina ogólna serif

To jest rodzina ogólna sans-serif

To jest rodzina ogólna monospace

To jest rodzina ogólna cursive

To jest rodzina ogólna fantasy

Czcionki osadzone

Na koniec ostatnia (najbardziej zaawansowana) możliwość ustalania kroju czcionki - czcionki osadzone. Jak czytelnik zapewne zauważył, ustalenie rodzaju czcionki, wcale nie jest takie proste. O czcionce przy użyciu której zostanie wyświetlona nasza strona WWW, decyduje zestaw "fontów" zainstalowanych przez użytkownika (w jego systemie operacyjnym). Praktycznie nie można przewidzieć rezultatu, gdyż na dobrą sprawę nie wiemy, jaki system posiada internauta odwiedzający nasz serwis. Używanie podstawowych rodzajów czcionek ('Times New Roman', Arial, 'Courier New', Helvetica), nie zawsze musi nam odpowiadać, a poza tym nie gwarantuje oczekiwanego rezultatu w stu procentach.

Okazuje się jednak, że istnieje sposób, pozwalający używać na stronie WWW dowolne czcionki, bez obawy o niepoprawne wyświetlanie. Możliwe jest umieszczenie na serwerze specjalnego pliku z czcionkami, z którego korzysta przeglądarka, podczas wyświetlania strony. Nawet jeśli użytkownik nie będzie posiadał wymaganego kroju, zostanie on automatycznie pobrany z Internetu i dynamicznie tymczasowo zainstalowany w jego systemie. Użytkownik nie będzie mógł z takiej czcionki korzystać po wyjściu z serwisu - chroni to prawa autorskie producentów czcionek.

Osadzanie czcionki bezpośrednio na stronie, odbywa się w arkuszu stylów (wewnętrznym lub zewnętrznym):

<html>
<head>
<style type="text/css">
/* <![CDATA[ */
@font-face {
	font-family: comic;
	src: url(http://adres/plik.ttf);
}
body {
	font-family: comic;
}
/* ]]> */
</style>
</head>
<body>
Ten tekst jest napisany czcionką osadzoną "comic".
<p style="font-family: comic">Ten akapit używa czcionki osadzonej "comic".</p>
</body>
</html>

Jako adres URL można podać także ścieżkę dostępu do pliku czcionki, wyznaczaną względem arkusza CSS, a nie dokumentu HTML, w którym ten arkusz został dołączony.

Opcjonalnie zaleca się podać również format pliku czcionki, aby przeglądarka nie pobierała fontu, którego nie potrafi wyświetlić ani żeby nie musiała się domyślać formatu na podstawie rozszerzenia nazwy pliku:

@font-face {
	font-family: comic;
	src: url(http://adres/plik.ttf) format("truetype");
}
Formaty czcionek
FormatOpisRozszerzenie
"truedoc-pfr"TrueDoc™ Portable Font Resource*.pfr
"embedded-opentype"Embedded OpenType*.eot
"type-1"PostScript™ Type 1*.pfb, *.pfa
"truetype"TrueType*.ttf
"opentype"OpenType, włącznie z TrueType Open*.ttf
"truetype-gx"TrueType z rozszerzeniem GX 
"speedo"Speedo 
"intellifont"Intellifont 

Źródło: Cascading Style Sheets, Level 2

Może się zdarzyć, że użytkownik będzie posiadał zainstalowaną niestandardową czcionkę w swoim systemie operacyjnym. Nie ma sensu wtedy pobierać jej z serwera. Jednak na podstawie samej nazwy pliku czy nazwy, jaką przypisaliśmy czcionce osadzonej, nie da się stwierdzić, jak naprawdę nazywa się ta czcionka. Dlatego konieczne jest jawne wpisanie jej nazwy (zwracam uwagę, że jest to pełna nazwa czcionki, a nie nazwa pliku, dlatego obowiązkowo trzeba ją ująć w cudzysłowy lub apostrofy!):

@font-face {
	font-family: comic;
	src: local("Comic Font Regular"), url(http://adres/plik.ttf) format("truetype");
}

MSIE 8 nie potrafi osadzić zewnętrznej czcionki w formacie *.ttf.

Przeglądarki takie jak: Firefox 3, Opera 10, Chrome 4 czy Safari bez problemu radzą sobie z wczytywaniem fontów wprost z plików *.ttf. Niestety Internet Explorer (od wersji 6 do 8) nie potrafi tego robić. Microsoft wprowadził za to własny format czcionek osadzonych - Embedded OpenType (pliki *.eot). Za pomocą specjalnego programu - WEFT można skonwertować do tego formatu czcionki, które są odpowiednio wyprodukowane i nie posiadają zakazu ich publikacji. Istnieją również inne konwertery formatu TTF -> EOT. Aby zatem osadzić na stronie niestandardową czcionkę, która będzie widoczna również dla Internet Explorera, trzeba się posłużyć następującym kodem:

@font-face {
	font-family: comic;
	src: url(http://adres/plik.eot);
	src: local("Comic Font Regular"), url(http://adres/plik.ttf) format("truetype");
}

Większość fontów jest licencjonowana, tzn. zwykle nie można legalnie osadzić ich na swojej stronie internetowej, nawet jeśli były wcześniej zainstalowane na Twoim komputerze.

Istnieją jednak serwisy WWW, gdzie można za darmo pobrać całą masę czcionek - nawet do użytku komercyjnego. Takim serwisem jest np. Font Squirrel - udostępnia on nie tylko pokaźny zbiór bezpłatnych czcionek, ale nawet gotowe paczki z wersjami tych samych fontów w formacie *.eot. Pamiętaj jednak, że używanie czcionek osadzonych wymaga pobrania dodatkowego pliku przez przeglądarkę, co trochę wydłuży czas wczytywania strony. Poza tym nie wszyscy użytkownicy lubią czytać tekst napisany fantazyjnymi, niestandardowymi fontami. Dlatego stosuj tę metodę rozsądnie.

Google Web Fonts

(interpretuje Internet Explorer 6.0, Firefox 3.5, Opera 10.5, Chrome 4.2/Safari 3.5)

Google Web Fonts to darmowa platforma, udostępniająca katalog czcionek ze szczególnym przeznaczeniem do osadzania na stronach internetowych. Co ważne, wszystkie fonty można używać całkowicie bezpłatnie - nawet na stronach komercyjnych. Można je również pobrać na swój dysk i samodzielnie zmodyfikować (np. dodając brakujące znaki) albo użyć w innym projekcie, niekoniecznie związanym ze stronami WWW.

Aby skorzystać z dowolnej czcionki, dostępnej w katalogu Google Web Fonts, nie trzeba nawet umieszczać na swoim serwerze żadnych plików. Mogą być one pobierane wprost z serwerów Google. Dzięki temu, jeżeli nasz czytelnik wcześniej odwiedzi inny serwis, w którym również była osadzona taka sama czcionka jak na naszej stronie, plik nie będzie musiał być pobierany ponownie, ponieważ będzie już zapisany w pamięci podręcznej przeglądarki użytkownika. Oczywiście osoby, które obawiają się, że Google kiedyś zaprzestanie udostępniania darmowych czcionek, mogą skopiować sobie pliki na własny serwer ;-)

<head>
	<link rel="Stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=rodzaj" />
	<style type="text/css">
	/* <![CDATA[ */
	selektor { font-family: rodzaj }
	/* ]]> */
	</style>
</head>

Jeżeli nazwa rodzaju czcionki zawiera spację, w adresie arkusza musi być ona zastąpiona znakiem plusa. Natomiast już wewnętrznym arkuszu CSS wstawiamy normalnie znak spacji. Oczywiście jako wartość atrybutu font-family powinny zostać podane po przecinku standardowo dostępne w systemach operacyjnych rodzaje czcionek, a na samym końcu nazwa rodziny ogólnej - podobne wyglądem do czcionki osadzonej. Dzięki temu, jeżeli przeglądarka użytkownika nie będzie obsługiwała mechanizmu osadzania czcionek, tekst wyświetli się innym, najbardziej zbliżonym krojem pisma.

Google udostępnia specjalne narzędzie do podglądu czcionek. Dzięki niemu można szybko wybrać czcionkę, ustawić jej wymagane atrybuty i od razu skopiować kod HTML gotowy do osadzenia na swojej stronie.

Nie każda czcionka z katalogu zawiera wszystkie polskie znaki diakrytyczne. Co prawda w takim przypadku większość przeglądarek wyświetli brakujące litery standardową czcionką (tylko MSIE 6.0 w ogóle nie potrafi wyświetlić brakujących znaków!), ale i tak nie wygląda to estetycznie. Dlatego zawsze dobrze jest sprawdzić rezultat przed wprowadzenie strony do Internetu.

Wersja czcionki

Czcionki mogą być udostępniane w kilku wersjach:

regular
Domyślnie
bold
b
Wytłuszczenie (pismo pogrubione)
italic
i
Kursywa (pismo pochylone)
bolditalic
bi
Jednocześnie kursywa i wytłuszczenie

Aby osadzić czcionkę w wybranej wersji - innej niż domyślna - nazwę lub skrót nazwy wersji należy wpisać w adresie arkusza CSS, doklejając ją do nazwy czcionki po znaku dwukropka. Jeżeli w jednym dokumencie (X)HTML korzystamy z kilku wersji tej samej czcionki, nazwy lub skróty nazw wersji wyliczamy po przecinku, np.:

<head>
	<link rel="Stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=rodzaj:bold,italic" />
</head>

Zwracam uwagę, że "bold,italic" nie jest tym samym co "bolditalic". W pierwszym przypadku możemy używać czcionki pogrubionej albo pochylonej do różnych tekstów, ale jeśli jeden tekst ma być napisany jednocześnie pismem pogrubionym i pochylonym, musimy skorzystać z drugiego przypadku. Nie należy jednak dołączać wszystkich możliwych wersji czcionki na zapas, ponieważ wydłuży to wczytywanie strony.

Alfabet

Niektóre czcionki potrafią wyświetlić pismo składające się z liter różnych alfabetów:

latin
Alfabet łaciński (m.in. język polski)
cyrillic
Cyrylica (m.in. język rosyjski)
greek
Alfabet grecki
khmer
Język khmerski (Kambodża, Wietnam i Tajlandia)
<head>
	<link rel="Stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=rodzaj&amp;subset=alfabet" />
</head>

Jeżeli na jednej stronie chcemy używać kilku alfabetów tej samej czcionki, nazwy alfabetów wymieniamy po znaku przecinka.

Lista czcionek

Jeżeli w jednym dokumencie (X)HTML chcemy skorzystać z kilku różnych rodzajów czcionek osadzonych, możemy oczywiście dołączyć kilka arkuszy CSS. Nie jest to jednak najlepsze rozwiązanie, ponieważ wydłuża czas potrzebny na załadowanie strony za pierwszym razem. Zwykle korzystniej wstawić tylko jeden arkusz, a w adresie podać po znaku o znaku "pipe" ("|") nazwy wszystkich potrzebnych czcionek (z ewentualnymi nazwami wersji - nie ma natomiast możliwości określenia osobnego alfabetu dla każdej czcionki), np.:

<head>
	<link rel="Stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=rodzaj1:bold,italic|rodzaj2" />
</head>

Nie należy dołączać wszystkich możliwych rodzajów czcionek na zapas, ponieważ wydłuży to wczytywanie strony. Jeżeli na jednej stronie używamy tylko pierwszego rodzaju czcionki, a na innej tylko drugiego, zwykle lepiej jest na każdej z nich dołączyć oddzielny arkusz. Być może użytkownik nigdy nie odwiedzi drugiej strony i wtedy plik drugiej czcionki nigdy nie będzie musiał być pobrany do pamięci podręcznej jego przeglądarki. Nawet jeśli czytelnik odwiedzi obie strony, pobieranie rozłoży się na raty, co również najczęściej będzie korzystniejsze.

Zobacz także

  • html
    HTML dla zielonych / Rodzaj czcionki

    W jaki zmienić rodzaj czcionki na stronie WWW?

  • html
    Tekst / Czcionka

    Jak kontrolować wygląd czcionki (tekstu): wielkość (rozmiar) czcionki, kolor tekstu, rodzaj czcionki (krój czcionki)? W jaki sposób maksymalnie zabezpieczyć się przed wyświetleniem tekstu niechcianym krojem czcionki?

  • html
    Tekst / Czcionka bazowa

    Jak ustalić czcionkę na całego tekstu na stronie WWW?

Komentarze

Zobacz więcej komentarzy