<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Martin Pešout &#187; CSS3</title>
	<atom:link href="https://www.martinpesout.cz/tag/css3/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.martinpesout.cz</link>
	<description>Front-end vývojář</description>
	<lastBuildDate>Thu, 26 Jun 2025 22:12:07 +0000</lastBuildDate>
	<language>cs-CZ</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.6</generator>
		<item>
		<title>Animované barevné přechody v CSS</title>
		<link>https://www.martinpesout.cz/animovane-barevne-prechody-v-css/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rss</link>
		<comments>https://www.martinpesout.cz/animovane-barevne-prechody-v-css/#comments</comments>
		<pubDate>Sat, 04 Jan 2014 13:27:42 +0000</pubDate>
		<dc:creator>Martin Pešout</dc:creator>
				<category><![CDATA[Kódování]]></category>
		<category><![CDATA[animace]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[kódování]]></category>

		<guid isPermaLink="false">http://www.martinpesout.cz/?p=1958</guid>
		<description><![CDATA[Běžný front-end vývojář musí čas od času použít barevné přechody u různých prvků na webové stránce. Typickým příkladem může být třeba barevné talčítko. Jenže rozhodneme-li se přidat k takovému tlačítku animaci, např. při najetí myši ho budeme chtít plynule zesvětlit,]]></description>
				<content:encoded><![CDATA[<div class="l-submain"><div class="l-submain-h g-html i-cf"><p>Běžný front-end vývojář musí čas od času použít barevné přechody u různých prvků na webové stránce. Typickým příkladem může být třeba barevné talčítko. Jenže rozhodneme-li se přidat k takovému tlačítku animaci, např. při najetí myši ho budeme chtít plynule zesvětlit, tak narazíme na problém, protože prohlížeč naší animaci jednoduše ignoruje. V dnešním článku bych rád ukázal zajímavou techniku jen za použití CSS, která problém animovaných přechodů do určité míry řeší.</p>
<h2>Proč problém nastává?</h2>
<p>Aby bylo možné si udělat představu, jak funguje původní neopravené řešení, tak jsem připravil malou ukázku:</p>
<pre class="codepen"data-height="300"data-type="result"data-href="nxqby"data-user="martinpesout"data-safe="true"><code></code><a href="http://codepen.io/martinpesout/pen/nxqby">Check out this Pen!</a></pre><script async src="http://codepen.io/assets/embed/ei.js"></script>
<p>Důvod, proč nelze barevný přechod animovat, je jednoduchý. Podíváme-li se do <a href="http://www.w3.org/TR/css3-transitions/#animatable-properties">specifikace</a>, tak zde uvidíme celou řadu vlastností, na které lze animace použít. Barevné přechody musíme brát jako obrázky, které se renderují přímo v prohlížeči. A právě <code>background-image</code> není v seznamu podporovaných vlastností.</p>
<h2>Jednoduchý trik pro jednoduché animace</h2>
<p>Je sice pravda, že animaci nelze použít na vlastnost <code>background-image</code>, ale je zde stále řada jiných vlastností, které takové omezení nemají. Protože se jedná o jistý druh obrázku, tak máme k dispozici <code>background-size</code> a <code>background-position</code>. A právě <code>background-position</code> již animovat lze. Naleznete jí také v zmíněném <a href="http://www.w3.org/TR/css3-transitions/#animatable-properties">seznamu</a>.</p>
<p>Použijme tedy následující trik. Pozadí (barevný přechod) roztáhneme na výšku pomoci <code>background-size</code> na velikost rovnou dvojnásobku původní velikosti a po najetí myši posuneme celý obrázek o 100% nahoru (tzn. o celý původní rozměr). Zápis v CSS může vypadat následujícím způsobem:</p>
<pre class="brush: css; title: ; notranslate">
.btn {
  background: linear-gradient(#ffce25,#ff9201);
  background-size: auto 200%;
  background-position: 0 100%;
  background-repeat: repeat;
}
</pre>
<p>Nezapomeňte dodržet pořadí zápisu a definovat barevný přechod před změnou jeho velikosti na 200%. Pak už jen zbývá přidat zmíněnou animaci a efekt, který nastane při přejetí myší:</p>
<pre class="brush: css; title: ; notranslate">
.btn {
  transition-property: all;
  transition-duration: 0.25s;
  transition-timing-function: linear;
}

.btn:hover {
  background-position: 0 0;
}
</pre>
<p>Výsledek si můžete prohlédnout zde:</p>
<pre class="codepen"data-height="300"data-type="result"data-href="skAie"data-user="martinpesout"data-safe="true"><code></code><a href="http://codepen.io/martinpesout/pen/skAie">Check out this Pen!</a></pre><script async src="http://codepen.io/assets/embed/ei.js"></script>
<h2>Podpora běžných prohlížečů</h2>
<p>Toto řešení je podporováno u těch prohlížečů, kde je již implementována podpora CSS vlastnosti <code>linear-gradient</code>:</p>
<ul>
<li>Chrome 4+</li>
<li>Firefox 3.6+</li>
<li>Opera 11.1+</li>
<li>Safari 4+</li>
<li>Internet Explorer 10+</li>
</ul>
<p>Více informací naleznete zde <a href="http://caniuse.com/css-gradients">http://caniuse.com/css-gradients</a>.</p>
<p>I když v této ukázce nejsou podporovány starší verze prohlížečů Internet Explorer 8 a 9, tak nemusíme ještě házet flintu do žita. Toto řešení obsahuje jednoduchý fallback a při jejich použití se zobrazí se pouze čísté jednobarevné tlačítko s barvou definovanou u vlastnosti <code>background</code>. Přijdeme sice o animaci a barevný přechod, ale to je jediný rozdíl. Důležité je, že tlačítko neztratí rozměry a barevností zůstane také stejné.</p>
<h2>Závěrem</h2>
<p>Z ukázky lze vidět, že toto jednoduché řešení se hodí pouze na lineární tranformace. Nicméně tyto transformace bývají nejčastější a právě u prvků, jako jsou tlačítka, je využijeme nejvíce. Pokud však někdo z čtenářů objeví lepší a třeba i čistší řešení, budu velice rád, když se o něj podělí v komentářích.</p>
<div class="w-actionbox color_alternate controls_aside"><div class="w-actionbox-h"><div class="w-actionbox-text"><h3>Novinky ze světa front-endu</h3><p>Pokud vás zajímají další novinky ze světa front-endu, můžete sledovat můj profil na Twitteru</p></div><div class="w-actionbox-controls at_right"><a class="w-actionbox-button g-btn type_default" href="https://twitter.com/martinpesout"><span>@martinpesout</span></a></div></div></div>
</div></div>]]></content:encoded>
			<wfw:commentRss>https://www.martinpesout.cz/animovane-barevne-prechody-v-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flexbox &#8211; moderní způsob tvorby layoutů</title>
		<link>https://www.martinpesout.cz/flexbox-moderni-zpusob-tvorby-layoutu/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rss</link>
		<comments>https://www.martinpesout.cz/flexbox-moderni-zpusob-tvorby-layoutu/#comments</comments>
		<pubDate>Sun, 08 Dec 2013 20:43:21 +0000</pubDate>
		<dc:creator>Martin Pešout</dc:creator>
				<category><![CDATA[Kódování]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[flexbox]]></category>
		<category><![CDATA[kódování]]></category>
		<category><![CDATA[layout]]></category>

		<guid isPermaLink="false">http://www.martinpesout.cz/?p=1903</guid>
		<description><![CDATA[Flexbox je nový a velmi mocný nástroj na tvorbu layoutů pomocí CSS. Navíc je zcela odlišný od způsobu, na který jsme tu zvyklý již řadu let. Většina online příruček se zaměřuje na detaily ze samotné specifikace, které bývají dlouhé, složité]]></description>
				<content:encoded><![CDATA[<div class="l-submain"><div class="l-submain-h g-html i-cf"><p><code>Flexbox</code> je nový a velmi mocný nástroj na tvorbu layoutů pomocí CSS. Navíc je zcela odlišný od způsobu, na který jsme tu zvyklý již řadu let. Většina online příruček se zaměřuje na detaily ze samotné specifikace, které bývají dlouhé, složité a těžko srozumitelné. Na druhou stranu je zde poměrně málo informací o tom, jak může být <code>flexbox</code> užitečný fron-end vývojářům při řešení každodenních problémů. Tento článek by měl být takovým úvodem a ukázat možnosti, které nám nabízí při tvorbě layoutu.</p>
<p><code>Flexbox</code> nabízí v základu 3 vlastnosti, které jsou pro design webu podstatné, ale které bylo těžké dlouhou dobu nadefinovat pomocí CSS: zarovnání, rozmístění a pořadí prvků.</p>
<p>Než přistoupím ke konkrétním ukázkám, tak bych rád zmínil několik věcí, které je dobré znát:</p>
<ul>
<li><code>Flexbox</code> prošel třemi vývojovými cykly, než byla stanovena současná definice, kterou nalezneme ve specifikaci. Každá z těchto iterací se vyznačovala odlišným názvem a také odlišným <a href="http://demosthenes.info/blog/217/CSS-Vendor-Prefixes-and-Flags">prefixem</a> pro různé webové prohlížeče. V současnosti se vše ustálilo a nejnovější prohlížeče podporují jeden konečný název bez nutnosti používat prefix. Nicméně podrporovat na novém webu <code>Flexbox</code> pro starší prohlížeče není vůbec snadná věc. Proto při psaní kódu <strong>doporučuji nejprve vše napsat a otestovat pro nejnovější verze prohlížečů</strong> a s použitím finální verze <code>Flexbox</code> a až potom vše ladit pro starší prohlížeče.</li>
<li>I když <code>Flexbox</code> dokáže spolupracovat s ostatními způsoby tvorby layoutů v CSS, tak je většinou vhodnější tyto <strong>původní a zaběhnuté postupy při tvorbě layoutů opustit</strong>. Jde totiž o to, že se nově jedná o odlišný způsob návrhu a práce.</li>
</ul>
<h2>Základní ukázky použití vlastnosti Flexbox</h2>
<p>Mějme 3 jednoduché <code>&lt;div&gt;</code> elementy, které umístíme dovnitř jednoho společného:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;div id=&quot;item-container&quot;&gt;
  &lt;div class=&quot;circle&quot;&gt;&lt;/div&gt;
  &lt;div class=&quot;square&quot;&gt;&lt;/div&gt;
  &lt;div class=&quot;circle&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
</pre>
<p>V CSS nadefinujeme styl tak, aby každý z vnořených <code>&lt;div&gt;</code> elementů vypadal stejně jako název třídy, který nese. Vlastnost <code>display: flex</code> nastavíme na vnější společný <code>&lt;div&gt;</code>:</p>
<pre class="brush: css; title: ; notranslate">
#item-container {
display: flex;
background-color: hsl(34,88%,90%);
}

.square {
height: 200px;
width: 200px;
background-color: hsl(50,88%,50%);
}

.circle {
border-radius: 50%;
width: 150px;
height: 150px;
background-color: hsl(22,88%,50%);
}
</pre>
<p>Výsledek, který dostaneme, vypadá následujícím způsobem:</p>
<p><img class="alignnone size-full wp-image-1925" alt="Snímek obrazovky 2013-12-08 v 19.12.53" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 19.12.53.png" width="723" height="194" /></p>
<p>Je potřeba zmínit hned několik důležitých věcí:</p>
<ul>
<li>Nejběžnější vlastnosti &#8222;flex&#8220; se používají na nadřazené elementy v HTML. Proto je také v naší ukázce použita definice u prvků s ID <code>#item-container</code>. Toto bývá často zdrojem nejasností, protože většina webových vývojářů je zvyklá pozicovat až konkrétní vnořené elementy.</li>
<li>&#8222;Block&#8220;, &#8222;inline&#8220;, &#8222;float&#8220; a &#8222;text-align&#8220; nemají žádný význam mluvíme-li o jednotlivých položkách, na které aplikujeme flexbox zarovnání.</li>
<li>Ve výchozím stavu jsou položky zarovnány k levému hornímu rohu nadřazeného elementu.</li>
</ul>
<h2>Další možnosti zarovnání prvků</h2>
<p>Na dalším příkladě si ukážeme, jak změnit horizontální zarovnání jednotlivých položek. Výchozí zarovnání doleva je známo jako <code>flex-start</code>. Zarovnat prvky k pravému okraji můžeme provést následujícím způsobem:</p>
<pre class="brush: css; title: ; notranslate">
#item-container { justify-content: flex-end; }
</pre>
<p><img class="alignnone size-full wp-image-1937" alt="Snímek obrazovky 2013-12-08 v 20.22.08" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 20.22.08.png" width="722" height="193" /></p>
<p>Určitě si můžete říkat, že se stále nejedná o nic přelomového. Pojďme si tedy ukázat další možnosti:</p>
<pre class="brush: css; title: ; notranslate">
#item-container { justify-content: center; }
</pre>
<p><img class="alignnone size-full wp-image-1938" alt="Snímek obrazovky 2013-12-08 v 20.26.29" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 20.26.29.png" width="722" height="192" /></p>
<p>Toto je už elegantní řešení. Docílit podobného zarovnání použitím tradičního CSS by obvykle vyžadovalo navíc jeden HTML element a další doplňující CSS definice. Nicméně ještě nejsme v ukázkách u konce.</p>
<pre class="brush: css; title: ; notranslate">
#item-container { justify-content: space-between; }
</pre>
<p><img class="alignnone size-full wp-image-1940" alt="Snímek obrazovky 2013-12-08 v 20.32.54" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 20.32.54.png" width="723" height="192" /></p>
<p>Můžeme vidět, že prostor mezi prvky se rovnoměrně rozproštřel. Toto nastane pouze v situaci, kdy to aplikujeme na dva a více prvků.</p>
<p>Ještě jednu definici zbývá ukázat:</p>
<pre class="brush: css; title: ; notranslate">
#item-container { justify-content: space-around; }
</pre>
<p><img class="alignnone size-full wp-image-1942" alt="Snímek obrazovky 2013-12-08 v 20.40.35" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 20.40.35.png" width="722" height="192" /></p>
<p>Výsledek si lze představit podobně, jako kdyby bylo “margin: 0 auto použito na vše”. Jednotlivé položky jsou opět rovnoměrně rozprostřeny, ale každá zvlášť je navíc vycentrovaná uvnitř přiděleného prostoru.</p>
<p>Tyto ukázky řeší zatím jen horizontální zarovnání. Jaké ale máme možnosti u vertikálního zarovnání?</p>
<pre class="brush: css; title: ; notranslate">
#item-container { justify-content: space-between; align-items: center; }
</pre>
<p><img class="alignnone size-full wp-image-1944" alt="Snímek obrazovky 2013-12-08 v 20.48.42" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 20.48.42.png" width="722" height="192" /></p>
<p>Prostřední prvek nemá kolem sebe žádný prostor navíc, protože je ze všech prvků nejvyšší. Zbývající menší prvky jsou rovnoměrně umístěny na středu vzniklého prostoru.</p>
<p>Další možnosti vertikálního zarovnání jsou následující:</p>
<ul>
<li>flex-start &#8211; výchozí nastavení, zarovnání k hornímu okraji obklopujícího HTML elementu</li>
<li>flex-end &#8211; zarovnání k dolnímu okraji obklopujícího HTML elementu</li>
</ul>
<p><code>Flexbox</code> je navíc historicky prvním systémem na tvorbu layoutů, který umožňil definovat pořadí jednotlivých prvků. Pojďme si to ukázat na jednoduchém přikladě: umístíme čtverec před první kruh z naší ukázky:</p>
<pre class="brush: css; title: ; notranslate">
.square { order: -1; }
</pre>
<p><img class="alignnone size-full wp-image-1945" alt="Snímek obrazovky 2013-12-08 v 21.05.08" src="http://www.martinpesout.cz/wp-content/uploads/2013/12/Snímek-obrazovky-2013-12-08-v 21.05.08.png" width="722" height="192" /></p>
<p>Výsledek je úžasný. <code>Flexbox</code> ruší pevně definované pořadí jednotlivých prvků na našich stránkách. Obvykle by totiž pořadí jednotlivých prvků bylo určeno jejich umístěním ve zdrojovém HTML kódu. Dříve by této změny šlo dosáhnout pouze pomocí JavaScriptu. Je důležité si tedy uvědomit, že váš zdrojový HTML kód zůstává nezměněn. Snadno si to můžete ověřit pomocí volby <em>Zobrazit zdrojový kód</em> ve vašem internetovém prohlížeči.</p>
<p><code>Flexbox</code> nám nabízí mnohem víc možností při tvorbě designu webových stránek. V tomto článku jsem se snažil na několika jednoduchých ukázkách demonstrovat sílu tohoto nástroje při zarovnávání, které bylo ještě do nedávna nemožné čistě jen za použití CSS.</p>
<h2>Zdroje</h2>
<ul>
<li><a href="http://demosthenes.info/blog/780/A-Designers-Guide-To-Flexbox">A Designer&#8217;s Guide to Flexbox</a></li>
</ul>
</div></div>]]></content:encoded>
			<wfw:commentRss>https://www.martinpesout.cz/flexbox-moderni-zpusob-tvorby-layoutu/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Tajemství lepšího formátování do bloku</title>
		<link>https://www.martinpesout.cz/tajemstvi-lepsiho-formatovani-do-bloku/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rss</link>
		<comments>https://www.martinpesout.cz/tajemstvi-lepsiho-formatovani-do-bloku/#comments</comments>
		<pubDate>Fri, 18 Oct 2013 23:33:53 +0000</pubDate>
		<dc:creator>Martin Pešout</dc:creator>
				<category><![CDATA[Kódování]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[kódování]]></category>

		<guid isPermaLink="false">http://beta.martinpesout.cz/?p=1816</guid>
		<description><![CDATA[V tomto příspěvku bych se rád rozepsal o metodice, která je v angličtině popisovaná jako block formatting context. Jednoduše řečeno, jedná se sérii CSS pravidel, které ovlivňují způsob obtékání kolem plovoucích prvků. Trocha specifikace na začátek Když jsem poprvé četl]]></description>
				<content:encoded><![CDATA[<div class="l-submain"><div class="l-submain-h g-html i-cf"><p>V tomto příspěvku bych se rád rozepsal o metodice, která je v angličtině popisovaná jako <strong>block formatting context</strong>. Jednoduše řečeno, jedná se sérii CSS pravidel, které ovlivňují způsob obtékání kolem plovoucích prvků.</p>
<p><span id="more-1816"></span></p>
<h2>Trocha specifikace na začátek</h2>
<p>Když jsem poprvé četl o této metodice, tak se ke mně nejprve dostala <a href="http://www.w3.org/TR/2011/REC-CSS2-20110607/visuren.html#block-formatting">oficiální definice</a>:</p>
<div class="w-testimonial">
						<div class="w-testimonial-h">
							<blockquote>
								<q class="w-testimonial-text"> Floats, absolutely positioned elements, block containers (such as inline-blocks, table-cells, and table-captions) that are not block boxes, and block boxes with &#8218;overflow&#8216; other than &#8218;visible&#8216; (except when that value has been propagated to the viewport) establish new block formatting contexts for their contents. </q>
								<div class="w-testimonial-person">
									<i class="icon-user"></i>
									<span class="w-testimonial-person-name">W3C</span>,
									<span class="w-testimonial-person-meta">CSS 2.1</span>
								</div>
							</blockquote>
						</div>
					</div>
<p>&nbsp;</p>
<p>Pro běžné čtenáře může být tento zápis poměrně nepřehledný a zmatený. Zvažoval jsem tedy, že zde uvedu český přepis, ale díky složitému zápisu by to do celé věci nevneslo moc pořádku. <em>Block formatting context</em> se týká způsobu vykreslování a obtékání prvků na stránce. Vyvoláno bývá jednou z následujících CSS vlastností:</p>
<ul>
<li><code>float: left/right</code></li>
<li><code>overflow: hidden/auto/scroll</code></li>
<li><code>display: table-cell/table-caption</code></li>
<li><code>display: inline-block</code></li>
<li><code><code>position: absolute/fixed</code></code></li>
<li><code>display: flex/inline-flex</code></li>
</ul>
<p>Zkusme si raději celou definici přepsat do lidštější podoby a ukázat na několika příkladech.</p>
<h2>Příklad 1: Jak zabránit zalamování textu?</h2>
<p>Pokud vytváříme webové stránky, tak se nám často stává, že nechceme zalamovat text kolem plovoucího prvku. Typickým příkladem může být vytváření kratičkých sloupců.</p>
<p>Ná následujícím obrázku můžete vidět jednoduché použití vlastnosti <code>float: left</code>. Lze vidět, že pokud je text delší, tak začně obtékat šedý boxík kolem dokola.</p>
<p><img class="alignnone size-full wp-image-1846" alt="ukazka" src="http://www.martinpesout.cz/wp-content/uploads/2013/10/ukazka.jpg" width="650" height="157" /></p>
<p>Co když ale nechceme, aby se text nám zalamoval pod šedým boxíkem? Řešení je velmi jednoduché. Zkusme naše CSS definice mírně upravit</p>
<p><img class="alignnone size-full wp-image-1851" alt="ukazka2" src="http://www.martinpesout.cz/wp-content/uploads/2013/10/ukazka2.jpg" width="650" height="158" /></p>
<p>Všimněte si, že stačilo přidat žulté oblasti vlastnost <code>display: table-cell</code>. V mém přehledu nahoře v textu jsem tuto definici uvedl jako vlastnost, která vyvolává <em>block formatting context</em>. Šírku celé oblasti (v tomto případě 10000px) nastavíme jako šířku celé modré oblasti na obrázku.</p>
<p>Živou ukázku tohoto příkladu si můžete <a href="http://jsbin.com/amarox/4/edit">prohlédnout zde</a>.</p>
<h2>Příklad 2: Vytváření šablony stránky</h2>
<p>Můžeme jít v našem uvažování o trochu dál a využít předchozího příkladu při vytváření celých stránek. Často se stává, že layout připravované stránky počítá s použitím levého či pravého sloupce.</p>
<p><img class="alignnone size-full wp-image-1855" alt="ukazka3" src="http://www.martinpesout.cz/wp-content/uploads/2013/10/ukazka3.jpg" width="650" height="265" /></p>
<p>Hlavní textová část má v CSS definovanou šířku, které odpovídá celé šířce stránky. Navíc přidáme vlastnost <code>display: table-cell</code>. Toto nám dovolí přidávat flexibilní sloupce podle vlastního uvážení. V naší ukázce je vidět sloupec o šířce 300px.  Technika <em>block formatting context</em> je natolik šikovná, že pokud se rozhodneme změnit šírku sloupce např. z 300px na 400px, tak se nemusíme obávat nutnosti přepočítávat ostatní rozměry. Jednoduše změníme šířku levého sloupce a hlavní oblast se nám automaticky přizpůsobí.</p>
<p>Není to jednoduché? Navíc vše funguje i v situacích, kdy se rozhodneme na stránce mít levý i pravý sloupec. Hlavní oblast se nám automaticky přizpůsobí. Ukázku použití tří sloupců si můžete <a href="http://jsbin.com/idohoz/4/edit">prohlédnout zde</a>.</p>
<h2>Zdroje</h2>
<ul>
<li><a href="http://www.youtube.com/watch?v=8YtQwv1cUVs">Fiona Chan &#8211; The secrets of block formatting context</a></li>
<li><a href="http://www.w3.org/TR/2011/REC-CSS2-20110607/visuren.html#block-formatting">W3C definice</a></li>
</ul>
</div></div>]]></content:encoded>
			<wfw:commentRss>https://www.martinpesout.cz/tajemstvi-lepsiho-formatovani-do-bloku/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
