Sova v síti - 2/1 - vydáno 14.1.2002 Dobrý den, vítáme vás u první Sovy v síti roku 2002 :-) OBSAH -- Jak nastavit písmo pro češtinu -- XHTML -- buďte striktní -- Zajímavé články jinde na webu -- Novinky u Petra Kocny -- Novinky pro webmastery na Slunečnici -- Odpovídáme na dotazy čtenářů JAK NASTAVIT PÍSMO PRO ČEŠTINU Martin Kopta Pokud se ohlédnu za pěti lety, po které se zabývám webdesignem, přijde mi, že nejčastějším problémem začínajících tvůrců webu (mě nevyjímaje) je nastavování písma. Písmo, respektive font můžeme nastavovat buď postaru ještě v HTML, nebo lépe už definováním kaskádových stylů. Zopakujeme si nejprve, jak se písmo definuje, a pak se zamyslíme nad tím, jak písmo volit, aby na všech operačních systémech bylo zobrazeno správně. V kaskádových stylech se fonty nastavují vlastností font, respektive font-family. Tato vlastnost může obsahovat buď jeden název fontu nebo jejich seznam oddělovaný čárkou. Písma mohou být uvedena buď svým názvem nebo typem. Základní typy písma jsou pro kaskádové styly zjednodušeny jen do pěti kategorií: serif . . . . . . patkové (Times, Georgia, Garamond) sans-serif . . . . lineární (Arial, Helvetica, Verdana) monospace . . . . strojopisné (Courier New, Andale Mono) cursive . . . . . kaligrafovaná fantasy . . . . . volně psaná (Comic Sans MS) Typograf by asi nesouhlasil se zařazením Verdany pod sans-serif, protože má patky a cursive by nepřekládal jako kaligrafované (krásně psané) písmo, ale pro naše účely je tato klasifikace nejpřehlednější. Pokud v definici písma uvádíme názvy fontů, které se skládají z více slov, musíme je vkládat do uvozovek nebo apostrofů (každý název zvlášť). Definice strojopisného písma by pak mohla vypadat následovně: font-family: "Courier New", monospace; K nejčastějším chybám při zápisu definice písma patří vložení seznamu písem do uvozovek -- tehdy se prohlížeč domnívá, že celý seznam je názvem fontu. Existují ovšem i chyby skryté. Daleko závažnějším oříškem se pro tvůrce webu stává definice písma pro jiné platformy než jsou Windows 98 a novější. Prohlížeč prochází seznam písem zleva doprava a postupně se snaží nalézt požadované písmo a v něm text zobrazit. Pokud písmo není k dispozici, přesune svou pozornost na následující, dokud nedojde na konec. Proto je nejdůležitější zásadou pro definování písma je ukončovat seznam obecným typem písma. Pokud nastavíte písmo pouze obecným typem, pak pro ně prohlížeč zvolí font, který je pro daný typ přednastavený. Typy cursive a fantasy obvykle nebývají vhodně přednastaveny a zobrazují se jako Times New Roman nebo písmo obdobné. Obvykle tedy máme na výběr pouze první tři písmové typy. Pokud se spolehnete pouze na tovární nastavení prohlížečů, pak můžete očekávat, že serif bude na PC zobrazen jako Times, sans-serif jako Arial a monospace jako Courier. Mnozí uživatelé si ale písmo mění (já třeba na Georgii a Verdanu), a zároveň se jako webdesigneři málokdy spokojíme s tím, aby text byl prostě zobrazen nějakým lineárním písmem. Dnes je velmi oblíbená Verdana, takže bychom ji nastavili následovně: font-family: Verdana, sans-serif; Jenže pokud si takto nastavený text prohlédnou uživatelé starých Windows, Linuxu nebo Macintoshe -- jinými slovy čehokoli jiného než nových Windows, patrně se jim text zobrazí fontem určeným pro západoevropské jazyky. Tady můžeme využít postupného dosazování písem a pokusit se najít písmo, které je v češtině. Pro Macintoshe to znamená třeba Verdanu CE (nezapomeňte, že se její název skládá z více slov): font-family: "Verdana CE", Verdana, sans-serif; Bohužel ale na některých platformách Verdana CE neexistuje ale je pravděpodobné, že západoevropská Verdana ano -- například na některých distribucích Linuxu. Tady bychom měli zkusit najít písmo, které Verdanu může zastoupit. Tím písmem může být Helvetica CE. Verdaně se vzhledem nepodobá, ale je alespoň lineární a obsahuje české znaky. Helvetica CE ale často existuje na Macintoshi, ale a něm je i Verdana CE, takže Helveticu bychom měli dát až za Verdanu CE: font-family: "Verdana CE", "Helvetica CE", Verdana, sans-serif; Na Windows se ale třeba s PostScriptem může dostat i písmo Helvetica CE. Už se nám to nádherně komplikuje. Podobný postup můžete zvolit pro kterékoli jiné lineární písmo z Windows. Helvetica a sans-serif by měly zůstat na stejném místě, ostatní můžete dle libosti zaměnit -- uživatelé MacOS a Windows pak mají velkou šanci číst text v tom fontu, který jste zamýšleli, ostatní pak alespoň uvidí české znaky. Pokud nemáte k dispozici přehled o tom, jaká písma které platformy obsahují už při instalaci, je vhodné řídit se tímto pravidlem. Základní písma Windows se na MacOS instalují spolu s Internet Explorerem, nejsou tedy součástí běžné instalace. Písma, jejichž název končí na MS pod jinými platformami v češtině budete hledat pravděpodobně zbytečně. Při výběru fontů pro písma patková se můžeme opřít o Times a Times CE, která se objevují na většině platforem. Pokud byste třeba zatoužili po písmu Georgia, doporučuji následující zápis: font-family: "Georgia CE", "Times CE", Georgia, serif; Na nových Windows existuje ještě písmo Times New Roman, ale také se ovšem může stát, že se na Windows s nějakým programem dodatečně nainstaluje Times CE, který Georgii přebije. U písma strojopisného je nejrozšířenější Courier, definice pak třeba pro písmo Lucida Console může vypadat následovně: font-family: "Lucida Console CE", "Courier CE", "Lucida Console", monospace; I tady nám hrozí, že i uživatelé Windows budou stránku prohlížet v Courieru. Dokonce je velmi pravděpodobné, že neexistuje písmo Lucida Console CE. Sám jsem se s ním ještě nesetkal ani na MacOS, ani pod Linuxem. Ale už jsem se tolikrát spletl, že bych ho v definici nechal pro případ, že opravdu existuje. Vidíte, že vždycky se může něco zvrtnout a celé to nastavování písem bude k ničemu. V kaskádových stylech existuje způsob, jak text zobrazovat ve fontu, který umístíme jako soubor na web. Tato možnost je rozumně podporována jen v Internet Exploreru, ale písmo zůstává pilovité, na obrazovce se nevyhlazuje a hodí se proto především pro kratší texty psané v menších velikostech. Pokud byste měli zájem takové písmo si vytvořit, vhodný nástroj najdete na webu Microsoftu: http://www.microsoft.com/typography Zatím bych se ale spokojil jen s definicí obecného typu písma. Pokud si chcete být jisti tím, že všichni uživatelé uvidí text správně česky, prostě se musíte rozloučit s definováním písma názvem fontu. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Starší čísla naleznete na http://www.sovavsiti.cz/archiv.html Více odkazů pro webmastery na http://www.sovavsiti.cz/odkazy.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ XHTML -- BUĎTE STRIKTNÍ Marek Prokop Moderní web směřuje k důslednému oddělení formy od obsahu. Prezentační prvky a atributy HTML vyklízejí pole kaskádovým stylů. Své nejdůslednější vyjádření nachází tento trend ve "striktních" variantách norem HTML 4 a zejména XHTML 1. O XHTML jsem psal v Sově již dvakrát a v tom druhém případě jsem vám v článku "Jak přejít na XHTML" [1] popsal způsob, jak přetvořit stránky v HTML 4 a nižším do XHTML. To jsem ovšem uvažoval měkčí, přechodnou normu XHTML Transitional. Chcete-li být opravdu důslední, můžete spolu s námi zkusit tvrdou normu XHTML Strict. Pokud již máte stránku splňující normu XHTML Transitional, bude začátek velmi snadný. V první řádce změňte typ dokumentu z na Hned poté si můžete zkusit správnost stránky ověřit validátorem W3C [2] a pravděpodobně zjistíte, že vás čeká ještě plno práce. Abych vám ji usnadnil, shrnu postupně všechna pravidla XHTML Strict, kterými se liší od normy XHTML Transitional. + Zakázané značky Z XHTML Strict jsou oproti ostatním, mírnějším normám zcela vypuštěny tyto značky: applet -- Java applet basefont -- základní font dokumentu center -- horizontálně centrovaný blok dir -- seznam adresářů font -- nastavení písma iframe -- vložený (inline) rámec isindex -- jednořádkový vstup menu -- nabídkový seznam noframes -- alternativní obsah rámců s -- přeškrtnutý text strike -- přeškrtnutý text u -- podtržený text Některé z nich jsou používány málokdy (basefont, dir, menu, isindex), avšak používáte-li k centrování značku