Dotazy na médium KAPITOLA 4. V této kapitole: Zkoumáme vlastnosti média Dotazy na médium v praxi Využíváme příležitost



Podobné dokumenty
Dokument XHTML. Prohlížeč. styl CSS. Výstupní dokument. Soubor DTD

RESPONZIVNÍ WEBDESIGN INFORMAČNÍCH SYSTÉMŮ RESPONSIVE WEBDESIGN OF INFORM SYSTEMS

Vývoj Internetových Aplikací

Kaskadové styly (CSS) VOŠG Hellichova Praha 2010 Jirka Jahoda

Tématická oblast: dědičnost, kaskáda. CSS a média. Stylové předpisy pro různé typy zobrazovacích zařízení

Výukový materiál vytvořen v rámci projektu EU peníze školám. "Inovace výuky" registrační číslo CZ.1.07/1.5.00/

Tvorba přizpůsobivých webových rozhraní

Kaskádové styly základy grafiky

Internetové publikování. Doc. Ing. Petr Zámostný, Ph.D. místnost: A-72a tel.: 4222, 4167 (sekretariát ústavu 111)

Tvorba webových stránek

INTERNET A SÍTĚ. Role při tvorbě webových aplikací. Rozhodovací vrstvy při tvorbě webových aplikací. povrch kostra struktura obsah strategie

APLIKACE XML PRO INTERNET

Peter Gasston CSS3 Computer Press Brno 2016

Úvod do počítačové grafiky

Kaskádové styly (CSS)

KIV/PIA 2012 Ing. Jan Tichava

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace

Návrh stránek 4IZ228 tvorba webových stránek a aplikací

Tvorba webu. Tabulkový layout a linky. Martin Urza

Inovace výuky prostřednictvím šablon pro SŠ

TNPW1 Cvičení aneta.bartuskova@uhk.cz

TNPW1 Cvičení aneta.bartuskova@uhk.cz

Název: VY_32_INOVACE_PG4120 Literatura, online zdroje informací, testy

Mgr. Vlastislav Kučera Struktura stránky, hlavička,

Úvod do CSS. Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm. Modernizace výuky s využitím ICT, CZ.1.07/1.5.00/34.

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

HTML Hypertext Markup Language

HTML - Úvod. Zpracoval: Petr Lasák

13. Vytváření webových stránek

Rozměry, okraje a rámečky

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Barvy a barevné modely. Počítačová grafika

Jak postavit webovou stránku pro mobilní zařízení. Lukáš Kokoška

Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky Bakalářská práce 2014 Zdeňka Hatnianková

MODERNÍ WEB SNADNO A RYCHLE

Pokročilé techniky tvorby sestav v Caché. ZENové Reporty

Nové přístupy tvorby web site. Doc. Ing. Zdeněk Havlíček, CSc. KIT PEF CZU - 13/11/2001

Univerzita Hradec Králové. Fakulta informatiky a managementu. Katedra informatiky a kvantitativních metod

Mgr. Vlastislav Kučera lekce č. 2

TNPW1 Cvičení

Soubor index.html se nachází na stejné úrovni jako adresář obrazky. Měla bych použít relativní adresu, že? Hmm.

NSWI096 - INTERNET. CSS kaskádové styly. Mgr. Petr Lasák

Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_92_IVT_HTML_12_nase_www

Tvorba www-stránek. Příkazy jazyka HTML. Budeme pracovat následovně: Základní struktura webové stránky. Příkazy sekce HEAD

Informatika pro moderní fyziky (8) Javascript, CSS - stylování dokumentů, SVG - tvorba obrázků, složitější interaktivní dokument

Odborný časopis pro excelentní studentské práce. Ročník: Číslo: 2 ISSN: X

Webové stránky. 4. Tvorba základní HTML webové stránky. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

CSS styly. Cascading Style Sheets kaskádové styly

WWW a HTML. Základní pojmy. Ivo Peterka

tvoříme web Bootstrap

Mgr. Vlastislav Kučera přednáška č. 2

Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_135_IVT_HTML_08_tvorba_www

Tvorba webových stránek

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Tvorba přizpůsobivých webových rozhraní

Název modulu: Tvorba webu pomocí XHTML a CSS začátečníci

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

KAPITOLA 1 Přehled aktuálního vývoje webů 11

Základy HTML. Autor: Palito

1. Struktura stránky, zásady při psaní kódu, MVC pattern. Web pro kodéry (Petr Kosnar, ČVUT, FJFI, KFE, PINF 2008)

22. Tvorba webových stránek

CSS Stylování stránek. Zpracoval: Petr Lasák

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

Čtvrtek 11. dubna. Základy HTML. Obecná syntaxe HTML. Struktura HTML

Tvorba fotogalerie v HTML str.1

Flexibilní design webových stránek pro různá zobrazovací zařízení

Jazyk XSL XPath XPath XML. Jazyk XSL - rychlá transformace dokumentů. PhDr. Milan Novák, Ph.D. KIN PF JU České Budějovice. 9.

Co nového přinese HbbTV 2.0

Návod na Lync webinář

David Tejzr I.2.C Společnost TzComp.cz

tipu pro kvalitní tisk Na jednoduchých příkladech Vám ukážeme jak postupovat a na co si dávat pozor při přípravě podkladů pro kvalitní tisk.

Zadávací dokumentace k výběrovému řízení pro redesign firemních webových stránek společnosti Web4ce, s.r.o.

Základy CSS (3. přednáška)

Základy informatiky. HTML, tvorba WWW stránek. Daniela Szturcová Část převzata z přednášky P. Děrgela

Název: VY_32_INOVACE_PG4113 Relativní pozicovaní a jeho využití

HLEDEJCENY.mobi. Obsah. Mobilní verze e-shopu. Důvody instalace

Úvod do tvorby internetových stránek v jazyce HTML

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Název: VY_32_INOVACE_PG4119 Tipy a triky, rozdíly mezi prohlížeči

Buňka tabulky; tento tag doporučuju psát opět jako párový. Nyní již máme dostatek informací k tomu, abychom dokázali sestrojit jednoduchou tabulku.

VYTVÁŘENÍ DATABÁZÍ, VKLÁDÁNÍ ÚDAJŮ

BRIEF & KONCEPCE / ETAPA O.

Techniky rozvržení KAPITOLA 2

HTML stránka vložení obrázku

Základy WWW publikování

Tvorba webu. Úvod a základní principy. Martin Urza

Možnosti tisku v MarushkaDesignu

Digitalizace dat metodika

Obsah. Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

Přístupnost webů knihoven příklady dobré a špatné praxe. Radek PAVLÍČEK, TyfloCentrum Brno, o. p. s., projekt Blind Friendly Web

Mgr. Vlastislav Kučera přednáška č. 1

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14

================================================================================ =====

DUM č. 14 v sadě. 31. Inf-7 Technické vybavení počítačů

24. XML. Aby se dokument XML vůbec zobrazil musí být well-formed (správně strukturovaný). To znamená, že splňuje formální požadavky specifikace XML.

CSS 1 Relativní pozicování Relativní pozicované bloky jsou pozicované vůči nornálnímu toku elementů dokumentu. (nejsou vyjmuty z normálního toku jako

1. Začínáme s FrontPage

KASKÁDOVÉ STYLY - PÍSMO

Přehled základních html tagů

Transkript:

Dotazy na médium KAPITOLA 4 V této kapitole: Zkoumáme vlastnosti média Dotazy na médium v praxi Využíváme příležitost Dotazy na médium tvoří třetí pilíř responzivního webdesignu. Jedná se o rozšíření specifikace HTML5, jež umožnuje, aby schopnosti obrazovky určovaly, jaké prohlížeč aplikuje kaskádové styly (jak je definuje modul jazyka CSS3 1 ). Prohlížeč tedy kupříkladu rozpozná mobilní zařízení otočené svisle s průhledem o šířce 320 pixelů od monitoru desktopového počítače s průhledem o šířce 1 024 a může uplatnit jiné kaskádové styly. Standardně vývojáři přizpůsobují rozvržení, pozadí a obrázky, ale samozřejmě je možné použít zcela novou sadu stylů. Existují tři způsoby, jak aplikovat kaskádové styly v závislosti na dotazech na médium. Zaprvé jako šablony stylů v elementu link jazyka HTML nebo XHTML: <link rel= stylesheet type= text/css media= all and (color) href= /styly.css > Zadruhé v jazyce XML: <?xml-stylesheet media= all and (color) rel= stylesheet href= /styly.css > A nakonec v šablonách stylů prostřednictvím pravidel @import: @import url( /styly.css ) all and (color); nebo pomocí pravidel @media: @media all and (color) { /* deklarace vlastností */ } Responzivní webdesign poskytuje nástroje pro tvorbu rozvržení, na které se můžeme spoléhat. Díky tomu se můžeme soustředit více na obsah, kvůli němuž se k nám uživatelé budou rádi vracet. 1 http://www.w3.org/tr/css3-mediaqueries/ 83

KAPITOLA 4 Dotazy na médium Jak ukazuje obrázek 4.1, moderní zařízení mají rozdílné schopnosti a požadavky, co se týká prostředků a stylování. Naštěstí je syntaxe dotazů na médium jednoduchá, a navíc je široce rozšířená i používaná ve skutečnosti jsme se s ní dosud setkali ve všech kapitolách této knihy. Obrázek 4.1. Obrazové prostředky na cílových zařízeních Běžně se snažíme omezovat kaskádové styly pro jednotlivá cílová zařízení. Začínáme od obecných stylů a pokračujeme styly pro konkrétní zařízení. Nezaměřujeme se přitom ale jen na styly, důležité jsou také prostředky zobrazované těmito styly. Na obrázku 4.2 lze vidět, že kdybychom zobrazili pozadí o šířce 1 920 pixelů na obrazovce široké 320 pixelů z obrázku 4.1, odesílali bychom 14krát větší obrázek, než je nutné. To by mělo negativní dopad na datový přenos a výkon, a to zcela zbytečně. 84

Pořizujeme obrázek Obrázek 4.2. Náš malý obrázek se vleze do velkého obrázku přibližně 14krát Ukažme si dotaz na médium určený pro telefon iphone 5: @media only screen and (min-device-width: 640px) and (max-device-width: 1136px) and (-webkit-min-device-pixel-ratio: 2) { /* Cíleno na telefon iphone5. */ } Tato syntaxe je jistě povědomá. Setkali jsme se již s vlastností device-width u elementu meta typu viewport a s vlastností device-pixel-ration u elementu picture. Kromě toho jsou dotazy na médium příbuzné s typy média, které spatřily světlo světa v roce 1998 jako součást specifikace jazyka CSS 2.0. 2 2 http://www.w3.org/tr/2008/rec-css2-20080411/ 85

KAPITOLA 4 Dotazy na médium Zkoumáme vlastnosti média Dotazy na médium jsou mocným nástrojem, i když se spoléháte jen na vlastnost device-width. Nezapomínejte však, že se nemusíte omezovat jen na šířku zařízení. Specifikace 3 počítá s 13 vlastnostmi média width, height, device-width, device-height, orientation, aspect-ratio, device-aspect-ratio, color, color-index, monochrome, resolution, scan a grid. Téměř všechny vlastnosti (s výjimkou vlastností scan a grid) můžou mít předpony min- a max-. Míra kontroly je ohromná a budí úžas. Jestliže jste už teď nadšení z množství možností, nezapomínejte, že s vlastnostmi dotazů na médium pracujete v jazyce CSS, a proto můžou výrobci prohlížečů přidávat také proprietární předpony například jako u vlastnosti -webkit-device-min-pixel-ration, kterou společnost Apple umožňuje detekovat zařízení s Retina displeji. Navíc existuje spousta jiných předpon než jen -webkit-: @media only screen and (-webkit-min-device-pixel-ratio: 2) and (min-width: 320px), only screen and (min--moz-device-pixel-ratio: 2) and (min-width: 320px), only screen and (-o-min-device-pixel-ratio: 2/1) and (min-width: 320px), only screen and (min-device-pixel-ratio: 2) and (min-width: 320px) { /* Styly pro Retina/AMOLED displeje. */ } Poslední vlastnost nemá žádnou předponu. Všichni vývojáři doufají, že jednoho dne to bude stačit pro všechny webové prohlížeče. Pryč jsou dny, kdy nás mohla příruční zařízení dostat do potíží. Dnes musíme myslet na všechny možnosti a rozmyslet si řádně design a způsob vývoje. Právě správný úsudek je nejtěžší, abychom nepodlehli svodům vytvářet stále specifičtější dotazy na médium. Telefon iphone 5 s operačním systémem ios6 získal navíc oproti svému předchůdci 176 pixelů na výšku. Je však nepravděpodobné, že bychom potřebovali cílit na telefony iphone pomocí podmínky max-device-height: 960px. Kdybychom to ale udělali, přehlédli bychom všechny telefony iphone 5 (viz obrázek 4.3). 3 http://www.w3.org/tr/css3-mediaqueries/#contents 86

Zkoumáme vlastnosti média Obrázek 4.3. Srovnání výšky obrazovky telefonu iphone 4 a iphone 5 Pravdou je, že můžete odlišit telefon iphone 5 od jeho předchůdců pomocí vlastnosti device-height, ale musíte rovněž počítat s tím, že například zápatí, které jste tak pracně rozvrhli pro telefon iphone 4S, bude umístěné 176 pixelů nad spodkem obrazovky. Když iphone 5 získal 176 pixelů, jak na tom budou další generace? Nezapomínejte, že byste měli psát kaskádové styly tak, aby to nemělo negativní dopad na vzhled vaší aplikace na žádném zařízení ať už současném nebo budoucím abyste nemuseli přepisovat kód pro všechny nové rozměry. Proto bychom si měli ve stručnosti popsat syntaxi pro kontrolu vlastností. Seznam dotazů na médium je textový řetězec s dotazy na médium oddělenými čárkami: <link rel= stylesheet media= screen and (color), projection and (color) href= priklad.css > V případě, že je některý dotaz na médium v seznamu pravdivý, je pravdivý také celý seznam. Kdyby byl kupříkladu pravdivý dotaz na médium screen and (color) z výše uvedeného seznamu screen and (color), projection and (color), tento seznam by byl pravdivý. Oddělení dotazů na médium čárkami reprezentuje logickou operaci OR, přičemž v jednotlivých dotazech můžeme používat klíčové slovo and, abychom vyjádřili logickou operaci AND. Při logické operaci OR postačí, když danou podmínku splní libovolná vlastnost, kdežto s logickou operací AND ji musí splnit všechny vlastnosti. Předchozím seznamem dotazů na médium tudíž ověřujeme, zda je zařízení schopné zobrazovat naše stránky barevně na obrazovce nebo projektoru. Pokud toto zařízení splní naše podmínky, prohlížeč načte danou šablonu stylů. 87

KAPITOLA 4 Dotazy na médium S klíčovým slovem not můžeme vyloučit vlastnost, takže v níže uvedeném dotazu na médium cílíme na telefony iphone, ale bez Retina displeje. Vyhledáme tak například telefon iphone 3, ale už ne telefon iphone 5: @media only screen (min-device-width: 640px) and not (-webkit-min-device-pixel-ratio: 2) { /* styly pro telefony bez vyšší hustoty pixelů */ } Koneckonců syntaxe dotazů na médium je přehledná a lze ji snadno číst a pochopit. Pouze byste si měli dávat pozor na implicitní logické operace OR. Kdyby se skupiny W3C a WHATWG rozhodly pro element picture místo atributu src-set, syntaxi dotazů na médium byste zužitkovali ještě více. Podpora vlastností média U dotazů na médium se můžeme soustředit převážně na rozměrové vlastnosti, jimiž jsou vlastnosti width, height, device-width a device-height. Ty jsou jednak srozumitelné, ale také mají dobrou podporu napříč prohlížeči. Musíme si však pamatovat, že vlastnost width odpovídá šířce průhledu prohlížeče, zatímco vlastnost device-width odpovídá šířce obrazovky zařízení, jak lze vidět na obrázku 4.4. Obrázek 4.4. Srovnání elementů width a device-width Projděme si v rychlosti zbylé vlastnosti média pro lepší představu o jejich užitečnosti: orientation určuje, jestli je zařízení otočené v režimu portrétu (svisle) nebo krajiny (vodorovně), aspect-ratio poměr stran obrazovky (například 16:9 nebo 4:3), 88

Dotazy na médium v praxi resolution bodů na palec (DPI) nebo bodů na centimetr (DPCM), scan typ obrazovky cílí na televizory s progresivním skenováním, grid hledá obrazovky Teletype nebo zařízení s pevným písmem, monochrome ověřuje počet bitů na pixel v monochromatické vyrovnávací paměti, přičemž hodnota 0 značí, že daná obrazovka není monochromatická, color ověřuje počet bitů na barvu, přičemž hodnota 0 značí, že daná obrazovka není barevná, color-index ověřuje počet položek v indexové tabulce barev daného zařízení, přičemž hodnota 0 značí, že daná obrazovka není barevná. Pokud chcete poznat vlastnosti média důkladně, měli byste znát poměr stran, rozlišení, otočení a barevnost obrazovek. S těmito termíny jste se jistě setkali, když jste vytvářeli grafiku pro web. Jsou rovněž v souladu s terminologií specifikace HTML5. 4 Křivka učení je tedy velmi strmá. Třebaže podpora těchto vlastností v prohlížečích není jednotná, i nerozměrové vlastnosti by vám měly být povědomé, jelikož použitá terminologie je poměrně standardní pro webové odvětví. Vlastnosti scan a grid nemusí být jasné všem moderním vývojářům, protože jsou určené pro specifické typy zařízení, které však budou vývojáři pro tato zařízení jistě znát. Kdybyste například vyvíjeli aplikace pro televizory, jistě byste poznali vlastnost scan a princip progresivního skenování. 5 Poznámka: Co se stalo s typy média? Měli bychom si uvědomit, že ačkoliv se zabýváme responzivním webdesignem, neměli bychom zapomínat také na další vlivy na naše aplikace. Třebaže se učíme RWD, neměli bychom přehlížet přístupnost, lokalizaci nebo to, jak budou naše aplikace vypadat na nestandardních displejích. Naše dotazy na médium budou obvykle obsahovat typ média screen, ale existují rovněž jiné možnosti. 6 Protože používat dotazy na médium je nejlepší způsob, jak se s nimi seznámit, přesuneme se k praktickému cvičení. Dotazy na médium v praxi Naše stránka WDS už obsahuje několik dotazů na médium. Obrázek 4.5 ukazuje, jak vypadá záhlaví této stránky v prohlížečích širších než 800 pixelů a užších než 800 pixelů. 4 https://developer.mozilla.org/en-us/docs/web/guide/css/media_queries 5 http://en.wikipedia.org/wiki/progressive_scan 6 http://drafts.csswg.org/mediaqueries3/#background 89

KAPITOLA 4 Dotazy na médium Obrázek 4.5. Obrázky o šířce 1 366 a 700 pixelů definované pomocí dotazů na médium Vzhled stránky zůstává konzistentní, a co je důležitější prohlížeč stahuje nejmenší možné množství dat. Co je cílem? Prohlédněte si obrázek 4.6. 90

Dotazy na médium v praxi Obrázek 4.6. Náš cíl: zápatí stránky WDS při šířce 1 440, 960, 800 a 480 pixelů Stránka WDS aplikuje dotazy na médium prostřednictvím elementu link a syntaxe jazyka CSS. Prvním místem, kde prohlížeč hledá šablony stylů, je element head. Nyní tyto elementy deaktivujeme komentáři: kapitola4/wds/index.html (úryvek) <!-- <link rel= stylesheet media= all and (max-width: 800px) href= stylesheets/799max.min.css > --> <!-- <link rel= stylesheet media= all and (min-width: 800px) href= stylesheets/800plus.min.css > --> <!-- <link rel= stylesheet media= all and (min-width: 800px) href= stylesheets/panels.min.css > --> Nevýhodou tohoto postupu je, že prohlížeč stahuje i neodpovídající šablony stylů. 7 Prohlížeč sice neaplikuje nevyhovující styly ani nestahuje prostředky odkazované v neodpovídajících šablonách stylů, ale samotné šablony stylů stahuje vždy. To může negativně ovlivnit výkon aplikace a množství přenesených dat. 7 http://scottjehl.github.io/css-download-tests/ 91