<?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>Peter Oravec Blog &#187; štýl</title>
	<atom:link href="http://www.peteroravec.sk/tag/styl/feed" rel="self" type="application/rss+xml" />
	<link>http://www.peteroravec.sk</link>
	<description>O IT, weboch, webdizajne, SEO a RC modeloch...</description>
	<lastBuildDate>Wed, 25 Jan 2012 19:59:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Ako horizontálne vycentrovať obsah &#8211; DIV na stred v CSS?</title>
		<link>http://www.peteroravec.sk/ako-horizontlne-vycentrovat-obsah-div-na-stred-css</link>
		<comments>http://www.peteroravec.sk/ako-horizontlne-vycentrovat-obsah-div-na-stred-css#comments</comments>
		<pubDate>Mon, 14 Jul 2008 19:31:29 +0000</pubDate>
		<dc:creator>Peter Oravec</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Webdizajn a programovanie]]></category>
		<category><![CDATA[štýl]]></category>

		<guid isPermaLink="false">http://blog.peteroravec.net/?p=241</guid>
		<description><![CDATA[Veľmi často vidím na fórach stále tú istú otázku ohľadom CSS a centrovania a to: "Ako mám vycentrovať DIV?". Tento článoček je o tom ako to docieliť, primárne sú 2 spôsoby ako to spraviť. Uvedieme si dva spôsoby ako centrovať obsah ktoré sa od seba dosť líšia. V praxi ale nieje úplne ideálne riešenie ktoré by všade fungovalo bez problémov. Hlavne kvôli IE6 (najlepšiemu prehliadaču na svete) je potreba byť...]]></description>
			<content:encoded><![CDATA[<p>Veľmi často vidím na fórach stále tú istú otázku ohľadom CSS a centrovania a to: "Ako mám vycentrovať DIV?". Tento článoček je o tom ako to docieliť, primárne sú 2 spôsoby ako to spraviť.<span id="more-241"></span></p>
<p>Uvedieme si dva spôsoby ako centrovať obsah ktoré sa od seba dosť líšia. V praxi ale nieje úplne ideálne riešenie ktoré by všade fungovalo bez problémov. Hlavne kvôli IE6 (najlepšiemu prehliadaču na svete) je potreba byť opatrnejší pretože ohľadom centrovania je IE6 častokrát ťažko zlúčiteľné.</p>
<h2>Spôsob horizontálneho centrovania pomocou position: absolute</h2>
<p>Jeden zo spôsobov  horizontálneho vycentrovania obsahu je , že celý obsah je obalený  DIVom ktorý <strong>má určenú pevnú šírku v pixeloch</strong>.  Obalovací DIV je pritom najvrchnejší obalovací element. Pre jeho vycentrovanie zadefinujeme takéto CSS:<br />
<pre><pre>#container {
&lt;strong&gt;&nbsp;&nbsp;width: 500px;&lt;/strong&gt;
&nbsp;&nbsp;background: red;&lt;strong&gt;
&nbsp;&nbsp;position: absolute;
&nbsp;&nbsp;left: 50%;
&nbsp;&nbsp;margin-left: -250px;&lt;/strong&gt;
}</pre></pre><br />
Centrovanie obsahu je možné iba ak má obsah <strong>pevne danú šírku obaľovacieho DIVu. </strong>Cez position: absolute určíme, že umiestnenie z ľava 50% čo spôsobí, že DIV s červeným pozadím a šírkou 500px bude umiestnený v strede obrazovky. <strong>Do stredu ho dostaneme tak, že nastavíme ľavé odsadenie o hodnotu -250px čo náš DIV umiestni presne do stredu. </strong>Toto riešenie je síce ľahké a rýchle ale ja osobne ho nepoužívam a snažím sa centrovať pomocou margin: auto.</p>
<h2>Spôsob horizontálneho centrovania pomocou margin: auto</h2>
<p>Centrovanie obsahu pomocou margin: auto je ten vhodnejší spôsob centrovania ktorého by som sa držal i keď si to vyžaduje možno viac písania a optimalizovania. Tu budeme ale okrem jedného obaľovacieho DIVu používať dva obaľovacie DIVy. Prečo? Preto, že niektoré prehliadače pri centrovaní obsahu pomocou margin: auto sa nerozoztiahnu po celej výške - neobtečú a neroztiahnu DIV a teda ak má tento DIV farebné pozadie prípadne ako pozadie obrázok tak ho nemáme po celej výške.</p>
<p>Znie to divne? Možno ale my s tým nič nespravíme a ak budeme chcieť aby to bolo rovnaké vo všetkých browsroch tak sa s tým budeme musieť zmieriť. Urobíme tzv. matriošku čo sú naše dva obaľovacie DIVy.</p>
<p>Jeden bude centrovať pomocou margin: auto a text-align: center na stred a druhý ktorý je vnorený dovnútra bude obsahovať float a prípadné pozadie. CSSsko by mohlo vyzerat nejak takto:<br />
<pre><pre>body {
&nbsp;&nbsp;text-align: center;
}

#obsah-vonku {
&nbsp;&nbsp;display: block;
&nbsp;&nbsp;&lt;strong&gt;width: 500px;
&nbsp;&nbsp;margin: 0 auto;&lt;/strong&gt;
}

#obsah-dnu {
&nbsp;&nbsp;&lt;strong&gt;float: left;&lt;/strong&gt;
&nbsp;&nbsp;width: 100%;
&nbsp;&nbsp;margin: 0;
&nbsp;&nbsp;background: red;
&nbsp;&nbsp;text-align: left;
}</pre></pre></p>
<h3>Prečo používame na centrovanie dva DIVy?</h3>
<p>Ako som písal vyššie robíme to kvôli riešeniu problému zobrazovania farebného pozadia. Problém je v tom, že ak centrujeme div pomocou margin: auto tak nemusí obsah obtekať. To sa dá ľahko vyriešiť pomocou <strong>float: left </strong>ale použiť naraz float a margin: auto nejde pretože float by náš obsah zarovnal k nejakému rohu a to predsa nechceme lebo centrujeme na stred.</p>
<blockquote><p>Proste a jednoducho... dva DIVy. Jeden má definované margin: 0 auto; (ide hlavne o margin left a right aby bol auto) s danou šírkou. Toto nám to dá na stred. Druhý div má float: left aby prípadné pozadie sa roztiahlo podľa obsahu na celú výšku. Celá veda <img src='http://www.peteroravec.sk/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p></blockquote>
<h2  class="related_post_title">Podobné články</h2><ul class="related_post"><li>13. Júl 2008 -- <a href="http://www.peteroravec.sk/relativne-a-absolutne-poziciovanie-v-cascading-style-sheets-css" title="Relatívne a absolútne poziciovanie v Cascading Style Sheets (CSS)">Relatívne a absolútne poziciovanie v Cascading Style Sheets (CSS)</a></li><li>10. August 2010 -- <a href="http://www.peteroravec.sk/css3-v-praxi-box-rotacia-elementov" title="CSS3 v praxi: rotácia elementov pre všetky prehliadače (IE5.5+)">CSS3 v praxi: rotácia elementov pre všetky prehliadače (IE5.5+)</a></li><li>28. August 2008 -- <a href="http://www.peteroravec.sk/internet-explorer-6-je-brzda-internetu" title="Internet Explorer 6 je brzda internetu">Internet Explorer 6 je brzda internetu</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.peteroravec.sk/ako-horizontlne-vycentrovat-obsah-div-na-stred-css/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Relatívne a absolútne poziciovanie v Cascading Style Sheets (CSS)</title>
		<link>http://www.peteroravec.sk/relativne-a-absolutne-poziciovanie-v-cascading-style-sheets-css</link>
		<comments>http://www.peteroravec.sk/relativne-a-absolutne-poziciovanie-v-cascading-style-sheets-css#comments</comments>
		<pubDate>Sun, 13 Jul 2008 21:53:39 +0000</pubDate>
		<dc:creator>Peter Oravec</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Webdizajn a programovanie]]></category>
		<category><![CDATA[štýl]]></category>

		<guid isPermaLink="false">http://blog.peteroravec.net/?p=237</guid>
		<description><![CDATA[Tento článok popisuje rozdiel medzi position: absolute a relative poziciovaním pomocou CSS. I keď sa to zdá logické a jasné niektorý proste túto funkciu nepoužívajú správne.Position: relative umožňuje dve úžasné veci pri štýlovaní pomocou CSS a to: ak nastavíme nejakému obaľovaciemu elementu napríklad DIVu position: relative; zmeníme tým východzí bod pre ďalšie elementy umiestňované absolútne vo vnútri toho elementu ak nastavíme nejakému elementu (ktorý je vnorený napríklad do DIVu ktorý...]]></description>
			<content:encoded><![CDATA[<p>Tento článok popisuje rozdiel medzi position: absolute a relative poziciovaním pomocou CSS. I keď sa to zdá logické a jasné niektorý proste túto funkciu nepoužívajú správne.<span id="more-237"></span><strong>Position: relative</strong> umožňuje dve úžasné veci pri štýlovaní pomocou CSS a to:</p>
<ul>
<li>ak nastavíme nejakému obaľovaciemu elementu napríklad DIVu <strong>position: relative; </strong>zmeníme tým východzí bod pre ďalšie elementy umiestňované absolútne vo vnútri toho elementu</li>
<li>ak nastavíme nejakému elementu (ktorý je vnorený napríklad do DIVu ktorý ale nemá nastavené position relative) tak vtedy môžete pohybovať relatívne s ľubovoľným elementom pomocou top, bottom, left, right</li>
</ul>
<h2>Zdá sa to zložité?</h2>
<p>Asi sa to zdá zložité ale vôbec nieje, len sa to trochu blbo vysvetľuje ale skúsim to na obrázkoch.</p>
<blockquote><p>Proste a jednoducho, keď dám niečomu position: absolute a napríklad top: 0; left: 0; tak sa to zobrazí v ľavom hornom rohu prehliadača. Ak ale element v ktorom mi používame toto position absolute má nastavený position: relative tak sa deje presne to isté ako o pár svoj vyššie ale element je umiestnený v ľavom hormon rohu toho elementu ktorý má definované práve to position relative. Tým position relative len zmeníme východzí bod pre umiestňovanie.</p></blockquote>
<h3>Čo sa stane keď dáte nejakému elementu position: absolute?</h3>
<p>Odkazu nastavíte:<br />
<pre><pre>#mojdiv {
&nbsp;&nbsp;background: red;
&nbsp;&nbsp;/* tento kus kódu len vycentruje DIV a
&nbsp;&nbsp;nastaví mu pevné rozmery */
&nbsp;&nbsp;width: 300px;
&nbsp;&nbsp;height: 100px;
&nbsp;&nbsp;margin: 150px auto 0 auto;
}&nbsp;&nbsp;

#mojodkaz {
&lt;strong&gt;&nbsp;&nbsp;position: absolute;&lt;/strong&gt;
&nbsp;&nbsp;top: 0;
&nbsp;&nbsp;left: 0;
&nbsp;&nbsp;background: green;
}</pre></pre><br />
Ak rozumiete rozdielu medzi absolute a relative tak toto kľudne preskočte, pre tých ostatných si ukážeme na príklade čo sa stane. Predstavte si že v kóde máte jeden DIV v ktorom je jeden odkaz.</p>
<h3>Kde bude umiestnený odkaz?</h3>
<p>Odkaz sa zobrazí v ľavom hornom rohu prehliadača a je jedno v akom DIVe je alebo ako hlboko je vnorený v kóde. Implicitne sa všetky elementy zobrazujú v ľavom hornom rohu prehliadača.</p>
<p><img class="alignnone size-medium wp-image-238" title="Absolutné poziciovanie v CSS" src="http://www.peteroravec.sk/wp-content/uploads/2008/07/css1.jpg" alt="Absolutné poziciovanie v CSS" width="436" height="337" /></p>
<h2>Čo robí position: relative?</h2>
<p>Position: relative zmení východzí bod pre absolútne poziciovanie z ľavého horného rohu prehliadača na ľavý horný roh elementu ktorému definujete práve to position: relative. Elementy z predchádzajúceho príkladu by sa zobrazovali nejak takto ak by sme červenému DIVu definovali position: relative.</p>
<p><a href="http://www.peteroravec.sk/wp-content/uploads/2008/07/css2.jpg"><img class="alignnone size-medium wp-image-239" title="Absolutné poziciovanie v CSS" src="http://www.peteroravec.sk/wp-content/uploads/2008/07/css2.jpg" alt="Absolutné poziciovanie v CSS" width="436" height="337" /></a></p>
<p>Okrem zmeny východzieho bodu môžete použiť position: relative aj na zmenu pozície elementu z jeho aktuálnej polohy. Pomocou top, left, right a bottom môžeme s elementom hýbať ľubovoľne z jeho aktuálnej pozície.</p>
<h2  class="related_post_title">Podobné články</h2><ul class="related_post"><li>14. Júl 2008 -- <a href="http://www.peteroravec.sk/ako-horizontlne-vycentrovat-obsah-div-na-stred-css" title="Ako horizontálne vycentrovať obsah &#8211; DIV na stred v CSS?">Ako horizontálne vycentrovať obsah &#8211; DIV na stred v CSS?</a></li><li>10. August 2010 -- <a href="http://www.peteroravec.sk/css3-v-praxi-box-rotacia-elementov" title="CSS3 v praxi: rotácia elementov pre všetky prehliadače (IE5.5+)">CSS3 v praxi: rotácia elementov pre všetky prehliadače (IE5.5+)</a></li><li>28. August 2008 -- <a href="http://www.peteroravec.sk/internet-explorer-6-je-brzda-internetu" title="Internet Explorer 6 je brzda internetu">Internet Explorer 6 je brzda internetu</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.peteroravec.sk/relativne-a-absolutne-poziciovanie-v-cascading-style-sheets-css/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

