<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>— blogo webdesignu
a příbuzných oborech 
píše Martin Michálek.</description><title>Vzhůru dolů</title><generator>Tumblr (3.0; @machal)</generator><link>http://kratce.vzhurudolu.cz/</link><item><title>Spravovatelnost — o důvod víc proč využít CSS3</title><description>&lt;p&gt;Dobře, toto sice &lt;em&gt;je&lt;/em&gt; blog vývojářského frikulína — ale telelícího se radostí, že vám konečně může ukázat jak používání CSS3 a dalších nových front-end &lt;em&gt;není&lt;/em&gt; akt frikulínství. Je to akt úspornosti. Šetření vlastní energie a klientovy peněženky kromě jiného pomocí lepší spravovatelnosti projektu.&lt;/p&gt;
&lt;p&gt;Pojďme si to ukázat na zjednodušeném příkladu kolovrátku (znáte jako preloader nebo spinner). Konvenční příprava pro použití na webu vypadá asi takto — navštívíte &lt;a href="http://www.ajaxload.info/"&gt;Ajaxload&lt;/a&gt;, vyberete typ a barvy a necháte si vygenerovat animovaný gif.&lt;/p&gt;
&lt;p&gt;Na jiném místě webu potřebujete jinou velikost a tak si vygenerujete nový gif.&lt;/p&gt;
&lt;p&gt;A pak ještě potřebujete dvě variany pro jinou barvu pozadí. Přidáte třetí a čtvrtý gif. Pak i pátý a šestý.&lt;/p&gt;
&lt;p class="image"&gt;&lt;img alt="Gif preloaders hell" src="http://farm8.staticflickr.com/7150/6829590169_559c35536f_o.png"/&gt;&lt;/p&gt;
&lt;p&gt;Za týden si designér prohlédne web a upraví barevné schéma.&lt;/p&gt;
&lt;!-- more --&gt;
&lt;p&gt;„To si nemohl vzpomenout dřív!?” Tady stop. Problém hledejte u sebe. Iterativní vývoj vzhledu weby potřebují jako sůl a grafik dělá svou práci dobře. A my naše technologie musíme sedlat tak, aby interace a časté změny podporovaly.&lt;/p&gt;
&lt;p&gt;Co se dá dělat — vygenerujete obrázky s novým barevným schémate a vložíte do stylopisu. To máme index spravovatelnosti kódu 0,5 z 10 a index radosti z práce 0 z 10.&lt;/p&gt;
&lt;h3&gt;PNG32, jeden obrázek za všechny&lt;/h3&gt;
&lt;p&gt;Pojďme se podívat na lepší variantu — namísto animovaných GIFů použijeme 24bitové PNG s alfaprůhledností (znáte z Photoshopu). Nádhera! Teď můžeme donekonečna měnit barvy nebo vzory na pozadí. PNG32 neumí animace a tak kolovrátek rozhýbeme pomocí CSS. &lt;a href="http://dabblet.com/gist/1689261"&gt;Výsledek je tady&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Navíc — když si vyrobíme dostatečně rozměrný obrázek, vystačíme si s jedním souborem, který budeme na různých místech našeho projektu různě zmenšovat.&lt;/p&gt;
&lt;p&gt;Prohlížeče co CSS animacemi nevládnou zobrazí statický obrázek, což by většinou vadit nemělo. Kolovrátek se obvykle zobrazí jen na nepatrnou chvíli a uživatel si jeho statickost pravděpodobně vůbec neuvědomí.&lt;/p&gt;
&lt;p&gt;Při zvažování přihlédněte k tomu, že index radosti z práce i index spravovatelnosti narostl tak, že rozpoutal explozi teploměru.&lt;/p&gt;
&lt;h3&gt;SVG, pozdrav z blízké budoucnosti&lt;/h3&gt;
&lt;p&gt;Chcete slyšet ještě lepší variantu?&lt;/p&gt;
&lt;p&gt;Pak si spolu uděláme kodérského bobříka strachu. Vezmeme se za ruce a zkusíme se společně přestat bát SVG. :)&lt;/p&gt;
&lt;p&gt;Vektorová grafika má v současných prohlížečích přibližně stejnou podporu jako CSS animace, takže nás degradace pro starší prohlížeče bude bolet přibližně stejně. Vektorové SVG má dvě výhody:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;První je zřejmá — můžete je i zcela šíleně nafukovat a pak taky 	zmenšovat. Vykreslovat se budou pořád stejně hezky (vzpomeňte na Retina 	displeje a rozmazanou bitmapovou grafiku většiny webů)&lt;/li&gt;
&lt;li&gt;Je to otevřený XML formát, který můžete automaticky zpracovávat 	serverovým skriptem nebo Javascriptem podle vaší libovůle.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://dabblet.com/gist/1745060"&gt;SVG řešení&lt;/a&gt; našeho kolovrátku kromě toho poskytuje dvoustupňovou degradaci — pro prohlížeče co neumějí SVG animace (v Opeře nebo IE9 se kolovrátek neanimuje) a pak pro prohlížeče co neumějí SVG (v IE8 a starších se zobrazí text „Načítám…”).&lt;/p&gt;
&lt;p&gt;Každou změnu vzhledu, tvaru, nastavení animace můžeme kontrolovat přímo v jeho otevřeném kódu.&lt;/p&gt;
&lt;p&gt;Index spravovatelnosti dnes je přibližně stejný jako u PNG32 varianty. Index radosti z práce je vyšší, protože jsme mysleli na měsíce dopředu. SVG kolovrátek je kamarád z blízké budoucnosti a tak se bude hodit hlavně těm odvážnějším z vás nebo na projektech, kde plná podpora IE8 není důležitá.&lt;/p&gt;
&lt;p&gt;Shrňme si to:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;při výběru technologií klademe důraz také na spravovatelnost&lt;/li&gt;
&lt;li&gt;méně obrázků definujících vzhled projektu se spravuje lépe než více 	obrázků&lt;/li&gt;
&lt;li&gt;SVG se spravuje lépe než bitmapy&lt;/li&gt;
&lt;li&gt;vektorů bychom se měli přestat bát&lt;/li&gt;
&lt;/ul&gt;</description><link>http://kratce.vzhurudolu.cz/post/17279304470</link><guid>http://kratce.vzhurudolu.cz/post/17279304470</guid><pubDate>Wed, 08 Feb 2012 22:24:00 +0100</pubDate><category>css3</category><category>spravovatelnost kódu</category><category>články</category><category>css</category><category>progressive enhancement</category></item><item><title>Hledá se kóderský talent!</title><description>&lt;p&gt;Tohle může být zajímavé pro ty z vás co se už nějaký čas zabýváte front-end kódeřinou, HTML a CSS máte docela v malíku, vaše nadšení do webdesignu nepolevilo a chtěli byste nabrat nové zkušenosti se zajímavými klienty a zajímavými technologickými postupy (mobilní webdesign, progressive enhancement…).&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lxitldsq1c1qztrmf.png"/&gt;&lt;/p&gt;
&lt;p&gt;Hlásím stav, ve kterém musím odmítat i sympatické zakázky a potřebu se teď chvíli více věnovat &lt;a href="http://webexpo.cz/academy/kurzy/html5-a-css3-snadnejsi-zivot-na-front-endu"&gt;jiným radostem&lt;/a&gt;. Pojďte se mnou vytvořit dvoučlenný kóderský tým! ;)&lt;/p&gt;
&lt;p&gt;Výhodu mají kluci a holky s nějakým technologickým přesahem (Javascript, Django, PHP…) a baví je pracovat na &lt;a href="http://www.biooko.net/"&gt;zajímavých&lt;/a&gt; &lt;a href="http://www.kinoaero.cz/cz/"&gt;projektech&lt;/a&gt; &lt;a href="http://www.kinosvetozor.cz/cz/"&gt;kolem&lt;/a&gt; &lt;a href="http://www.aerofilms.cz/"&gt;kultury&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Vibrujete zvědavostí? Hurá! Pošlete mi ukázky prací a představu o hodinové sazbě na &lt;a href="mailto:michalek@shortcat.cz"&gt;michalek@&lt;!----&gt;shortcat.cz&lt;/a&gt;.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/15559019753</link><guid>http://kratce.vzhurudolu.cz/post/15559019753</guid><pubDate>Mon, 09 Jan 2012 08:44:00 +0100</pubDate><category>css3</category><category>html5</category><category>články</category></item><item><title>Luke Wroblewski: Mobile First (recenze knihy)</title><description>&lt;p&gt;Zeldmanovo vydavatelství A Book Apart tohle umí – krátké časové období ve vývoji některé části webdesignu vloží do hrnce a uvaří vývar. Hodně silný vývar.&lt;/p&gt;
&lt;p&gt;Pokud však obor denně sledujete, výsledek vás i přes hustotu vývaru může zklamat stejně jako se to stalo mě s průvodci po HTML5 a CSS3.&lt;/p&gt;
&lt;p&gt;&lt;a class="image with_border" href="http://www.flickr.com/photos/machal/6659334121/"&gt;&lt;img alt="Mobile First" height="493" src="http://farm8.staticflickr.com/7149/6659334121_9b1ffe66b0_z.jpg" width="640"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;V případě mobilního webdesignu nemůže být zklamaných. Kolik z nás má několikaleté zkušenosti s návrhem webů uzpůsobených mobilům? Pár designérů na světě. &lt;a href="http://www.lukew.com/about/"&gt;Luke Wroblewski&lt;/a&gt; je jedním z nich a tak zformuloval přístup Mobile First a teď o tom pro Zeldmana &lt;a href="http://www.abookapart.com/products/mobile-first"&gt;napsal knížku&lt;/a&gt;.&lt;/p&gt;
&lt;!-- more --&gt;
&lt;p&gt;Hlavní myšlenky přístupu Mobile First nejspíš znáte. Pojďte se radši podívat na koláž interpretovaných výstřižků z mého Kindle:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;„Můj původní cíl byl udělat mobilní variantu, ale zjistil jsem, že 	je možné vytvořit lepší verzi Facebooku jež je ta webová.“ – 	Joe Hewitt&lt;/li&gt;
&lt;li&gt;Pokud si odsouhlasíte množinu nejdůležitějších vlastností a obsahu 	pro vaše zákazníky a váš byznys, proč by se tato množina měla 	s větším prostorem na obrazovce změnit?&lt;/li&gt;
&lt;li&gt;U desktopu se lidé ponořují do problému, na mobilech šnorchlují.&lt;/li&gt;
&lt;li&gt;Užívání mobilů má tři hlavní scénáře: “Jsem na tomhle 	místě”, “Nudím se” a “Mám čas na mikroúkoly”.&lt;/li&gt;
&lt;li&gt;Apple jako minimální velikost cíle pro dotek doporučuje 	44×44 pixelů&lt;/li&gt;
&lt;li&gt;Opusťte myšlenku, že potřebujete navigaci a ovládací prvky, na 	mobilech jsme blízko NUI.&lt;/li&gt;
&lt;li&gt;Přes mobilní aplikaci eBay si někdo koupil letadlo za 5 milionů.&lt;/li&gt;
&lt;li&gt;Zařízení jako mobil, TV nebo desktop se neliší jen technickými 	parametry, ale hlavně způsobem jakým je lidé používají.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Luke je silně analytický typ, rešerše je jeho rodná sestra a tak si buďte jistí, že pro argumenty nebo trefné zkratky („mobilní uživatel je jedno oko a jeden palec“) &lt;strong&gt;nebudete muset chodit jinam&lt;/strong&gt;. Na druhou stranu, Luke je taky úspěšný designér a svou zkušenost ke škodě knihy předává jen na velmi konkrétní úrovni.&lt;/p&gt;
&lt;p&gt;Na úrovni pravidel a konkrétních řešení (proč dávat popisky nad a ne vedle formulářových políček). &lt;strong&gt;Postrádám Wroblewskiho zkušenost v rovině způsobu přemýšlení&lt;/strong&gt; o architektuře webu a výběru řešení (aplikace nebo web? responsive web nebo extra mobilní web?).&lt;/p&gt;
&lt;p&gt;Na ose kde nalevo je obecná filozofie tvorby webů a napravo konkrétní technická implementace pro mě stojí Wroblewskiho Mobile First zkrátka až příliš vpravo. (A to i přes to, že v knize jsou snad jen dvě ukázky kódu.)&lt;/p&gt;
&lt;p&gt;I přes zmíněné subjektivní výhrady Luke Wroblewski &lt;strong&gt;výborně formuluje důležitost&lt;/strong&gt; jednoho z nejvýznamnějších zlomový bodů v historii webdesignu a (pozor!) rovnou &lt;strong&gt;navrhuje způsoby jak na něj reagovat&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Přečíst Mobile First by měli chtít nejen weboví vývojáři nebo designéři, ale i majitelé webů, accounti nebo projektoví manažeři ve větších firmách.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/15344029682</link><guid>http://kratce.vzhurudolu.cz/post/15344029682</guid><pubDate>Thu, 05 Jan 2012 14:24:00 +0100</pubDate><category>články</category><category>design</category><category>mobilní webdesign</category><category>mobile first</category></item><item><title>Luke Wroblewski k dilematu nativní app vs. web</title><description>&lt;p&gt;Je jasné, že dilema je falešné, ale nikdo to zatím neformuloval lépe než pan &lt;a href="http://www.abookapart.com/products/mobile-first"&gt;Mobile First&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;As mobile strategist Jason Grigsby is fond of pointing out, “Web links 	don’t open apps, they go to web pages”. Whether it’s through search, 	email, social networks, or on web pages, if you have content online, people will 	find and share links to it. Not having a mobile web solution means anyone that 	follows those links on a mobile device won’t have a great experience.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Takže — mobilně uzpůsobený web potřebujete skoro vždy. A kdy je čas přemýšlet nad aplikací? Zjednodušeně:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;…if your mobile product or business requires deeper hardware access, 	background processes, app or in-app sales, or more integrated placement on 	mobile devices to be viable, you may need a native solution.&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://kratce.vzhurudolu.cz/post/13772818217</link><guid>http://kratce.vzhurudolu.cz/post/13772818217</guid><pubDate>Mon, 05 Dec 2011 09:05:00 +0100</pubDate><category>mobilní webdesign</category><category>mobile first</category></item><item><title>CSS řešení: fotogalerie se zvětšením po najetí myši</title><description>&lt;p&gt;Tohle řešení není žádná věda, ale můžete si tady hezky osvojit principy progressive enhancement a taky se třeba naučit obrázky s kulatými rohy. ;-)&lt;/p&gt;
&lt;p&gt;&lt;a class="big_link" href="http://www.vzhurudolu.cz/test/image-gallery-enlarge-on-hover/"&gt;Demo &gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Základní funkčnost je jednoduchá: Absolutně pozicovaný element (zelený &lt;code&gt;.photo&lt;/code&gt;) leží uvnitř relativně pozicovaného (fialového &lt;code&gt;.photo_contai­ner&lt;/code&gt;):&lt;/p&gt;
&lt;p&gt;&lt;a class="image with_border" href="http://www.vzhurudolu.cz/test/image-gallery-enlarge-on-hover/"&gt; &lt;img src="http://media.tumblr.com/tumblr_lung4uQVf61qztrmf.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;!-- more --&gt;
&lt;pre class="css"&gt;&lt;code&gt;&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo_container&lt;/span&gt; {
  &lt;span class="css-property"&gt;position&lt;/span&gt;:&lt;span class="css-value"&gt; relative&lt;/span&gt;;
  &lt;span class="css-property"&gt;float&lt;/span&gt;:&lt;span class="css-value"&gt; left&lt;/span&gt;;
  &lt;span class="css-property"&gt;width&lt;/span&gt;:&lt;span class="css-value"&gt; 150px&lt;/span&gt;;
  &lt;span class="css-property"&gt;height&lt;/span&gt;:&lt;span class="css-value"&gt; 100px&lt;/span&gt;;
}

&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo&lt;/span&gt; {
  &lt;span class="css-property"&gt;position&lt;/span&gt;:&lt;span class="css-value"&gt; absolute&lt;/span&gt;;
  &lt;span class="css-property"&gt;z-index&lt;/span&gt;:&lt;span class="css-value"&gt; 90&lt;/span&gt;;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Po najetí myši se pomocí záporného vnějšího okraje vnitřní element vytáhne za hranice vnějšího a zvýšením &lt;code&gt;z-indexu&lt;/code&gt; překryje vedlejší elementy:&lt;/p&gt;
&lt;pre class="css"&gt;&lt;code&gt;&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo:hover,&lt;/span&gt;
&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo:focus,&lt;/span&gt;
&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo:active&lt;/span&gt; {
  &lt;span class="css-property"&gt;z-index&lt;/span&gt;:&lt;span class="css-value"&gt; 100&lt;/span&gt;;
  &lt;span class="css-property"&gt;width&lt;/span&gt;:&lt;span class="css-value"&gt; 240px&lt;/span&gt;;
  &lt;span class="css-property"&gt;height&lt;/span&gt;:&lt;span class="css-value"&gt; 160px&lt;/span&gt;;
  &lt;span class="css-property"&gt;margin-top&lt;/span&gt;:&lt;span class="css-value"&gt; -30px&lt;/span&gt;;
  &lt;span class="css-property"&gt;margin-left&lt;/span&gt;:&lt;span class="css-value"&gt; -45px&lt;/span&gt;;
}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Je tady ovšem jeden problém — pokud chceme obrázky vylepšit kulatými rohy, ve Webkit prohlížečích je musíme &lt;a href="http://stackoverflow.com/questions/1347796/firefox-moz-border-radius-wont-crop-out-image"&gt;umístit na pozadí elementu&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Jenže my zároveň chceme obrázky jako samostatné elementy v dokumentu, abychom nabídli základní funkčnost také lidem se staršími prohlížeči včetně MSIE do verze 8.&lt;/p&gt;
&lt;p&gt;Pomůžeme si &lt;strong&gt;trikem s nulovou neprůhledností (&lt;code&gt;opacity&lt;/code&gt;)&lt;/strong&gt;. Ve standardních prohlížečích umístíme obrázky na pozadí obalujícího elementu. Ve starších prohlížečích jež opacity neznají pak pracujeme s obrázkem z dokumentu:&lt;/p&gt;
&lt;pre class="css"&gt;&lt;code&gt;&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo&lt;/span&gt; img {
  &lt;span class="css-property"&gt;opacity&lt;/span&gt;:&lt;span class="css-value"&gt; 0&lt;/span&gt;;
  &lt;span class="css-property"&gt;z-index&lt;/span&gt;:&lt;span class="css-value"&gt; 90&lt;/span&gt;;
  &lt;span class="css-property"&gt;position&lt;/span&gt;:&lt;span class="css-value"&gt; absolute&lt;/span&gt;;
  &lt;span class="css-property"&gt;width&lt;/span&gt;:&lt;span class="css-value"&gt; 150px&lt;/span&gt;;
  &lt;span class="css-property"&gt;height&lt;/span&gt;:&lt;span class="css-value"&gt; 100px&lt;/span&gt;;
}

&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo&lt;/span&gt; {
  &lt;span class="css-property"&gt;position&lt;/span&gt;:&lt;span class="css-value"&gt; absolute&lt;/span&gt;;
  &lt;span class="css-property"&gt;z-index&lt;/span&gt;:&lt;span class="css-value"&gt; 90&lt;/span&gt;;
  &lt;span class="css-property"&gt;width&lt;/span&gt;:&lt;span class="css-value"&gt; 150px&lt;/span&gt;;
  &lt;span class="css-property"&gt;height&lt;/span&gt;:&lt;span class="css-value"&gt; 100px&lt;/span&gt;;
  &lt;span class="css-property"&gt;background-size&lt;/span&gt;:&lt;span class="css-value"&gt; 150px 100px&lt;/span&gt;;
}

&lt;span class="css-class"&gt;.photos&lt;/span&gt; &lt;span class="css-class"&gt;.photo.first&lt;/span&gt;
  { &lt;span class="css-property"&gt;background-image&lt;/span&gt;:&lt;span class="css-value"&gt; url('photo_1.jpg')&lt;/span&gt;; }&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Podívejte se na &lt;a href="https://gist.github.com/1357873"&gt;plný kód&lt;/a&gt; — obsahuje všechny varianty CSS3 vlastností pro transitions, kulaté rohy a stínování.&lt;/p&gt;
&lt;p&gt;V MSIE 8 a novějších pak bude výsledná galerie bez všech CSS3 efektů. Nicméně plně použitelná:&lt;/p&gt;
&lt;p&gt;&lt;a class="image with_border" href="http://www.vzhurudolu.cz/test/image-gallery-enlarge-on-hover/"&gt;&lt;img src="http://media.tumblr.com/tumblr_lung56VOK11qztrmf.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://kratce.vzhurudolu.cz/post/12785430213/css-reseni-fotogalerie-se-zvetsenim-po-najeti-mysi#comment-364374727"&gt;Doplněno&lt;/a&gt;: V MSIE 6 a 7 se fotogalerie musí obejít bez zvětšování po najetí myši. Základní funkčnost ale zůstává nezměněná.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/12785430213</link><guid>http://kratce.vzhurudolu.cz/post/12785430213</guid><pubDate>Mon, 14 Nov 2011 11:56:00 +0100</pubDate><category>css</category><category>css3</category><category>progressive enhancement</category><category>články</category></item><item><title>Perch, redakční systém pro nepřizpůsobivé designéry</title><description>&lt;p&gt;Musíte řešení designu webu přizpůsobovat redakčnímu systému? Většina z nás asi na limity CMS nenarazí, ale jsou mezi námi designéři co se odvážně vrhají do vln neobvyklých řešení. A pro ty je &lt;a href="https://grabaperch.com/"&gt;Perch&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Představte si projekt, který vyžaduje &lt;strong&gt;důraz na vizuální atraktivitu&lt;/strong&gt; a obsah si říká o šití designu na míru. Třeba portfolio architektonického studia s výrazným rukopisem.&lt;/p&gt;
&lt;p&gt;Designér rád chytne příležitost za pačesy, ale co kodér, který má náročný vizuál implementovat do Wordpressu, Drupalu nebo nedejbože něčeho jako Webnode? Prostor, ve kterém se nebožák musí pohybovat je úzce vymezen možnostmi CMS a jeho šablonovacího systému.&lt;/p&gt;
&lt;p&gt;Tam v &lt;a href="http://www.edgeofmyseat.com/"&gt;edgeofmyseat&lt;/a&gt; spatřili díru v trhu a navrhli redakční systém, který &lt;strong&gt;designéry a vývojáře omezuje daleko méně&lt;/strong&gt; než ty zavedené.&lt;/p&gt;
&lt;p&gt;&lt;a class="image with_border" href="http://www.flickr.com/photos/machal/6284211208/in/photostream"&gt;&lt;img src="http://farm7.static.flickr.com/6107/6284211208_286776c1f1_z.jpg" width="581"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Perch startuje veřejnou část webu s nulovou konfigurací. Připravíte ji jak jste zvyklí u „statických“ webů. Ve chvíli kdy jste spokojení, řeknete Perchu, se kterou částí obsahu chcete nechat klienta pracovat přes redakční systém. Ryan Singer z 37signals &lt;a href="http://grabaperch.com/blog/archive/ryan-singer-of-37signals"&gt;k tomu říká&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;I feel like my templates are still fully under my control, and I can sprinkle a little Perch in here and there to get the client-editable magic that I need. That’s extremely important to me and none of the other CMSes seem to do a good job of it.&lt;/blockquote&gt;
&lt;h3&gt;Konkurence Wordpressu? Omyl!&lt;/h3&gt;
&lt;p&gt;Perch si říká „mini CMS“ a hodí se hlavně na mini weby, které akcentují vizuální dojem nebo interaktivitu. &lt;strong&gt;Nepovažujte ho za konkurenci&lt;/strong&gt; blogovací supermašiny Wordpressu nebo modulárního molocha  Drupalu. Na Perchu se s úspěchem stavějí třeba právě &lt;a href="http://made-by-mike.co.uk/"&gt;portfolia&lt;/a&gt;, weby &lt;a href="http://www.stanwellhousehotel.co.uk/"&gt;hotelů&lt;/a&gt;, restaurací atd. Obrovská svoboda, kterou Perch nabízí front-end vývojáři se velmi dobře hodí pro vývoj webů pro &lt;a href="http://binarycreative.com/projects/chicago-q-ensemble/"&gt;desktop a mobily zároveň&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Líbí? Oznamuji, že se s Perchem po večerech seznamuji už nějaký ten čas a touha po praktických zážitcích mě právě včera donutila aktivně hledat &lt;strong&gt;zájemce o jeho implementaci&lt;/strong&gt;. ;) Jste nepřízpůsobivý designér nebo studio se zajímavým projektem vhodným pro &lt;em&gt;peršanizaci&lt;/em&gt;? Oznamte to sem: &lt;a href="mailto:michalek@shortcat.cz"&gt;michalek@&lt;!----&gt;shortcat.cz&lt;/a&gt;&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/11986202247</link><guid>http://kratce.vzhurudolu.cz/post/11986202247</guid><pubDate>Thu, 27 Oct 2011 11:45:00 +0200</pubDate><category>CMS</category><category>články</category><category>design</category></item><item><title>„Křápy“ first</title><description>&lt;p&gt;Na &lt;a href="http://www.slideshare.net/machal/z-praxe-mobilnho-webdesignu-webexpo-2011"&gt;Webexpo přednášce&lt;/a&gt; nebyl čas tuhle myšlenku rozvést. Tady je i s konkrétní technickou aplikací.&lt;/p&gt;
&lt;p&gt;Metodu &lt;a href="http://www.lukew.com/ff/entry.asp?933"&gt;Mobile first&lt;/a&gt; a její platnost asi není potřeba dále rozvádět. Luke Wroblewski přes pochyby běží tryskem a nechává jen spálenou zemi. ;)&lt;/p&gt;
&lt;p&gt;Designér co navrhuje rozhraní metodou „jeden web“ by v prvé řadě měl myslet na horší zařízení a řešení pro lepší koncipovat jako rozšiřující.&lt;/p&gt;
&lt;p&gt;Proto nejdříve mobily a proto jde na proces designu webu krásně pohlížet jako na vrstvení jeho jednotlivých elementů na sebe:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_ls9ymtuADO1qztrmf.png"/&gt;&lt;/p&gt;
&lt;p&gt;Vývojář designérský pohled obohacuje kromě jiného o přístupnost. Než navrhne řešení pro smartphony, musí se zamyslet nad zařízeními, kterým můžeme říkat třeba „křápy“. :)&lt;/p&gt;
&lt;p&gt;Nemusí to být jenom stará Nokia se špatným prohlížečem nebo MSIE6. Mezi křápy počítejte i vaši zcela novou tiskárnu nebo slepeckou čtečku. Všechno to jsou zařízení, který pomůžete především správně vyznačenou strukturou dokumentu, významem obsahu a taky čitelnou typografií.&lt;/p&gt;
&lt;!-- more --&gt;
&lt;p&gt;&lt;strong&gt;„Křápy first” není nic jiného než metoda Mobile first obohacená o přístupnost.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;V přednášce jsem stihl být jen obecný. Pojďme se na vrstvení designu podle „křápy first“ podívat technicky a v konkrétní situaci. Tohle je vrstvení viditelné z obrázku převedené do CSS souboru v probíhajícím redesignu webů kin Světozor, OKO a Aero:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
index.css:

/*
 Vrstva pro krapy:
 * reset/normalizace
 * zakladni typografie
*/ 

/* css pravidla... */

/*
 Vrstva pro smartphony:
 * vzhled prvku (barvy, vlastni pisma, formatovane boxy)
*/
@media screen and (max-width: 480px) {

/* css pravidla... */

}

/*
 Vrstva pro tablety a desktop:
 * uprava vzhledu
 * layout
*/
@media screen and (min-width: 481px) {

/* css pravidla... */

}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Hezčí kód je na &lt;a href="https://gist.github.com/1250191"&gt;Github gyzdu&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;CSS je úmysleně zjednodušené. V praxi pro každý z typů zařízení přidáváme ještě extra vrstvu s drobnými úpravami — třeba pravidla pro zalamování stránky v tiskové verzi.&lt;/p&gt;
&lt;p&gt;Problémy s media-queries v IE8 nám v tomhle jednoduchém případě pomůže vyřešit &lt;a href="https://github.com/scottjehl/Respond"&gt;Respond.js&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Prosím, jen to &lt;strong&gt;CSS neberte jako šablonu&lt;/strong&gt;. Váš projekt a hlavně zařízení rozšířená ve vaší cílové skupině mohou vyžadovat radikálně jiné nastavení.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/10800971639</link><guid>http://kratce.vzhurudolu.cz/post/10800971639</guid><pubDate>Thu, 29 Sep 2011 10:10:00 +0200</pubDate><category>css</category><category>články</category><category>mobilní webdesign</category><category>mobile first</category></item><item><title>„Kdy při návrhu webů začít počítat s mobilními zařízeními?”</title><description>&lt;p&gt;Vy jste ještě nezačali?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;„Nemá to zatím smysl, protože z nich na weby klientů přichází jen 2-3 % návštěvníků. Jsou pod pětiprocentní hranici. To bychom rovnou mohli optimalizovat pro IE4!”&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Navrhujete dneska weby pro rok 2011 nebo &lt;a href="http://www.gartner.com/it/page.jsp?id=1278413" title="By 2013, mobile phones will overtake PCs as the most common Web access device worldwide."&gt;pro 2013&lt;/a&gt;, kdy mobily v počtu přístupů na web pravděpodobně desktop sežerou i s klávesnící?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;„Ano, ale vždycky to můžeme udělat zpětně. Stačí vložit pár řádků kódu, ne?”&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;U většiny webů skončíte jako sedláci u Chlumce. Jestli se chcete dozvědět proč si to myslím,  moc rád vás uvidím &lt;a href="http://webexpo.cz/praha2011/prednaska/mobilni-webdesign-prakticky/"&gt;v sobotu v 11 hodin na Webexpo&lt;/a&gt;.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/10397151635</link><guid>http://kratce.vzhurudolu.cz/post/10397151635</guid><pubDate>Mon, 19 Sep 2011 09:31:00 +0200</pubDate><category>články</category><category>mobilní webdesign</category></item><item><title>Mobilní webdesign jako krize „neúsporného webdesignéra”</title><description>&lt;p&gt;Bruce Lawson se mi na &lt;a href="http://zdrojak.root.cz/clanky/mobile-friendly-pruvodce-optimalizaci-mobilniho-webu/"&gt;na Zdrojáku&lt;/a&gt; trefil do aktuálních myšlenek:&lt;/p&gt;

&lt;blockquote&gt;
… mobilní uživatelé spěchají; neustále jsou zaměstnaní, takže chtějí vykonat jeden specifický úkol a pak skončit. … Omyl spočívá v předpokladu, že uživatelé desktopových počítačů nejsou zaměření na vykonávání úkolů a mají čas nazbyt, který rádi věnují plnému estetickému prožitku. Pravda je, že všichni uživatelé spěchají.
&lt;/blockquote&gt;

&lt;p&gt;Chudák &lt;i&gt;neúsporný webdesignér&lt;/i&gt;. Pokud navrhuje web, kam mají lidé chodit pro informace, jeho největším nepřítelem je bílá plocha. Nebo &lt;i&gt;příliš jednoduchá&lt;/i&gt; struktura webu — všechny přece musejí obsahovat &lt;a href="http://www.lacasata.cz/str/onas/onas.html"&gt;„O nás”&lt;/a&gt; a &lt;a href="http://www.dbkpraha.cz/kontakt.php"&gt;„Kontakty”&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;Jak ten prostor využít? „Tady by se hodila flashová animace s logem firmy, že jo. Na všech vnitřních stránkách zopakujeme &lt;a href="http://www.sekyragroup.cz/cz/submenu/kariera"&gt;tuhle sadu postranních boxíků&lt;/a&gt; nebo &lt;a href="http://www.alza.cz/Publish.asp?idpm=1323"&gt;navigaci a radši hned dvakrát&lt;/a&gt; — co bychom tam jinak dali?!  Něco tam prostě musíme plácnout, web jinak nebude vypadat profesionálně!”&lt;/p&gt;

&lt;p&gt;Krize je ozdravný proces ekonomiky. Neúsporní neobstojí. Světová krize &lt;a href="http://www.rozhlas.cz/zpravy/svetovaekonomika/_zprava/699848"&gt;zabila neúsporného Hummera&lt;/a&gt;. Mobilní webdesign konečně zabije neúsporného webdesignéra.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/9076881203</link><guid>http://kratce.vzhurudolu.cz/post/9076881203</guid><pubDate>Thu, 18 Aug 2011 13:35:55 +0200</pubDate><category>mobilní-webdesign</category><category>články</category><category>design</category></item><item><title>"I would in fact prefer, instead of &lt;H1&gt;, &lt;H2&gt; etc for  headings (…) to have a nestable..."</title><description>“I would in fact prefer, instead of &lt;H1&gt;, &lt;H2&gt; etc for  headings (…) to have a nestable &lt;SECTION&gt;..&lt;/SECTION&gt; element, and a generic &lt;H&gt;..&lt;/H&gt; which at any level within the sections would produce the required level of  heading.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;Poznáváte úryvek z diskuze o &lt;i&gt;document outline&lt;/i&gt; v HTML5?
&lt;br/&gt;&lt;br/&gt;
Nikoliv! To Tim Bernes-Lee uvažuje o první verzi HTML &lt;a href="http://lists.w3.org/Archives/Public/www-talk/1991SepOct/0003.html"&gt;v jedné z prvních  zmínek&lt;/a&gt; v říjnu 1991. Některé otázky hold zůstávají i po dvou dekádách nezodpovězené.
&lt;br/&gt;&lt;br/&gt;
Pokud slavíte 20 let World Wide Webu, nezapomeňte na panáka pro HyperText Markup Language! ;)&lt;/em&gt;</description><link>http://kratce.vzhurudolu.cz/post/8641142228</link><guid>http://kratce.vzhurudolu.cz/post/8641142228</guid><pubDate>Mon, 08 Aug 2011 12:59:00 +0200</pubDate><category>HTML</category><category>html5</category></item><item><title>"In particular, you should not view the large iPad screen as an invitation to bring back all the..."</title><description>“In particular, you should not view the large iPad screen as an invitation to bring back all the functionality you might have pruned from your iPhone application.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;&lt;p&gt;— &lt;a href="http://developer.apple.com/library/ios/#DOCUMENTATION/UserExperience/Conceptual/MobileHIG/UEBestPractices/UEBestPractices.html"&gt;iOS Human Interface Guidelines&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A když půjdeme dále, měli bychom takto uvažovat i o webdesignu na desktopu.&lt;/p&gt;&lt;/em&gt;</description><link>http://kratce.vzhurudolu.cz/post/8510296934</link><guid>http://kratce.vzhurudolu.cz/post/8510296934</guid><pubDate>Fri, 05 Aug 2011 12:45:00 +0200</pubDate><category>design</category><category>ui</category><category>mobilní-webdesign</category></item><item><title>Proč je Gmail pro tvůrce newsletterů větší pohromou než Outlook 2007</title><description>&lt;p&gt;Povzdech uondaného kodéra na Twitteru…&lt;/p&gt;

&lt;p&gt;&lt;a class="image" style="border-color: #ccc" href="http://twitter.com/#!/machal/status/75559180492214272"&gt;&lt;img src="http://media.tumblr.com/tumblr_lm4nmmdhzi1qztrmf.png" width="581" height="274"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;…doprovodily reakce co by se daly shrnout do věty: „Navrhovat newslettery pro Gmail sice je nepříjemné, ale daleko větší nadělení je renderovací jádro MS Outlooku 2007”.&lt;/p&gt;

&lt;p&gt;Jasně, MS Word jádro Outlooku 2007 je &lt;a href="http://msdn.microsoft.com/en-us/library/aa338201.aspx"&gt;vážně zastaralé&lt;/a&gt; a usilovně se brání všem snahám o náročnější vzhled nebo layout. Jenže Outlook 2007 na rozdíl od &lt;a href="http://www.email-standards.org/clients/gmail/"&gt;Gmailu&lt;/a&gt; (a dalších, minimálně českých, webmailů) přináší jeden zásadní vklad do budoucnosti řemesla — podporu stylopisu vloženého do těla dokumentu.&lt;/p&gt;

&lt;p&gt;Právě uvnitř elementu &lt;code&gt;&lt;style&gt;&lt;/code&gt; se během posledních let odehrává zásadní posun v pracovních postupech kodérů.&lt;/p&gt;

&lt;p&gt;Mezi běžně užívanými desktopovými prohlížeči už není žádný co by vložený stylopis nepodporoval. A i když se i na desktopu úroveň podpory různých CSS vlastností liší, kodér se díky media-queries, progressive enhancement nebo vendor prefixům v kapse může zeširoka rozkročit a jeden vzhled jednoho dokumentu navrhout několika způsoby pro dobré, horší i ty nejhorší prohlížeče.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;style&gt;&lt;/code&gt; je tlačítko pro zapnutí webdesignu nové generace. Potřebujeme jej ve webmailech.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/6081115199</link><guid>http://kratce.vzhurudolu.cz/post/6081115199</guid><pubDate>Wed, 01 Jun 2011 22:28:00 +0200</pubDate><category>media queries</category><category>newslettery</category><category>progressive enhancement</category><category>články</category></item><item><title>Principy vývoje Chrome</title><description>&lt;p&gt;Prezentace Anthonyho Laforge zajímavá pro každého, kdo se zabývá vývojem software (včetně webů).&lt;/p&gt;

&lt;iframe src="https://docs.google.com/present/embed?id=dg63dpc6_4d7vkk6ch&amp;size=m" frameborder="0" width="555" height="451"&gt;&lt;/iframe&gt;

&lt;p&gt;Oceňuji zejména přenos myšlenek z jednoho kontextu do jiného. Nemáte-li čas, podívejte se jen na slajdy 2 a 3.&lt;/p&gt;

&lt;blockquote&gt;
Think of any major website… do they have version numbers? We took the same approach to our client software as an online web service.
&lt;/blockquote&gt;

&lt;p&gt;A ještě jednu hezkou citaci na závěr:&lt;/p&gt;

&lt;blockquote&gt;
  What would a world look like where we didn’t base our marketing on releases? We market features, not releases.
&lt;/blockquote&gt;</description><link>http://kratce.vzhurudolu.cz/post/2696559274</link><guid>http://kratce.vzhurudolu.cz/post/2696559274</guid><pubDate>Tue, 11 Jan 2011 11:32:01 +0100</pubDate><category>prohlížeče</category></item><item><title>Vývojáři, buď při tom!</title><description>&lt;p&gt;Výjimečně se stane, že vezmu zakázku nepocházející od klientů Shortcat a navlékám ochranný oblek vývojáře, jež se nechává najímat. A vždy je to zajímavá perspektiva pro mé obvyklé pracovní prostředí s relativně stálými klienty a dlouhodobým hledáním optimálních pracovních postupů v týmu.&lt;/p&gt;

&lt;p&gt;Při poslední &lt;em&gt;bokovce&lt;/em&gt; šlo o práci na dočasném webu hotelu pro jedno výborné grafické studio, jež s webem přichází do styku jen okrajově. Najímaný kodér se k takovému projektu dostane ve chvíli, kdy grafické studio s klientem dohodlo vizuální styl, způsob prezentace na webu, proběhla diskuze proč je potřeba udělat dočasný web a vytvořen grafický návrh. Vše je vymyšleno, domluveno. Kodér má relativně snadný úkol – web zrealizovat nejlépe jak umí.&lt;/p&gt;

&lt;p&gt;Připadá vám takováto kodérova situace normální nebo dokonce optimální? Pak zpozorněte, protože vás chci trochu politovat, ale hlavně vyhecovat k tomu, abyste příště přestali být kodérem a stali se členem týmu. Abyste příště byli při tom.&lt;/p&gt;

&lt;h3&gt;Nešťastný, kdo nebyl u velkého třesku&lt;/h3&gt;

&lt;p&gt;Analýza, inicializační fáze, úvodní brainstormingy, &lt;em&gt;velký třesk&lt;/em&gt;… říkejte si tomu jak chcete, ale určitě se shodneme, že moment, ve kterém se projekt vymýšlí je pro jeho průběh klíčový a hlavně velmi zábavný.&lt;/p&gt;

&lt;p&gt;U jednoho stolu sedí klient, programátor, kodér, designér, marketér a další. Návrhy a názory padají hlava nehlava… Sbírka kudel v kapse otevřených a hned zase zavřených. A taky jedinečná příležitost ovlivnit projekt směrem, který z pohledu experta v oboru považujete za správný. Šance jak se na svůj obor podívat z perspektivy ostatních.&lt;/p&gt;

&lt;h3&gt;Čekáte na specifikaci? Tu pravou chvíli jste už ale prošvihli&lt;/h3&gt;

&lt;p&gt;Vývojáři často jen chtějí mít fázi třesku rychle za sebou a čekají na výslednou specifikaci, aby se mohli „pustit do práce”. Jenže takový projekt je pak myšlenkově málo pestrý — chybí mu pohled vývojáře.&lt;/p&gt;

&lt;p&gt;Technické možnosti velmi ovlivňují práci designéra, ale přinášejí i nový pohled klientovi. Určitě se i vám stává, že klient přehodnotí svůj postoj k řešení webu nebo změní pracovní postupy uvnitř své instituce, když uvidí jak by se mu prodražilo trvání na původních představách.&lt;/p&gt;

&lt;p&gt;A bude nezúčastněného kodéra nebo programátora bavit? Nemyslím. Autoři historek o graficích nebo klientech, „co si vymýšlejí blbosti”, přehodnoťte svůj přístup k práci v týmu. Neprošvihněte fázi třesku. Vždy máte šanci &lt;em&gt;blbosti&lt;/em&gt; vymýšlet s ostatními.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/2413099779</link><guid>http://kratce.vzhurudolu.cz/post/2413099779</guid><pubDate>Wed, 22 Dec 2010 08:12:00 +0100</pubDate><category>články</category><category>pracovní postupy</category></item><item><title>GitHub Tree Slider z pohledu kodéra — zajímavé nejen díky HTML5...</title><description>&lt;img src="http://27.media.tumblr.com/tumblr_ld604gu3cF1qztvu8o1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;strong&gt;GitHub &lt;a href="https://github.com/blog/760-the-tree-slider"&gt;Tree Slider&lt;/a&gt; z pohledu kodéra&lt;/strong&gt; — zajímavé nejen díky HTML5 History API, ale také technickým řešením změn obsahu při procházení historií dopředu a dozadu.&lt;/p&gt;

&lt;p&gt;Zjednodušeně řečeno: obsah jak jde za sebou v historii je naskládaný jeden vedle druhého zleva v jakémsi karuselu. Oknem (&lt;code&gt;overflow: hidden&lt;/code&gt;) z něj vždy vykukuje jen část, které odpovídá aktuální URL. Stránky v pravé části (tedy z pohledu historie v budoucnu) jsou načítány AJAXem. Přesun v historii dopředu a dozadu obstarají extrémně rychlé CSS Transitions.&lt;/p&gt;

&lt;p&gt;Inspirativní!&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/2154538060</link><guid>http://kratce.vzhurudolu.cz/post/2154538060</guid><pubDate>Thu, 09 Dec 2010 15:26:39 +0100</pubDate><category>Css</category><category>css3</category><category>github</category></item><item><title>YAML soubor jako alternativa redakčního systému webu </title><description>&lt;p&gt;S obsluhou obsahu pro prezentační weby na míru je potíž. Všichni v oboru víme, že neexistuje univerzální řešení. Někdy je neefektivní nebo z různých důvodů dokonce nemožné jakýkoliv redakční systém nasadit.&lt;/p&gt;

&lt;p&gt;Často pak my vývojáři přistupujeme k vytvoření stránek &lt;i&gt;staticky&lt;/i&gt; v HTML. Výhody &lt;i&gt;naprogramovaného&lt;/i&gt; webu jsou ale pryč a každá úprava bývá náročná na čas i technické znalosti správce.&lt;/p&gt;

&lt;p&gt;Přátelé rubisté (ale určitě i ostatní programátoři) vědí, že za posledních pár let se vyrojilo množství systémů pro správu obsahu založených na zpracování textových souborů — za všechny chci jmenovat &lt;a href="https://github.com/mojombo/jekyll"&gt;Jekylla&lt;/a&gt;, &lt;a href="http://effectif.com/nesta"&gt;Nestu&lt;/a&gt; nebo Karmiho staršího &lt;a href="https://github.com/karmi/marley"&gt;Marleyho&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Chtěl bych se zde pod čerstvými dojmy z Nesty podělit o výsledek několik měsíců starého experimentu s uložením obsahu webu do YAML souboru, který mě zpětně vzato velmi mile překvapil. &lt;/p&gt;

&lt;!-- more --&gt;

&lt;h3&gt;YAML jako CMS na Dream-Cars.cz &lt;/h3&gt;

&lt;p&gt;Pojďme ke konkrétnímu využítí myšlenky &lt;a href="http://www.dream-cars.cz/"&gt;na webu klienta&lt;/a&gt;. Veřejná část webu je naprogramovaná jako by měla přístup k databázi. Namísto redakčního systému a databáze je však správa obsahu i jeho uložení realizováno v jediném YAML souboru. &lt;/p&gt;

&lt;p&gt;YAML soubor s katalogem aut vypadá skoro lidsky, alespoň z vývojářského pohledu na svět. :) YAML je pro strukturovaná data tímtéž co Markdown (nebo Texy!) pro text. Zde je zjednodušený příklad souboru cars.yaml:&lt;/p&gt;

&lt;pre&gt;
&lt;code&gt;
bmw-z4-cabrio:
   name: BMW Z4 Cabrio
   price_1hour: 2900
   price_3hours: 4900
   price_1day: 9900
   price_apposition_per_km: 7    
   is_new: false
   published: true
caterham-7-roadsport:
   name: Caterham 7 Roadsport
   price_1hour: 2900
   price_3hours: 4900
   price_1day: 9900
   price_apposition_per_km: 7
   is_new: false
   published: true
&lt;/code&gt;
&lt;/pre&gt;

&lt;p&gt;Takové Rails si s YAML rozumí zcela přirozeně, ale i pokud – jako já v tomto případě – musíte použít PHP, stačí nainstalovat knihovnu &lt;a href="http://code.google.com/p/spyc/"&gt;Spyc&lt;/a&gt;, která obsah YAML souboru převede do asociativního pole:&lt;/p&gt;

&lt;pre&gt;
&lt;code&gt;
require_once "spyc.php";
$cars= Spyc::YAMLLoad("cars.yaml");
&lt;/code&gt;
&lt;/pre&gt;

&lt;p&gt;Pak už data vypíšete tak jak jste zvyklí:&lt;/p&gt;

&lt;pre&gt;
&lt;code&gt;
foreach ($cars as $car) {
    echo $car['name'];
}
&lt;/code&gt;
&lt;/pre&gt;

&lt;h3&gt;Ušetřený čas vs. nároky na obsluhu&lt;/h3&gt;

&lt;p&gt;Řešení jako obvykle není vhodné nasadit vždy a všude — správce obsahu musí znát limity formátu YAML, být schopný soubor upravit a dostat ho na produkční server. &lt;/p&gt;

&lt;p&gt;Ačkoliv se to geekům může zdát nepochopitelné, ani &lt;b&gt;úpravy obsahu ve formátu YAML nejsou pro „normální” lidi zrovna pohodlné&lt;/b&gt;. Nemluvě o aktualizaci přes FTP, nebo třeba úpravách přes Github v té lepší variantě. Správce prostě musí být skoro-geek nebo alespoň velmi dobře znát sumu peněz, kterou mu toto nepohodlí ušetří. :)&lt;/p&gt;

&lt;p&gt;Obsah Dream–Cars je doplňován ručně produkovanými obrázky, a tak jej vytváříme i upravujeme většinou sami, klient mění jen občas drobnosti. V tomto workflow YAML proti verzi s obsahem uloženým v HTML souborech šetří zajímavé množství času a peněz. Například &lt;b&gt;přidání nového &lt;a href="http://www.dream-cars.cz/auta.php"&gt;auta&lt;/a&gt; zabere o 2–3 hodiny času méně&lt;/b&gt;.&lt;/p&gt;

&lt;p&gt;Máte nějaký svůj způsob jak obejít vytváření CMS na míru poháněného databází? Máte pochyby? Vzhůru do komentářů.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/2130713177</link><guid>http://kratce.vzhurudolu.cz/post/2130713177</guid><pubDate>Tue, 07 Dec 2010 09:14:00 +0100</pubDate><category>CMS</category><category>efektivita</category><category>články</category></item><item><title>"…co je normální v běžném životě, (např. při správě a úklidu domácnosti) nebývá praktikováno na..."</title><description>“…co je normální v běžném životě, (např. při správě a úklidu domácnosti) nebývá praktikováno na webu.
Je to zkrátka jako se cvičením: pokud je praktikováno pravidelně (byť v malých dávkách), přináší v dlouhodobém horizontu lepší výsledky než vyčerpávající nárazové akce.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;Ondřej Válka o redesignu webu &lt;a href="http://zdrojak.root.cz/clanky/redesign-s-airbagy/"&gt;na Zdrojáku&lt;/a&gt;&lt;/em&gt;</description><link>http://kratce.vzhurudolu.cz/post/1541210084</link><guid>http://kratce.vzhurudolu.cz/post/1541210084</guid><pubDate>Thu, 11 Nov 2010 08:40:38 +0100</pubDate></item><item><title>"… existují i firmy, které vám jsou schopné naúčtovat pěkný roční paušál za použití jejich..."</title><description>“… existují i firmy, které vám jsou schopné naúčtovat pěkný roční paušál za použití jejich “profesionálního webového” písma (…) vrcholem sprostoty je pak odstupňování poplatků podle měřené návštěvnosti vašich stránek. Nikdo vám však nezaručí, jak se písmo bude rastrovat v různých prohlížečích. Zaplatíte za časově omezenou licenci na jedinou doménu a pokud jsou litery zubaté, tak si můžete jít stěžovat třeba na hlavní nádraží.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;František Štorm &lt;a href="http://www.pismolijna.cz/typomonolog/?p=2283"&gt;shrnuje&lt;/a&gt; aktuální stav vývoje webfont řešení. :) Pravdivý pohled zvenčí. Mimochodem, Storm Type Foundry má nový web a používá @font-face s vlastním chlebovým písmem (!) JohnSansWeb. Jejich &lt;a href="http://stormtype.ic-servis.com/licence.php"&gt;licenční podmínky&lt;/a&gt; jsou pak nově vkládání písem pomocí @font-face více než nakloněny. Kdo bude mít první web s legálním písmem od Štorma? :)&lt;/em&gt;</description><link>http://kratce.vzhurudolu.cz/post/1448647743</link><guid>http://kratce.vzhurudolu.cz/post/1448647743</guid><pubDate>Sun, 31 Oct 2010 22:13:29 +0100</pubDate><category>typografie</category><category>@font-face</category></item><item><title>Klonované submity útočí (jednotný vzhled odesílacího tlačítka pomocí CSS) </title><description>&lt;p&gt;Potřebujete někdy nastylovat odesílací tlačítko ve formuláři v rozměrech a na pozici pixelově perfektních? Mám pro vás řešení. Není jednoduché, obsahuje magii, které nerozumím, a nefunguje dokonale ve všech prohlížečích.  :-)&lt;/p&gt;

&lt;p&gt;Ještě čtete? Dobře děláte, protože na druhou stranu je široce použitelné a vůbec ho mám rád tak ušmudlané jaké je, protože mě od té doby už několikrát pomohlo.&lt;/p&gt;

&lt;p&gt;Navíc — proč na sebe dělat ramena jak moc věcem rozumíme? Sám bych docela rád četl texty ne jen mentorské, ale také ty s jistou pochybností na straně autora. Nejistota má tu výhodu, že do řešení problému vtahuje i čtenáře.&lt;/p&gt;

&lt;p&gt;Pokud vás detaily nezajímají, podívejte se na výsledek rovnou.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.vzhurudolu.cz/test/submit-button-dimensions/"&gt;Výsledný test-case &gt;&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;!-- more --&gt;

&lt;p&gt;Že weby &lt;a href="http://kratce.vzhurudolu.cz/post/1333772459/web-nevypada-ve-vsech-prohlizecich-stejne-jak-to-vidi"&gt;nemusejí vypadat ve všech prohlížečích stejně&lt;/a&gt;? Ano, obecně tomu tak je, ale vezměme konkrétní situaci, kdy se nad jednotným řešením rozhodně vyplatí přemýšlet:&lt;/p&gt;

&lt;p&gt;
&lt;img src="http://media.tumblr.com/tumblr_laswtyTVlu1qztrmf.png" alt="Přihlášení k newsletteru na www.festival.cz" title="Přihlášení k newsletteru na www.festival.cz" width="219"/&gt;&lt;/p&gt;

&lt;p&gt;Je docela dobře možné, že když chcete nastylovat vzhled odesílacího tlačítko a nedělat si těžkosti s jeho rozměry, použijete obvykle tento CSS kód. Ostatně, dělal jsem to dříve stejně:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
.submit { 
  padding: 5px 10px; 
  font: 12px/18px sans-serif;
  background: red; 
  color: white; 
  border: 1px outset #F30;
}
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;Tlačítko vypadá docela hezky. Zdánlivě jej máme pod kontrolou, prima. Jenže problém nastane, když je umístěno v layoutu, který je citlivý na rozměry elementů, jako je ten na prvním obrázku. Podívejme se jak bude tlačítko popsané našim pravidlem vypadat v různých prohlížečích.&lt;/p&gt;

&lt;p&gt;Zelený poloprůhledný obdélník značí oblast, kde jsme s dosavadními znalostmi očekávali umístění tlačítka a v jaké jsme si představovali jeho rozměry:&lt;/p&gt;

&lt;p&gt;
    &lt;a class="image" href="http://www.flickr.com/photos/machal/5043989466/in/photostream/"&gt;&lt;img src="http://farm5.static.flickr.com/4091/5043989466_b4531a8742_o.png" width="672"/&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;Vidíte to co já? Jediný prohlížeč, který splnil naše naděje, je Internet Explorer 8. To bolí! Pixel-perfect rozměry tlačítka potřebujeme obvykle v situacích, kdy jej zarovnáváme s vedle umístěným textovým vstupem a tak situace, kdy všechny ostatní prohlížeče vypočetly trochu jinou výšku je blbá, blbá a co si budeme povídat: &lt;em&gt;blbá&lt;/em&gt;!&lt;/p&gt;

&lt;p&gt;V layoutu z prvního obrázku by tlačítkové rodeo našich prohlížečů přivodilo nemilou událost v kodérově duši.&lt;/p&gt;

&lt;h3&gt;Proč nám to ty zlé prohlížeče dělají?&lt;/h3&gt;

&lt;p&gt;Než si řekneme jak situaci alespoň zčásti zachránit, musíme pochopit jak prohlížeče s formulářovými prvky zacházejí. Stručně řečeno: podle konvencí operačního systému a podle vlastního uvážení. Formulářové prvky jsou specifikací vnímány jako součást uživatelského rozhraní operačního systému a podle toho se prohlížeče také chovají.&lt;/p&gt;

&lt;p&gt;Příklad za všechny: rozměry formulářových elementů prohlížeče nepočítají podle box modelu daného specifikací (rozměry obsahu), ale podle tradičního (quirks) box modelu (rozměry obsahu + rozměr vnitřního okraje + rozměr rámečku). (V řeči CSS se na formulářové elementy aplikuje deklarace &lt;code&gt;box-sizing: border-box&lt;/code&gt;, na ostatní pak &lt;code&gt;box-sizing: content-box&lt;/code&gt;) A tak v hodnotách vlastností width a height musíte započíst rámeček (border) a vnitřní okraj (padding), i když vám prohlížeč běží ve striktním režimu. &lt;/p&gt;

&lt;h3&gt;Magie vs. „vědomosti” a „racionalita”: Do boje!&lt;/h3&gt;

&lt;p&gt;Dejme se do úprav tlačítka. Zde poslední varování jedincům se slabším zažíváním — řešení některých dále zmíněných problémů spadají do oblasti magie. Racionální vysvětlení autorovi článku v těchto případech nejsou známa. Pokud znáte podstatu odchylek v jednotlivých prohlížečích, neváhejte prosím použít komentářů.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Internet Explorery verzí 6 a 7 vykreslují v tlačítku vnitřní prostor&lt;/strong&gt;. To způsobuje deklarace overflow: hidden, kterou mají &lt;a href="http://www.iecss.com/"&gt;v přednastaveném stylopisu&lt;/a&gt;. &lt;a href="http://latrine.dgx.cz/the-stretched-buttons-problem-in-ie"&gt;Řešením&lt;/a&gt; je každopádně resetování vlastnosti overflow na hodnotu visible.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
.submit_better { 
  padding: 5px 10px; 
  font: 12px/18px Arial, sans-serif;
  background: red;
  color: white;
  border: 1px outset #F30;
  &lt;b&gt;overflow: visible;&lt;/b&gt;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Jdeme dál — &lt;strong&gt;opravíme výšku elementu ve Firefoxu 3.6 a Opeře 10&lt;/strong&gt;. Jak už je zmíněno výše, všechny testované prohlížeče počítají výšku formulářových prvků tradičním způsobem, tedy započítávají rámeček (border) i vnitřní okraj (padding). Tomu odpovídá deklarace box-sizing: border-box, kterou najdete v jejich přednastavených stylopisech. Jenže FF3.6 a Op10 i tak dojdou k jiným číslům. &lt;/p&gt;

&lt;p&gt;Obecně následující postup nedoporučím, ale dobře, pomůžeme si silou — explicitním nastavením výšky našeho tlačítka. Podle vzorečku pro výpočet výšky v tradičním (quirks) box modelu ji získáme jako výšku řádku (18px) sečtenou s vertikálním vnitřním okrajem (padding) (2 * 5px) a s vertikální rámečkem (border) (2 * 1px). Tedy 30 pixelů.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
.submit_better { 
  padding: 5px 10px; 
  font: 12px/18px Arial, sans-serif;
  background: red; 
  color: white; 
  border: 1px outset #F30;
  overflow: visible;
  &lt;b&gt;height: 30px;&lt;/b&gt;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Předposlední problém — &lt;strong&gt;dvoupixelový vnější okraj (margin) ve Webkitu navíc&lt;/strong&gt; — vyřešíme jeho vynulováním. Příčina? Opět mě není přesně známa. Chrome Developer Tools nám sice v například dvoupixelový margin u &lt;code&gt;input[type=submit]&lt;/code&gt; ukáží v „Computed Style”, nicméně po jeho původu není vidu ani slechu nejen v „user agent stylesheet” tamtéž, ale ani v &lt;a href="http://trac.webkit.org/browser/trunk/WebCore/css/html.css"&gt;přednastaveném stylopise&lt;/a&gt; ve veřejném repozitáři Webkitu. Co vy na to, agente Muldere? Dalším krokem tedy bude vynulování marginu:&lt;/p&gt;

&lt;pre&gt;
&lt;code&gt;.submit_better { 
  padding: 5px 10px; 
  font: 12px/18px Arial, sans-serif;
  background: red; 
  color: white; 
  border: 1px outset #F30;
  overflow: visible;
  height: 30px;
  &lt;b&gt;margin: 0;&lt;/b&gt;
}&lt;/code&gt;
&lt;/pre&gt;

&lt;p&gt;Jdeme na problém poslední — &lt;strong&gt;vnitřní okraj (padding) navíc ve Firefoxu 3.6&lt;/strong&gt;. Když se podíváte do jeho přednastaveného stylopisu pro formuláře (na MacOS v &lt;code&gt;/Applications/Firefox.app/Contents/MacOS/res/forms.css)&lt;/code&gt;, najdete tam pravidlo podobné tomuto:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
input[type="submit"]::-moz-focus-inner { 
  padding: 0px 2px 0px 2px;
}   
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Firefox pak elementu, kde očekává outline (zvýraznění focusovaného prvku)  vykresluje tento vnitřní okraj navíc. Zbavme se ho. K našemu pravidlu přidáme tedy ještě jedno:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;
.submit_better { 
  padding: 5px 10px; 
  font: 12px/18px Arial, sans-serif;
  background: red; 
  color: white; 
  border: 1px outset #F30;
  overflow: visible;
  height: 30px;
  margin: 0;
}

&lt;b&gt;.submit_better::-moz-focus-inner { 
  padding: 0;
}&lt;/b&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Hotovo! Aktuálně se naše tlačítko zobrazuje na očekávané pozici a v očekávaných rozměrech v IE8, FF3.6, Chrome 7, Safari 5. Tlačítko je mírně větší v IE7 a ještě trochu více v IE6, ale způsobem, který nijak zásadně neohrožuje ani layout uvedený v prvním obrázku.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.vzhurudolu.cz/test/submit-button-dimensions/"&gt;Výsledný test-case ještě jednou &gt;&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Na závěr ještě malé šťouchnutí — všimli jste si několika v článku hned několika referencí na přednastavené stylopisy prohlížečů (user agent stylesheets)? Přátelé, ty jsou pravým kodérským pokladem. Pokud z něj chcete vidět další perličky, nalaďte si &lt;a href="http://twitter.com/machal"&gt;Twitter&lt;/a&gt; autora.&lt;/p&gt;</description><link>http://kratce.vzhurudolu.cz/post/1397448754</link><guid>http://kratce.vzhurudolu.cz/post/1397448754</guid><pubDate>Mon, 25 Oct 2010 07:56:00 +0200</pubDate><category>css</category><category>články</category></item><item><title>"Descendant selectors like .content .sidebar are problematic because to determine whether it should..."</title><description>“Descendant selectors like .content .sidebar are problematic because to determine whether it should apply the styles to .sidebar, it has to find .content. Child selectors (Ex. .content &gt; .sidebar) are better than general descendant selectors because the browser only has to check one other element instead of mutiple elements.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;&lt;a href="http://snook.ca/archives/html_and_css/css-parent-selectors"&gt;„Why we don’t have a parent selector”&lt;/a&gt; — čtete celé, Jonathan Snook válí!&lt;/em&gt;</description><link>http://kratce.vzhurudolu.cz/post/1345891071</link><guid>http://kratce.vzhurudolu.cz/post/1345891071</guid><pubDate>Mon, 18 Oct 2010 22:38:00 +0200</pubDate><category>výkon</category><category>css</category><category>prohlížeče</category></item></channel></rss>

