LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> CSS (5.) - Média

Dnes se podíváme na práci s různými typy médií v kaskádových stylech.

16.8.2004 13:00 | Vasek | Články autora | přečteno 15251×

Jednou z nejvýznamnějších vlastností kaskádových stylů je možnost určit formu prezentace dokumentu zvlášť pro různé druhy výstupních medií, např. obrazovku, papír, hlasový syntetizér, výstup v braillově písmu apod.

Tyto výstupní zařízení se označují jako média a v CSS se rozdělují do několika skupin. Jednotlivé typy médií někdy vyžadují různé hodnoty jednotlivých vlastností (např. velikost fontu pro obrazovku je větší než velikost fontu pro tisk). Některé vlastnosti kaskádových stylů jsou vyhrazeny pouze určitým mediím(např. cue-before lze použít jen pro hlasový výstup).

Typy médií

V současnosti lze v kaskádových stylech používat tyto typy médií:

all
všechny typy zařízení
aural
zvukový výstup na hlasovém syntezátoru
braille
braillská dotyková zařízení (braillský řádek)
embossed
stránka zobrazená plastickým tiskem na braillské tiskárně
handheld
obrazovka kapesního počítače (nejčastěji malý monochromatický displej a malá rychlost přenosu dat)
print
stránky vytištěné na tiskárně nebo dokumenty zobrazené na obrazovce v režimu tiskového náhledu
projection
promítané prezentace (velkoplošné projektory či zpětné projektory)
screen
obrazovka počítače (s podporou zobrazení barev a bitmapové grafiky)
tty
neproporční znakový výstup (dálnopisy, terminály atd.)
tv
televizní obrazovka a podobná zařízení (společnými vlastnostmi je nízké rozlišení, omezené možnosti posouvání obrazu a možnost použití barev a zvuku)

Na velikosti písmen v názvech typů medií nezáleží.

Jednotlivá média jsou navzájem neslučitelná. Každý klient musí při zpracování dokumentu podporovat pouze jediný typ médií. Ale není vyloučeno, že klienty mohou obsahovat více modulů (režimů), z nichž podporuje každý jiný typ medií (ale vždy jen jeden jediný).

Skupiny médíí

U každé CSS vlastnosti je stanoveno, pro jaký typ médií se může použít. Jelikož však mnoha vlastnostem odpovídá více médií, vznikly skupiny médíí, které se uvádí u jednotlivých vlastností. Příslušnou vlastnost lze použít pro všechny média patřící do uvedené skupiny. V kaskádových stylech je nadefinováno několik skupin médií podle různých hledisek.

  • Média stránková-plynulá:
    • stránková: emboss, handheld, print, projection, tv
    • plynulá: aural, braille, handheld, screen, tty, tv
  • Média zvuková-vizuální-dotyková:
    • zvuková: aural, tv
    • vizuální: handheld, print, projection, screen, tty, tv
    • dotyková: braille, emboss
  • Média s pevnou mřížkou-bitmapová:
    • s pevnou mřížkou: braille, emboss, handheld, tty
    • bitmapová: handheld, print, projection, screen, tv
  • Média interaktivní-statická:
    • interaktivní: aural, braille, handheld, projection, screen, tty, tv
    • statická: aural, braille, emboss, handheld, print, projection, screen, tty, tv

Způsob definice stylu pro určité médium

Existují dva způsoby určení platnosti kaskádového stylu pro konkrétní médium:

  • médium se určí přímo v dokumentu. V html k tomu slouží atribut media tagů link nebo style
  • médium se určí přímo ve stylovém předpisu at-pravidly @media nebo @import

Specifikování média v dokumentu

Jazyky dokumentů rozpoznávají atribut media tagů link nebo style. Hodnotu tohoto atributu je seznam médií oddělených od sebe čárkou.

Příklady:
<link rel="stylesheet" type="text/css" media="print, handheld" href="foo.css">

<style type="text/css" media="print">
...
</style>

Dle specifikace HTML má atribut media výchozí hodnotu screen, ale prohlížeče se většinou chovají, jako by byla nastavena hodnota all. V XHTML je výchozí hodnotou all.

at-pravidla

At-pravidlo @media určuje typy cílových medií pro sady pravidel následujících za pravidlem @media. Pokud chceme pravidlo @media použít pro více medií odělujií se čárkou. Příkazem @media označíme část tabulky stylů jako platnou pro dané médium.

Příklady:
  @media print {
    body { font-size: 10pt; }
  }

  @media screen {
    body { font-size: 12pt; }
  }

  @media print, screen {
    body { line-height: 1.2; }
  }

Uvnitř bloku @media není možné použít import další tabulky stylů pomocí příkazu @import. Namísto toho lze použít definování médií přímo v příkazu @import.

Příklady:
  @import url("styl_tisk.css") print; 

Závěr

Kaskádové styly podporují šikoké spektrum médií, a do budoucna se dá počítat ještě s dalším rozšířením. V praxi se ale můžete setkat jen s typem screen, print, a ve výjimečných případech ještě aural, braille, ostatní typy médií se v podstatě nepoužívají z důvodu jejich nejednoznačné definice v CSS (resp. z důvodu nejednoznačných definic práce s nimi), řešení těchto nedostatků má přinést připravovaná verze 3 kaskádových stylů.

Verze pro tisk

pridej.cz

 

DISKUZE

Nejsou žádné diskuzní příspěvky u dané položky.



Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

13.9.2017 8:00 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt – tentokrát netradičně v pondělí: 18. září od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

3.9.2017 20:45 /Redakce Linuxsoft.cz
PR: Dne 21. září 2017 proběhne v Praze konference "Mobilní řešení pro business". Hlavní tématy konference budou: nejnovější trendy v oblasti mobilních řešení pro firmy, efektivní využití mobilních zařízení, bezpečnostní rizika a řešení pro jejich omezení, správa mobilních zařízení ve firmách a další.
Přidat komentář

15.5.2017 23:50 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt, který se bude konat ve čtvrtek 18. května od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

12.5.2017 16:42 /Honza Javorek
PyCon CZ, česká konference o programovacím jazyce Python, se po dvou úspěšných ročnících v Brně bude letos konat v Praze, a to 8. až 10. června. Na konferenci letos zavítá např. i Armin Ronacher, známý především jako autor frameworku Flask, šablon Jinja2/Twig, a dalších projektů. Těšit se můžete na přednášky o datové analytice, tvorbě webu, testování, tvorbě API, učení a mentorování programování, přednášky o rozvoji komunity, o použití Pythonu ve vědě nebo k ovládání nejrůznějších zařízení (MicroPython). Na vlastní prsty si můžete na workshopech vyzkoušet postavit Pythonem ovládaného robota, naučit se učit šestileté děti programovat, efektivně testovat nebo si v Pythonu pohrát s kartografickým materiálem. Kupujte lístky, dokud jsou.
Přidat komentář

2.5.2017 9:20 /Eva Rázgová
Putovní konference československé Drupal komunity "DrupalCamp Československo" se tentokrát koná 27. 5.2017 na VUT FIT v Brně. Můžete načerpat a vyměnit si zkušenosti z oblasti Drupalu 7 a 8, UX, SEO, managementu týmového vývoje, využití Dockeru pro Drupal a dalších. Vítáni jsou nováčci i experti. Akci pořádají Slovenská Drupal Asociácia a česká Asociace pro Drupal. Registrace na webu .
Přidat komentář

1.5.2017 20:31 /Pavel `Goldenfish' Kysilka
PR: 25.5.2017 proběhne v Praze konference na téma Firemní informační systémy. Hlavními tématy jsou: Informační systémy s vlastní inteligencí, efektivní práce s dokumenty, mobilní přístup k datům nebo využívání cloudu.
Přidat komentář

15.4.2017 15:20 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě IoT a radiokomunikace? Přijď na sraz spolku OpenAlt, který se bude konat ve středu 19. dubna od 18:30 v Šenkovně (Sokolská 60, Praha 2).
Přidat komentář

5.3.2017 19:12 /Redakce Linuxsoft.cz
PR: 23. března proběhne v Praze konferenci na téma Cloud computing v praxi. Hlavními tématy jsou: Nejžhavější trendy v oblasti cloudu a cloudových řešení, Moderní cloudové služby, Infrastruktura současných cloudů, Efektivní využití cloudu, Nástrahy cloudových řešení a jak se jim vyhnout.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

18.9.2017 14:37 / Rojas
high security vault

15.9.2017 7:33 / Wilson
new zealand childcare jobs

31.8.2017 12:11 / Jaromir Obr
Re: ukůládání dat ze souboru

30.7.2017 11:12 / Jaromir Obr
Národní znaky

27.7.2017 12:24 / Jaromir Obr
Cteni/zapis

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2017) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze