<?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>css-3Blog</title>
	<atom:link href="http://www.css-3.hu/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.css-3.hu</link>
	<description>Ez a blog elsősorban a CSS 3-ról szól, amely a CSS stílusleíró nyelv legújabb verziója.</description>
	<lastBuildDate>Fri, 03 Sep 2010 17:19:07 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Tükrözés CSS 3 segítségével</title>
		<link>http://www.css-3.hu/2010/08/tukrozes-css-3-segitsegevel/</link>
		<comments>http://www.css-3.hu/2010/08/tukrozes-css-3-segitsegevel/#comments</comments>
		<pubDate>Sat, 28 Aug 2010 16:31:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[box-reflect]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[CSS3 példa]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=268</guid>
		<description><![CDATA[Bizonyára sokan találkoztatok már különféle weboldalakon a különböző képi elemek tükrözésével. Főleg az Apple designjaira jellemző, hogy szinte minden képet tükröződve mutatnak. De még ilyen messzire sem kell menni, elég ha ennek a weboldalnak a fejlécét nézitek, és máris látni fogjátok miről beszélek. Most megmutatom, hogy hogyan lehet ezt a hatást CSS 3 segítségével elérni.
Előre [...]]]></description>
			<content:encoded><![CDATA[<p>Bizonyára sokan találkoztatok már különféle weboldalakon a különböző képi elemek tükrözésével. Főleg az Apple designjaira jellemző, hogy szinte minden képet tükröződve mutatnak. De még ilyen messzire sem kell menni, elég ha ennek a weboldalnak a fejlécét nézitek, és máris látni fogjátok miről beszélek. Most megmutatom, hogy hogyan lehet ezt a hatást CSS 3 segítségével elérni.<span id="more-268"></span></p>
<p>Előre szeretném bocsátani, hogy ez a megoldás inkább egy érdekesség bemutatása lesz, de a Photoshoptól még nem búcsúzhatunk el, ha tükröződéseket szeretnénk készíteni. Ennek két oka van. Egyrészt, amit itt be fogok mutatni az csak Webkit alapú böngészőkön, tehát Chrome és Safari alatt működik, máshol egyelőre nem. Másrészt a tükröződés minősége valahogy nem ugyanaz, mint amit egy képszerkesztő programmal elő lehet állítani. Tagadhatatlan előnye viszont, hogy dinamikus, tehát nem kell előre tudnunk, hogy mit tükrözünk, ami nagyon hasznos lehet például egy képgaléria esetén.</p>
<p>Nézzük tehát, hogy hogy működik a dolog. A CSS tulajdonság, aminek értéket kell adnunk, a<em> -webkit-box-reflect</em>. Három értéket kell megadnunk: hol legyen a tükörkép, milyen távolságra legyen az eredetitől és egy maszkot, ami eldönti, hogy mely pixel mennyire legyen látható a tükörképen. Az általános alak a következő:</p>
<pre class="brush: css">
	-webkit-box-reflect: direction offset mask-box-image;
</pre>
<p>A <em>direction </em>adja meg, hogy hol legyen a tükörkép. Az <em>above </em>(fölül), <em>below </em>(alul), <em>left </em>(balra) és <em>right </em>(jobbra) értékek közül választhatunk. Az <em>offset </em>segítségével állíthatjuk be, hogy az elem és a tükörképe között mekkora távolság legyen. A <em>mask-box-image </em>pedig az a &#8220;maszk&#8221;, ami a tükörkép tetejére kerül. Hogy a kívánt hatást elérjük, ennek a maszknak egy webkit-gradiensnek kell lennie. Nézzünk egy példát:</p>
<pre class="brush: css">
img.reflected {
	-webkit-box-reflect: below 2px -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0.5, transparent), to(white));
	vertical-align: top;
}
</pre>
<p>Ezt a kódot most alkalmazzuk egy képre. A bal oldalon látható az általad használt böngésző segítségével készült tükröződés, jobb oldalon pedig egy képernyőmentés azok számára, akik nem Webkit alapú böngészőt használnak.<br />
<iframe src="/wp-content/code-samples/css3-box-reflect.html" width="100%" height="230" frameBorder="0" scrolling="no">Az Ön böngészője nem támogatja az <em>iframe</em> használatát.</iframe></p>
<p>Nagyjából ennyi az egész. Még azt érdemes megemlíteni, hogy a dolog nemcsak képekre működik, hanem például a &lt;video&gt; elemre is, és ilyenkor az éppen futó video is tükröződik. Még egy jó pont, hogy a tükörkép nem veri szét a weboldal elrendezését, hanem szülő-elemének overflow-jaként funkcionál. Tehát ha nincs számára elég hely, és <em>overflow: hidden;</em> a beállítás, akkor a tükörkép csak részlegesen vagy egyáltalán nem látható.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/08/tukrozes-css-3-segitsegevel/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CSS hátterek</title>
		<link>http://www.css-3.hu/2010/04/css-hatterek/</link>
		<comments>http://www.css-3.hu/2010/04/css-hatterek/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 10:24:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[background]]></category>
		<category><![CDATA[CSS 2.1]]></category>
		<category><![CDATA[CSS alapok]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=262</guid>
		<description><![CDATA[A CSS alapjaival foglalkozó sorozat jelenlegi részében a CSS segítségével megvalósítható hátterekkel foglalkozunk. Háttere szinte minden DOM entitásnak lehet, de talán legtöbbször a body illetve a div elemekhez szoktunk hátteret beállítani. A beállításhoz a CSS background tulajdonságának különböző variációira lesz szükségünk.
A background-color segítségével beállíthatjuk a háttér színét. Ez főleg akkor hasznos, ha nem valamilyen képet [...]]]></description>
			<content:encoded><![CDATA[<p>A CSS alapjaival foglalkozó sorozat jelenlegi részében a CSS segítségével megvalósítható hátterekkel foglalkozunk. Háttere szinte minden DOM entitásnak lehet, de talán legtöbbször a <em>body</em> illetve a <em>div</em> elemekhez szoktunk hátteret beállítani. A beállításhoz a CSS <em>background</em> tulajdonságának különböző variációira lesz szükségünk.<span id="more-262"></span></p>
<p>A <em>background-color</em> segítségével beállíthatjuk a háttér színét. Ez főleg akkor hasznos, ha nem valamilyen képet akarunk beállítani háttérként vagy fennáll annak a lehetősége, hogy a háttérként beállítani kívánt kép mérete nem éri el a teljes kitöltendő területet, és a kép által nem takart rész színét mi akarjuk meghatározni. A legfontosabb az, hogy mindig ügyeljünk a háttér és a tartalom kontrasztjára, mert a fekete alapon sötétszürke betűk &mdash; és még rengeteg további példát sorolhatnék &mdash; olvasása rendkívül fárasztó, így látogatóink otthagyják az oldalt akármennyire érdekes is a tartalom. A következő beállítással például feketére állíthatjuk az egész oldal hátterét:</p>
<pre class="brush: css">
body {
background-color: black;
}
</pre>
<p>A <em>background-image</em> tulajdonság beállításával egy képet használhatunk háttérként. Mivel háttérképről van szó, ezért célszerű olyan képet választani, amely nem vonja el a figyelmet a tartalomról. Ehhez általában az kell, hogy a kép ne legyen nagyon harsány, lehetőleg legyen homogén és elegendő kontraszt maradjon közte és a tartalom között. A következő példa egy szakasz háttérképét állítja be:</p>
<pre class="brush: css">
div {
background-image: url(background.jpg);
}
</pre>
<p>A <em>background-repeat</em> segítségével adhatjuk meg, hogy a <em>background-image</em>-ként beállított háttérkép ismétlődjön-e vagy sem. A <em>repeat</em>, a <em>repeat-x</em>, a <em>repeat-y</em> és a <em>no-repeat</em> beállítások közül választhatunk. A <em>repeat</em> megadásával a képet &#8211; ha az kisebb, mint az elem, aminek a hátterének beállítottuk &#8211; mind függőlegesen, mind vízszintesen ismétli úgy, hogy az elemet teljesen lefedje. A <em>no-repeat</em> ennek pontosan az ellenkezője: nem ismétli meg a képet, akkor sem, ha így az elem valamekkora része háttérkép nélkül marad. Ilyenkor a képpel nem fedett rész a <em>background-color</em> tulajdonság által megadott színű, vagy ennek hiányában alapértelmezett színű (általában fehér). A <em>repeat-x</em> csak vízszintesen, a <em>repeat-y</em> pedig csak függőlegesen ismétli a beállított háttérképet. A következő beállítás nem ismétli a háttérképet:</p>
<pre class="brush: css">
body {
background-repeat: no-repeat;
}
</pre>
<p>Háttérképünknek nem kötelező az alapértelmezés szerinti középen lennie. A <em>background-position</em> beállításával megadhatjuk, hogy a háttérkép hova kerüljön. A beállításnál a <em>top</em>, <em>bottom</em>, <em>center</em>, <em>left</em> és <em>right</em> lehetőségeken kívül pontos értéket vagy százalékot is megadhatunk. A következő példa a háttérképet balra, és az elem tetejéhez képest 10 pixellel lejjebb igazítja:</p>
<pre class="brush: css">
div {
background-position: left 10px;
}
</pre>
<p>A végére hagytam a legérdekesebbet, a <em>background-attachment</em> tulajdonságot. Két beállítási lehetősége van: a <em>scroll</em> és a <em>fixed</em>. Ha a <em>scroll</em> van beállítva &#8211; ez az alapértelmezett -, akkor az elem görgetésével annak háttere is vele együtt mozog. A <em>fixed</em> beállítás esetén viszont a háttér helyben marad, és görgetéskor csak a tartalom mozog. A fixed beállítás ízléses alkalmazása sokszor feldobja az oldal összhatását. A következő példa rögzíti az oldal hátterét:</p>
<pre class="brush: css">
body {
background-attachment: fixed;
}
</pre>
<p>Ha szeretünk rövidíteni, használjuk a <em>background</em> tulajdonságot, amely lehetőséget ad a fentiek egyszerre való beállítására. A sorrend ilyenkor a következő kell legyen: <em>background-color</em>, <em>background-image</em>, <em>background-repeat</em>, <em>background-attachment</em>, <em>background position</em>. Például:</p>
<pre class="brush: css">
body {
background: black url(background.jpg) no-repeat fixed left 10px;
}
</pre>
<p>A fent bemutatott background-tulajdonságok minden elterjedt böngésző esetében használhatóak.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/04/css-hatterek/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CSS 3 átmenetek</title>
		<link>http://www.css-3.hu/2010/03/css-3-atmenetek/</link>
		<comments>http://www.css-3.hu/2010/03/css-3-atmenetek/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 11:38:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[CSS3 példa]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[transition]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=245</guid>
		<description><![CDATA[Az előző posztokban láthattuk, hogy a CSS pszeudo-osztályok segítségével más-más stílust adhatunk egy elemnek annak állapotától függően. De hogyan érhetjük el, hogy a stílusátmenet ne hirtelen, hanem fokozatosan történjen? A CSS 3 transition tulajdonsága lehetőséget ad arra, hogy ilyen effekteket Javascript nélkül is létre tudjunk hozni.
Mivel a tulajdonság pontos megvalósítása még változhat, ezért &#8212; ahogy [...]]]></description>
			<content:encoded><![CDATA[<p>Az előző posztokban láthattuk, hogy a CSS pszeudo-osztályok segítségével más-más stílust adhatunk egy elemnek annak állapotától függően. De hogyan érhetjük el, hogy a stílusátmenet ne hirtelen, hanem fokozatosan történjen? A CSS 3 <em>transition </em>tulajdonsága lehetőséget ad arra, hogy ilyen effekteket Javascript nélkül is létre tudjunk hozni.<span id="more-245"></span></p>
<p>Mivel a tulajdonság pontos megvalósítása még változhat, ezért &mdash; ahogy már megszokhattuk &mdash; az egyes layout-motor fejlesztők itt is egyedi neveket vezettek be. A Webkit alapú böngészők esetén <em>-webkit-transition</em>, a Gecko alapúaknál <em>-moz-transition</em>, a Presto esetében pedig <em>-o-transition</em> a tulajdonság pontos neve. Szerencsére paraméterezésük minden motor esetén megegyezik. Akik fejből tudják, hogy melyik böngésző melyik layout-motort használja, azok az előző mondatból már kikövetkeztették, hogy a Chrome, a Safari, a Firefox és az Opera a szerencsés nyertesek. Viszont hozzátartozik az igazsághoz, hogy mivel a Gecko csak az 1.9.3 verziótól támogatja, ezért a Firefox csak a még meg nem jelent 3.7-es verziótól tudja az itt leírtakat. <del datetime="2010-09-03T17:08:49+00:00">Az Opera pedig, bár elvileg támogatja, gyakorlatilag nem mindig a várakozásoknak megfelelően jeleníti meg az átmeneteket. Így végeredményben azt kell mondanom, hogy a példák maradéktalan élvezetéhez Webkit alapú böngésző (azaz Chrome vagy Safari) javasolt.</del> Ha beállítjuk CSS-ben az alapértelmezett színt, akkor Opera alatt is a várakozásoknak megfelelően működik. A többi böngészőnél ez nem fontos.</p>
<p>A hosszas bevezető után lássuk a két példánkat, amelyeken keresztül a dolog működését szemléltetjük. Az alábbi képek élesebbek, ha az egeret föléjük mozgatjuk, egyébként elhalványodnak. Ami a lényeg: ez a változás nem egyből, hanem fél másodperc alatt zajlik le. (Akinél egyből megtörténik, annak a böngészője nem támogatja ezt a tulajdonságot).</p>
<p><iframe src="/wp-content/code-samples/css3-transition2.html" width="100%" height="150" frameBorder="0" scrolling="no">Az Ön böngészője nem támogatja az <em>iframe</em> használatát.</iframe></p>
<p>A fenti példa létrehozásához a következő kódot alkalmaztam:</p>
<pre class="brush: css">
img {
	opacity: .5;
	-webkit-transition: opacity .5s ease-in;
	-moz-transition: opacity .5s ease-in;
	-o-transition: opacity .5s ease-in;
}
img:hover {
	opacity: 1;
}
</pre>
<p>Most lássunk egy példát egy olyan űrlapra, ahol az éppen kiválasztott beviteli mező háttere megváltozik:</p>
<p><iframe src="/wp-content/code-samples/css3-transition.html" width="100%" height="250" frameBorder="0" scrolling="no">Az Ön böngészője nem támogatja az <em>iframe</em> használatát.</iframe></p>
<p>A varázslat a következő beállításoknak köszönhető:</p>
<pre class="brush: css">
input, textarea {
    background-color: white;
	-webkit-transition: background-color .5s linear;
	-moz-transition: background-color .5s linear;
	-o-transition: background-color .5s linear;
}
input:focus, textarea:focus {
	background: #eeeeee;
}
</pre>
<p>Most következzen a kód magyarázata. A fenti példákban a <em>transition </em>ún. shorthand formáját alkalmaztam, azaz egyben adtam meg több beállítást:</p>
<pre class="brush: css">
transition:  [ &lt;transition-property&gt; || &lt;transition-duration&gt; || &lt;transition-timing-function&gt; || &lt;transition-delay&gt; ]
</pre>
<p>Lássuk az egyes tulajdonságokat külön-külön:</p>
<p><em>transition-property</em></p>
<p>Itt kell megadnunk azt a tulajdonságot, amelyre az átmenetet alkalmazni akarjuk. Ez lehet egy szín (<em>color</em>), lehet az áttetszőség (<em>opacity</em>), de lehet az elem szinte bármely tulajdonsága, mint például a  <em>left</em>, a <em>border-width</em>, stb. Nyilvánvalóan nem értelmezhető viszont az olyan tulajdonságokra, amelyekből nem lehet átmeneteket képezni, mint például a <em>position</em>, a <em>display</em>, stb.</p>
<p><em>transition-duration</em></p>
<p>Itt állíthatjuk be, hogy mennyi idő alatt menjen végbe az átmenet. Például 1.5s beállítása esetén &mdash; nem meglepő módon &mdash; másfél másodperc alatt fog az átmenet lezajlani.</p>
<p><em>transition-timing-function</em></p>
<p>Itt egy függvényt adhatunk meg az átmenet sebességének meghatározására. Ha a <em>linear </em>beállítást használjuk, akkor az átmenet egyenletes sebességgel megy végbe. Az <em>ease-in</em> hatására az átmenet lassan kezdődik és később gyorsul fel. Az <em>ease-out</em> ennek az ellenkezője: gyorsan indul, és a végén lassabb. Vagy megadhatunk tetszőleges <a href="http://en.wikipedia.org/wiki/B%C3%A9zier_curve" target="_blank">Bézier-görbét</a> a sebesség meghatározásához: <em>cubic-bezier(x1, y1, x2, y2)</em>.</p>
<p><em>transition-delay</em></p>
<p>Ha azt szeretnénk, hogy az átmenet ne egyből, hanem egy bizonyos idő elteltével kezdődjön, akkor ennek a tulajdonságnak is érteket kell adnunk. A fenti példákban ezt nem használtam.</p>
<p>A <em>transition </em>tulajdonságok részletes leírását az egyes layout-motorok szemszögéből ezeken a linkeken találjátok: <a href="http://webkit.org/blog/138/css-animation/" target="_blank">Webkit</a>, <a href="https://developer.mozilla.org/en/CSS/-moz-transition" target="_blank">Gecko</a>, <a href="http://www.opera.com/docs/specs/presto23/css/transitions/" target="_blank">Presto</a>.</p>
<p>A CSS 3 tehát ismét kezünkbe adott egy lehetőséget, hogy egy, a modern web designban népszerű, effektet <a href="http://www.jquery.com/" target="_blank">jQuery</a> vagy egyéb Javascript megoldás nélkül alkalmazhassunk. Ráadásul mivel az ehhez hasonló effektek ritkán nélkülözhetetlen elemei egy weboldalnak, még azért sem kell aggódnunk, hogy mi van akkor ha egy nem kompatibilis böngészőben az átmenet nem fokozatosan, hanem egyből végbemegy. A web design szakma egyre inkább egyetért abban, hogy itt az ideje a weboldal építésnél azt a szemléletet magunkévá tenni, hogy a funkcionalitásnak működnie kell minden népszerű böngészőben, viszont ha a egy-két spéci effekt csak a legkorszerűbb böngészőkben látható az még nem a világ vége.</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 440px; width: 1px; height: 1px; overflow: hidden;"><span class="Apple-style-span" style="border-collapse: separate; color: #000000; font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="Apple-style-span" style="color: #25221d; font-family: Verdana,Tahoma,sans-serif; font-size: 14px; line-height: 24px;"></p>
<pre class="eval" style="margin: 0px 0px 1.7em; padding: 10px; border: 1px solid #dfecf1; overflow: auto; font: 12px 'Courier New','Andale Mono',monospace; color: #25221d;">-moz-transition:  [ &lt;transition-property&gt; || &lt;transition-duration&gt; || &lt;transition-timing-function&gt; || &lt;transition-delay&gt; ]</pre>
<p></span></span></div>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/03/css-3-atmenetek/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS 3 pszeudo-osztályok</title>
		<link>http://www.css-3.hu/2010/03/css-3-pszeudo-osztalyok/</link>
		<comments>http://www.css-3.hu/2010/03/css-3-pszeudo-osztalyok/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 21:13:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[CSS3 példa]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[pseudo-class]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=233</guid>
		<description><![CDATA[Miután megismerkedtünk a CSS 1 és 2-ben bevezetett pszeudo-osztályokkal, ideje megnézni, hogy mi újat hoz ezen a területen a CSS 3. Aki azt várja, hogy rengeteg új lehetőséget kapunk ezen a területen, nem fog csalódni. Az új pszeudo-osztályoknak hála rugalmasan rendelhetünk különböző stílusokat tartalmainkhoz, a nélkül, hogy osztályok sorozatával kellene teletűzdelnünk html fájlunkat.
Egy kép többet [...]]]></description>
			<content:encoded><![CDATA[<p>Miután <a href="/2010/03/css-pszeudo-osztalyok/">megismerkedtünk</a> a CSS 1 és 2-ben bevezetett pszeudo-osztályokkal, ideje megnézni, hogy mi újat hoz ezen a területen a CSS 3. Aki azt várja, hogy rengeteg új lehetőséget kapunk ezen a területen, nem fog csalódni.<span id="more-233"></span> Az új pszeudo-osztályoknak hála rugalmasan rendelhetünk különböző stílusokat tartalmainkhoz, a nélkül, hogy osztályok sorozatával kellene teletűzdelnünk html fájlunkat.</p>
<p>Egy kép többet ér ezer szónál, ezért kezdjük az ismerkedést egy <a href="/wp-content/code-samples/css3-pseudo-class.html" target="_blank">példával</a>. Igyekeztem egy olyan példafájlt szerkeszteni, ahol együtt tudom bemutatni mindazt, amiről ebben a posztban írni szeretnék. Elég nehéz volt minden lehetőségre olyan példát kitalálni, ami akár hasznos is lehet a való életben, de remélem, hogy ez a pszeudo-osztályok többségében sikerült. A példafájl első látásra valószínűleg kínai lesz, de az alábbi magyarázatokkal talán hasznosnak bizonyul.</p>
<p><code>:target</code> Bizonyára ismeritek az egyes oldalakon belül elhelyezhető ún. &#8220;horgonyokat&#8221;, amelyek lehetővé teszik, hogy egy link ne egy adott oldalra, hanem az oldalon belül valahova mutasson. Ha egy ilyen linkre kattintunk, akkor az URL végén <code>#valami</code> látható, ahol a <code>valami </code>a horgony neve. Pl. a <code>http://www.css-3.hu/wp-content/code-samples/css-pseudo-class.html#section1</code> jelenik meg a címsorban ha a példa fájl tartalomjegyzékének első hivatkozására kattintunk, ahol a link célpontjaként az első bekezdésre mutató horgony van beállítva. Az ilyen &#8220;célpontokhoz&#8221; lehet stílusokat rendelni a <code>:target</code> pszeudo-osztállyal. Ezt a lehetőséget a példában arra használtam fel, hogy a horgony célpontját képező <em>h3</em> fejlécnek saját stílust adjak. Tehát ha a felhasználó a tartalomjegyzékről egy adott horgonyra ugrik, akkor a horgony mellett megjelenik egy piros csík, jelezve, hogy &#8220;ide ugrottál&#8221;. A szükséges kód a következő volt:</p>
<pre class="brush: css">h3:target {
border-left: red thick solid;
padding-left: 20px;
}</pre>
<p><code>:nth-child</code> A CSS pszeudo-osztályokkal foglalkozó korábbi posztban foglalkoztam a <code>:first-child</code> pszeudo-osztállyal, ami lehetővé tette, hogy egy elemre akkor vonatkozzon a megadott stílus, ha ő a DOM struktúrában a szülő elemének az első gyermeke. Ezt a lehetőséget bővíti ki az <code>:nth-child</code> pszeudo-osztály, úgy hogy ne csak az első, hanem tetszőleges sorszámú elem vagy elemek legyenek kiválaszthatóak. A 3. elem kiválasztása például az <code>:nth-child(3)</code> megadásával történhet. De itt még nem ér véget az örömünk, ugyanis ennél lényegesen többet tud ez a pszeudo-osztály! A zárójelek között ugyanis nem csak egy konstanst adhatunk meg, hanem egy <em>an+b</em> alakú kifejezést, tehát előírhatjuk, hogy a stílus minden valahányadik elemre vonatkozzon. A példában ezt a táblázat páros sorainak alászínezésére használtam föl, a következő kóddal:</p>
<pre class="brush: css">tbody tr:nth-child(2n+2) {
background-color: #C4EAEA;
}</pre>
<p>Minden 2. sort akartam alászínezni, és mivel az n 0-ról indul (erre nincs befolyásunk), ezért kellett a +2.</p>
<p><code>&#58;only-of-type</code> Ez az érdekes pszeudo-osztály azokat az elemeket választja ki, akik egyedüliként léteznek adott típusúként a szülő elemükön belül. A példába tettem egy olyan sort, amiben csak egy kép van és egy olyat, amiben három. Az <code>&#58;only-of-type</code> segítségével beállítottam, hogy abban az esetben, ha csak egy kép van az adott sorban, akkor az kapjon egy bordó keretet. Ehhez a következő kódot használtam.</p>
<pre class="brush: css">img:only-of-type {
border: #990000 solid thick;
}</pre>
<p>Persze lehet vitatkozni azon, hogy ennek mennyi haszna van, de el tudok képzelni olyan design-t, ahol más stílust akarunk adni egy elemnek ha egyedül áll, és mást, ha több egyforma is van belőle.</p>
<p><code>:not()</code> Ez is egy érdekes pszeudo-osztály. Segítségével a stílus hatálya alól kizárhatunk egy adott osztálynak megfelelő elemet. A példában ezt arra használtam fel, hogy lent, a <strong>Hozzászólások</strong> részben minden olyan hozzászólás-fejlécet szürkével jelenítsek meg, amelyet nem az <em>admin</em> írt, azaz nem rendelkezik az <em>admin_comment</em> osztállyal. Ez a kizárás a következő kóddal valósult meg:</p>
<pre class="brush: css">.comment_header:not(.admin_comment) {
color: gray;
}</pre>
<p>Kompatibilitás tekintetében egész jól állunk a pszeudo-osztályokkal. Az Internet Explorer kivételével minden fontos böngésző támogatja őket. De még őt is rá lehet a legtöbb CSS 3 pszeudo-osztály támogatására egy javascript framework, például a <a href="http://www.jquery.com/">jquery</a> használatával. Az Operának a <code>:target</code> pszeudo-osztállyal gyűlik meg a baja egy kicsit, mert nem frissíti megfelelően a stílusokat a <em>Back</em> és a <em>Forward</em> gombok használatakor. Ezeket leszámítva minden működik, de itt is érvényes az, ami a CSS 3 megoldásokra általában: mivel a szabvány még nem végéleges, ne használjuk olyan dolgokra amelyek működése nélkülözhetetlen a weboldalunkon.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/03/css-3-pszeudo-osztalyok/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS pszeudo-osztályok</title>
		<link>http://www.css-3.hu/2010/03/css-pszeudo-osztalyok/</link>
		<comments>http://www.css-3.hu/2010/03/css-pszeudo-osztalyok/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 22:57:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[CSS 2.1]]></category>
		<category><![CDATA[CSS alapok]]></category>
		<category><![CDATA[pseudo-class]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=225</guid>
		<description><![CDATA[A következő cikkben a CSS 3-ban bevezetett új pszeudo-osztályokkal foglalkozunk majd, de hogy mindaz amit majd ott írok ne lógjon a levegőben, térjünk vissza egy kicsit a CSS 2-höz, és ismerjük meg az abban bevezetett pszeudo-osztályokat.
A CSS pszeudo-osztályai olyan nyelvi megoldások, amelyek segítségével külön stílusokat rendelhetünk az elemek egyes állapotaihoz. Legismertebb megnyilvánulása az, amikor egyes [...]]]></description>
			<content:encoded><![CDATA[<p>A következő cikkben a CSS 3-ban bevezetett új pszeudo-osztályokkal foglalkozunk majd, de hogy mindaz amit majd ott írok ne lógjon a levegőben, térjünk vissza egy kicsit a CSS 2-höz, és ismerjük meg az abban bevezetett pszeudo-osztályokat.<span id="more-225"></span></p>
<p>A CSS pszeudo-osztályai olyan nyelvi megoldások, amelyek segítségével külön stílusokat rendelhetünk az elemek egyes állapotaihoz. Legismertebb megnyilvánulása az, amikor egyes weboldalakon egy link fölé visszük az egérkurzort, és ennek hatására annak megváltozik a színe, vagy — ha addig nem volt aláhúzva — megjelenik az aláhúzás esetleg éppen fordítva. Persze ez csak a jéghegy csúcsa, íme az összes <a href="/wp-content/code-samples/css-pseudo-class.html" target="_blank">példa</a> egy csokorba gyűjtve, alább pedig az egyes pszeudo-osztályok részletesen.</p>
<p><code>:link</code> A linknek az az állapota, amelyet akkor vesz fel, amikor nincs fölötte a kurzor, és a link még nem lett meglátogatva. Az alábbi beállítással elérhetjük, hogy a linkünk ilyenkor sötétkék legyen.</p>
<pre class="brush: css">
a:link { color: #0000CC; }
</pre>
<p><code>:visited</code> A linknek az az állapota, amelyet akkor vesz fel, amikor a linket már meglátogattuk. Az alábbi beállítással elérhetjük, hogy a linkünk ilyenkor lila legyen.</p>
<pre class="brush: css">
a:visited { color: #990066; }
</pre>
<p><code>:hover</code> Az elem akkor kerül ebbe az állapotba, ha az egérkurzor fölötte áll. Nem csak linkre használható, szinte tetszőleges elemre vonatkozhat. A következő beállítással világoskékre változtathatjuk az egérkurzor alatti bekezdés színét.</p>
<pre class="brush: css">
p:hover { color: #0099FF; }
</pre>
<p><code>:active</code> Az elemnek az az állapota, amikor rákattintottunk, de még nem engedtük fel az egeret. Az alábbi beállítással elérhetjük, hogy bekezdésünk ilyenkor piros legyen.</p>
<pre class="brush: css">
p:active{ color: #FF0000; }
</pre>
<p><code>:focus</code> Az elemnek a fókuszált állapota, amikor az adott elem kapja a billentyűzetről érkező információt. Tipikus példa az input szövegmező, amely a következő beállítással világosszürke alapszínt kap fókuszált állapotban. Ez például egy hosszabb űrlapon segít követni, hogy épp melyik mezőnél tartunk.</p>
<pre class="brush: css">
input:focus { background-color: #CCCCCC; }
</pre>
<p><code>:first-child</code> Ezzel olyan elemeket választhatunk ki, amelyek a szülő elemük első gyermekei. Ha például van egy <code>&lt;div&gt;</code>-ünk, és abban <code>&lt;p&gt;</code> bekezdéseink, akkor a <code>p:first-child</code> alatt megadott beállítások csak az első bekezdésre vonatkoznak majd. Az alábbi beállítás például narancssárgára színezi az első bekezdést.</p>
<pre class="brush: css">
p:first-child { color: #FF6600; }
</pre>
<p><code>:lang(xx)</code> Ezzel a pszeudo-osztállyal nyelv-specifikus beállításokat adhatunk meg. (Az egyes nyelvek kódjai <a href="http://www.iana.org/assignments/language-subtag-registry" target="_blank">itt</a> érhetők el.) A nyelvet nekünk kell megadnunk a html fájlban (pl. a <code>&lt;p lang="la"&gt;</code> latin nyelvű bekezdést jelöl), a CSS-ben pedig azt adhatjuk meg, hogy a html-ben adott nyelvi szövegként megjelölt rész milyen stílusbeállításokat kapjon. A következő beállítás például kékre színezi a latin nyelvű bekezdéseket.</p>
<pre class="brush: css">
p:lang("la") { color: #0000FF; }
</pre>
<p>Végezetül néhány szó a kompatibilitásról. Az Internet Explorer-en kívül más népszerű böngészővel nem lesz gondunk, így a következők csak az IE támogatásról szólnak:</p>
<ul>
<li><code>:link, :visited</code> &mdash; IE6</li>
<li><code>:hover</code> &mdash; IE6 csak linkekre, IE7-től egyéb elemekre is</li>
<li><code>:active</code> &mdash; IE6, IE7 csak linkekre, IE8 egyéb elemekre is</li>
<li><code>:first-child</code> &mdash; IE7</li>
<li><code>:focus, :lang</code> &mdash; IE8</li>
</ul>
<p>Részletesebb információk a támogatásról <a href="http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(Cascading_Style_Sheets)">itt</a> találhatók.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/03/css-pszeudo-osztalyok/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS 3 gradiens a Firefox 3.6-ban</title>
		<link>http://www.css-3.hu/2010/02/css-3-gradiens-a-firefox-3-6-ban/</link>
		<comments>http://www.css-3.hu/2010/02/css-3-gradiens-a-firefox-3-6-ban/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 20:24:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[CSS3 példa]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[gradiens]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=196</guid>
		<description><![CDATA[Az eddig bemutatott CSS 3 technikák mindegyike működött Webkit motor alatt (azaz Safarin és Chrome-on), de a Firefox 3.5 nem állt ilyen jól. Reményre adott okot, hogy a Firefox 3.6 Alpha1 Codename Namoroka viszont gyakorlatilag mindent tudott, amit a Webkit-es böngészők. Ehhez képest igencsak meglepődtem, amikor kijött a 3.6-os Firefox, és ami működött az Alphában, [...]]]></description>
			<content:encoded><![CDATA[<p>Az eddig bemutatott CSS 3 technikák mindegyike működött Webkit motor alatt (azaz Safarin és Chrome-on), de a Firefox 3.5 nem állt ilyen jól. Reményre adott okot, hogy a Firefox 3.6 Alpha1 Codename Namoroka viszont gyakorlatilag mindent tudott, amit a Webkit-es böngészők. <span id="more-196"></span>Ehhez képest igencsak meglepődtem, amikor kijött a 3.6-os Firefox, és ami működött az Alphában, az elsőre nem működött a végleges verzióban.</p>
<p>De aztán helyreállt a világ rendje, kiderült, hogy működik az, csak már nem azt a szintaxist kell használni, mint az alpha verzióban. Az új szintaxis a következő:</p>
<pre class="brush: css">
-moz-linear-gradient( [&lt;point&gt; || &lt;angle&gt;,]? &lt;stop&gt;, &lt;stop&gt; [, &lt;stop&gt;]* );
-moz-radial-gradient( [&lt;point&gt; || &lt;angle&gt;,]? [&lt;shape&gt; || &lt;size&gt;,]? &lt;stop&gt;, &lt;stop&gt;[, &lt;stop&gt;]* );
</pre>
<p>A lineáris gradiens változóinak magyarázata a következő. A <em>point</em> jelenti a gradiens kezdőpontját. Ugyanazok az értékek elfogadhatóak, mint a <em>background-position</em> esetében. Ha csak egy értéket adunk meg (pl. <em>left</em>), akkor a másik tengely menti értéket <em>center</em>-nek tekinti. Az <em>angle </em>jelenti a gradiens irányszögét. Megadható fokban, gradban vagy radiánban. A <em>stop </em>pedig egy színt jelölt, amelyhez opcionálisan egy helyet is megadhatunk a gradiensen belül, ahol a gradiensnek azt a színt fel kell vennie. Lássunk egy példát is (balra a gradiens, jobbra ugyanaz képként, arra az esetre, ha valaki nem Firefox 3.6-tal nézi):</p>
<div style="margin: auto; width: 300px;">
<div style="float: left; width: 100px; height: 100px; border: solid thin black; background: -moz-linear-gradient(top, #000, #FFF);"></div>
<div style="float: left; margin-left: 48px; width: 102px; height: 102px;"><img src="http://www.css-3.hu/wp-content/uploads/2010/02/moz-linear-gradient.jpg" width="102" height="102" /></div>
</div>
<div style="clear: left;"></div>
<pre class="brush: css">
background: -moz-linear-gradient(top, #000, #FFF);
</pre>
<p>A körgradiens esetében további változók szorulnak magyarázatra. A <em>point </em>alapértelmezett értéke az objektum középpontja. A <em>shape </em>változó a <em>circle </em>vagy az <em>ellipse </em>értéket veheti fel, ebből az utóbbi az alapértelmezett. A <em>circle </em>választásával kapunk tehát valódi körgradienst, egyébként elipszis alakú lesz. A <em>size </em>változó segítségével beállíthatjuk azt, hogy a gradiens hol érjen véget (meddig terjedjen). A lehetséges értékek a következők:</p>
<dl>
<dt>closest-side</dt>
<dd>A gradiens a doboz legközelebb eső oldaláig terjed. A <em>closest-side</em> szinonímája a <em>contain</em>.</dd>
<dt>closest-corner</dt>
<dd>A gradiens a doboz legközelebb eső sarkáig terjed.</dd>
<dt>farthest-side</dt>
<dd>A gradiens a doboz legtávolabb eső oldaláig terjed.</dd>
<dt>farthest-corner</dt>
<dd>A gradiens a doboz legtávolabb eső sarkáig terjed. A <em>closest-side</em> szinonímája a <em>cover</em>.</dd>
</dl>
<p>Íme erre is egy példa (balra a gradiens, jobbra a kép, mint fent):</p>
<div style="margin: auto; width: 300px;">
<div style="float: left; margin: auto; width: 100px; height: 100px; border: solid thin black; background: -moz-radial-gradient(cover, white, black);"></div>
<div style="float: left; margin-left: 48px; width: 102px; height: 102px;"><img src="http://www.css-3.hu/wp-content/uploads/2010/02/moz-radial-gradient.jpg" width="102" height="102" /></div>
<div style="clear: left;"></div>
</div>
<pre class="brush: css">
background: -moz-radial-gradient(cover, white, black);
</pre>
<p>A Firefox a 3.6 verzióval tehát jelentősen ledolgozta a hátrányát a Webkit-es böngészőkkel szemben. Egyetlen kellemetlenség, hogy aki még az alpha verzióhoz optimalizálta a CSS-t, annak újra kell írnia (pl. nekem). Részletesebb információkat a témáról a Mozilla Developer oldalakon találtok (<a href="https://developer.mozilla.org/en/Using_gradients" target="_blank">Using gradients</a>, <a href="https://developer.mozilla.org/en/CSS/-moz-linear-gradient" target="_blank">-moz-linear-gradient</a>, <a href="https://developer.mozilla.org/en/CSS/-moz-radial-gradient" target="_blank">-moz-radial-gradient</a>), angol nyelven.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/02/css-3-gradiens-a-firefox-3-6-ban/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Text Selection Color</title>
		<link>http://www.css-3.hu/2010/02/text-selection-color/</link>
		<comments>http://www.css-3.hu/2010/02/text-selection-color/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 18:34:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[CSS3 példa]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[text-selection]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=184</guid>
		<description><![CDATA[Most egy érdekességet szeretnék röviden bemutatni, ami egy korábbi szakaszban része volt a CSS 3 specifikációnak. Azóta kivették belőle, de addigra már több böngésző is támogatta, így a Gecko (Firefox), Presto (Opera) és a Webkit (Safari, Chrome) alapú böngészőkben fenn maradt. A kérdéses tulajdonság a selection, ami lehetővé teszi a kijelölés és a kijelölt szöveg [...]]]></description>
			<content:encoded><![CDATA[<p>Most egy érdekességet szeretnék röviden bemutatni, ami egy korábbi szakaszban része volt a CSS 3 specifikációnak. Azóta kivették belőle, de addigra már több böngésző is támogatta, így a Gecko (Firefox), Presto (Opera) és a Webkit (Safari, Chrome) alapú böngészőkben fenn maradt. <span id="more-184"></span>A kérdéses tulajdonság a <em>selection</em>, ami lehetővé teszi a kijelölés és a kijelölt szöveg színének beállítását. Alkalmazása a következő módon történik:</p>
<pre class="brush: css">::selection {
background: #FFFF00;
color: #00FF00;
}

::-moz-selection {
background: #FFFF00;
color: #00FF00;
}</pre>
<p>Az egyszerűen <em>selection </em>néven futó tulajdonságot a Webkit és a Presto érti, a Gecko számára pedig a <em>-moz-selection</em> tuladonságra van szükségünk. Az eredményt mindenki kipróbálhatja az alábbi szövegen.</p>
<p><iframe src="/wp-content/code-samples/css-text-selection.html" width="100%" height="120" frameBorder="0" scrolling="no"></p>
<p>Az Ön böngészője nem támogatja az <em>iframe</em> használatát.</p>
<p></iframe></p>
<p>A dolog gyakorlati haszna elenyésző, de ha a designt odáig akarjuk finomítani, hogy a kijelölés színét is szeretnénk az oldal színvilágához igazítani, akkor nem teljesen haszontalan. Talán még az is lehet, hogy visszakerül a CSS 3 specifikációi közé.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/02/text-selection-color/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CSS tipográfia 2</title>
		<link>http://www.css-3.hu/2010/01/css-tipografia-2/</link>
		<comments>http://www.css-3.hu/2010/01/css-tipografia-2/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 19:41:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[CSS 2.1]]></category>
		<category><![CDATA[CSS alapok]]></category>
		<category><![CDATA[font]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=164</guid>
		<description><![CDATA[Ahogyan azt az első részben megígértem, következzék a CSS további tipográfiai eszközeinek bemutatása.
A font-variant tulajdonságot arra használjuk, hogy a &#8220;normál&#8221; és a kiskapitális betűszedési mód között váltsunk. Három különböző érték egyikét veheti fel. Az első lehetséges érték az inherit, ami az alapértelmezett beállítás. Hatására az elem a szülő stílusát veszi át. Ha például van egy [...]]]></description>
			<content:encoded><![CDATA[<p>Ahogyan azt az <a href="/2009/11/css-tipografia-1/">első részben</a> megígértem, következzék a CSS további tipográfiai eszközeinek bemutatása.<span id="more-164"></span></p>
<p>A <em>font-variant</em> tulajdonságot arra használjuk, hogy a &#8220;normál&#8221; és a kiskapitális betűszedési mód között váltsunk. Három különböző érték egyikét veheti fel. Az első lehetséges érték az <em>inherit</em>, ami az alapértelmezett beállítás. Hatására az elem a szülő stílusát veszi át. Ha például van egy bekezdésünk (&lt;p&gt;) ami egy szakasz (&lt;div&gt;) része, és a szakaszra vonatkozóan beállítjuk a <em>font-variant </em>tulajdonságot, akkor ez a tulajdonság átöröklődik a bekezdésre, amennyiben a bekezdés <em>font-variant</em> tulajdonságát <em>inherit </em>állapotban hagytuk, és nem adtunk neki explicit más értéket. A másik két lehetséges érték a <em>normal </em>és a <em>small-caps</em>. A <em>normal </em>nem igényel sok magyarázatot, hatása annyi, hogy a vonatkozó szöveg nem kiskapitálisokkal lesz szedve. A <em>small-caps</em> hatására viszont azzal lesz. Személyes véleményem, hogy <span style="font-variant: small-caps;">rövid szövegrészek kiemelésére remekül használható </span>, de ne használjuk hosszabb szövegekhez, mert az így szedett szöveg olvasása fárasztóbb. Példa:</p>
<pre class="brush: css">
p {
    font-variant: small-caps;
}
</pre>
<p>A <em>line-height</em> tulajdonság a sormagasság beállítására való. Ez egy olyan tulajdonság, amelyhez szinte mindig hozzá kell nyúlni, ha weboldalt tervezünk. Az alapbeállítás ugyanis normál (egyszeres) sortávolságot eredményez, amit ha változatlanul hagyunk, nagyon zsúfolt hatást kelt. A vonatkozó szakirodalom szerint az ideális sortávolság &#8211; többsoros szövegek esetén &#8211; a 1.5 sor. Ezt a legegyszerűbben a következő módon állíthatjuk be:</p>
<pre class="brush: css">
p {
    line-height: 1.5em;
}</pre>
<p>Egyébként ennek a tulajdonságnak van még egy nem magától értetődő, de nagyon hasznos felhasználási módja, mégpedig a függőlegesen középre való pozicionálás. A dolog csak egysoros szövegeknél működik, de tekintettel arra, hogy milyen nehéz a CSS segítségével függőlegesen középre pozicionálni, sokszor ez is aranyat ér. A példa erre a következő:</p>
<pre class="brush: css">
div#main {
    height: 100px;
    background-color: #999;
}

#main p {
    line-height: 100px;
}</pre>
<p>Ezzel a trükkel a legfeljebb 1 sor hosszú szövegünket pont a #main nevű szakaszunk középvonalára tudjuk pozicionálni, mert az az egy sor teljesen kitölti a rendelkezésre álló helyet. Ettől a betű nem lesz nagyobb, viszont a szakasz tetejétől és aljától egyenlő távolságot tart. A <em>line-height: 100%;</em> nem működne, ugyanis a 100% ekkor a sor alapértelmezett magasságát jelentené, nem pedig a rendelkezésre álló területet.</p>
<p>A <em>text-transform</em> tulajdonság segítségével felülbírálhatjuk a szöveg eredeti kapitalizációját. A <em>lowercase </em>beállítás segítségével minden szöveg, amire a tulajdonság vonatkozik kisbetűs lesz, függetlenül attól, hogy egyébként milyen volna. Ugyanígy, az <em>uppercase </em>hatására nagybetűs szöveget kapunk. Ha a capitalize beállítást választjuk, akkor pedig minden szó első betűje nagy lesz, a többi pedig változatlan marad. Van még két további beállítás is: a <em>none </em>hatására nem változtat az eredeti szövegen, az <em>inherit </em>pedig átveszi a szülő elem beállítását. Példa:</p>
<pre class="brush: css">
p {
    text-transform: uppercase;
}</pre>
<p>A<em> text-decoration</em> tulajdonság az eszköz néhány további stilisztikai hatás megvalósítására. Ezek közül szinte csak a <em>line-through</em> tulajdonságnak van gyakorlati haszna, hatására <span style="text-decoration: line-through;">az adott szöveget áthúzásra kerül</span>. Példa:</p>
<pre class="brush: css">
p {
    text-decoration: line-through;
}</pre>
<p>A <em>text-decoration</em> többi beállítására ritkán lesz szükségünk, de azért felsorolom:</p>
<ul>
<li><em>blink</em>: Emlékeztek még a &#8216;90-es évek weboldalainak villogó szövegeire? Ezzel a beállítással lehet bekapcsolni a villogást. Merénylet a közízlés ellen, ezért még példát sem mutatok rá.</li>
<li><em>inherit</em>: Mint fent.</li>
<li><em>none</em>: Mint fent.</li>
<li><em>overline</em>: felülvonás</li>
<li><em>underline</em>: alulvonás. Ennek a használata nem javasolt. Az alulvonás mint kiemelés ugyanis az írógépek korszakából való, a weben ennek a megfelelője a <em>dőlt betűkkel való szedés</em>. Az alulvonás ugyanis a linkek számára van fenntartva, és megzavarja az oldal látogatóját, ha az aláhúzott szó nem hiperhivatkozást jelöl.</li>
</ul>
<p>Tipográfiai körutunk utolsó állomása a <em>color </em>tulajdonság, amely számára hexadecimális kódban kell megadnunk a választott színt (bár néhány alapvető színt kiírva is megért). Bármilyen színt beállíthatunk, a web-biztos (web-safe) színek világa már rég a múlté. Gyakoroljunk azért önmérsékletet: ne állítsunk be hosszabb szövegrészek számára olyan színt, amit fárasztó olvasni, és ügyeljünk a háttér és az előtér közti megfelelő kontrasztra. Alapdolognak tűnik, de sajnos még mindig nagyon sok olyan weboldal van, ahol fekete alapon szürkével olvastatnak velünk hosszabb szövegeket, a végére pedig kifolyik a szemünk. A színekkel kapcsolatban még annyit, hogy sok webes szolgáltatás segít a megfelelő szín kiválasztásában. Van olyan, ahol kiválaszthatunk 1-2 színt, és megmondja, hogy mit érdemes mellé választani, hogy harmonizáljon (ilyen például a <a href="http://colorschemedesigner.com/" target="_blank">ColorSchemeDesigner</a>); van ahol komplett paletták közül választhatunk (pl. a <a href="http://kuler.adobe.com/" target="_blank">Kuler</a>-en); és van ahová feltölthetünk egy képet (ami mondjuk a weboldalunk fő képe), és az alapján ad tanácsot, hogy milyen színeket használjunk, ami a képpel harmonizál. Utóbbira példa a <a href="http://colorsuckr.com/" target="_blank">ColorSuckr</a>. Ha nem vagyunk biztosak színválasztásunkban, ne féljünk használni ezeket a szolgáltatásokat. Sokkal jobb megoldás, mint elindulni egy ízléstelen vagy szemfárasztó weboldallal, és csodálkozni, hogy nem özönlenek a látogatók. Végül a példa a <em>color </em>tulajdonsághoz:</p>
<pre class="brush: css">
p {
    color: #555555;
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2010/01/css-tipografia-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS tipográfia 1</title>
		<link>http://www.css-3.hu/2009/11/css-tipografia-1/</link>
		<comments>http://www.css-3.hu/2009/11/css-tipografia-1/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 21:09:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[CSS 2.1]]></category>
		<category><![CDATA[CSS alapok]]></category>
		<category><![CDATA[font]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=157</guid>
		<description><![CDATA[A CSS alapjairól szóló cikksorozat jelenlegi és következő részében arról lesz szó, hogy hogyan szabhatjuk testre szöveges tartalmainkat CSS segítségével. Vágjunk is mindjárt a közepébe.
A legfontosabb tulajdonság ebben a kategóriában a font-family. Segítségével megadhatunk egy sor betűkészletet, amelyek közül az első olyan lesz felhasználva, amelyik a felhasználó gépén rendelkezésre áll. Példa:

p {
    [...]]]></description>
			<content:encoded><![CDATA[<p>A CSS alapjairól szóló cikksorozat jelenlegi és következő részében arról lesz szó, hogy hogyan szabhatjuk testre szöveges tartalmainkat CSS segítségével. Vágjunk is mindjárt a közepébe.<span id="more-157"></span></p>
<p>A legfontosabb tulajdonság ebben a kategóriában a <em>font-family</em>. Segítségével megadhatunk egy sor betűkészletet, amelyek közül az első olyan lesz felhasználva, amelyik a felhasználó gépén rendelkezésre áll. Példa:</p>
<pre class="brush: css">
p {
    font-family: Arial, Helvetica, sans-serif;
}</pre>
<p>Ezzel a beállítással azt érjük el, hogy a böngésző előbb megpróbálja Arial betűtípussal szedni a szöveget, majd ha nincs a gépen Arial, akkor megpróbálja a Helvetica-t, és ha az sincs, akkor a rendszer alapértelmezett <em>sans-serif</em>, azaz talapzat nélküli betűtípusát fogja használni. A helyes gyakorlat egyébként az, ha a speciálistól haladunk az általános felé a betűtípus meghatározásakor. Elsőnek nyugodtan választhatjuk azt a típust, amivel igazán úgy néz ki a szövegünk, ahogy szeretnénk. Másodikként válasszunk egy elterjedtebbet, ami stílusában hasonló. Harmadikként pedig adjunk meg egy kategóriát (<em>serif</em>, <em>sans-serif</em>, vagy <em>monospace</em>), arra az esetre, ha még a gyakoribb típus sem elérhető valamiért.</p>
<p>A <em>font-size</em> tulajdonság a betűméret beállítására való. Rengeteg különböző mértékegységben megadhatjuk, de igazából pixelben, em-ben vagy esetleg pt-ben érdemes. Példa:</p>
<pre class="brush: css">
p {
    font-size: 12px;
}</pre>
<p>A <em>font-weight</em> tulajdonság segítségével állíthatjuk félkövér stílusúra a szöveget. Személy szerint jobban szeretem erre a <em>font-weight</em> tulajdonság helyett a &lt;strong&gt; HTML tag-et használni. Hogy miért? A probléma elvi síkú. Amikor egy szövegből valamit ki akarunk emelni, az általában szemantikai és nem stilisztikai kérdés. A szemantika reprezentálása a HTML dolga, a CSS-t a prezentációra használjuk. Ráadásul keresőoptimalizálás szempontjából is jobb a &lt;strong&gt; ugyanis a keresőmotorok nagyobb relatív súllyal kezelik az így jelölt tartalmat. Végül, de nem utolsó sorban, a &lt;strong&gt; tag-nek is adhatunk CSS stílust, ha tehát úgy gondoljuk, hogy a vastagítás helyett ezentúl más eszközt használunk a kiemeléshez (pl. alászínezés), akkor egyetlen CSS sorral elegánsan meg is oldhatjuk a váltást az egész websiteon. Azért természetesen olykor szükséges a <em>font-weight</em> is, úgyhogy beszéljünk róla egy keveset. Az általa felvehető lehetséges értékek <em>100</em>-tól <em>900</em>-ig terjednek, valamint a <em>bold</em>, <em>bolder</em>, <em>normal </em>és a <em>lighter </em>megengedett. Ebből a hétköznapokban egyedül a <em>normal </em>és a <em>bold</em> fontos, ugyanis a legtöbb böngésző nem valósítja meg a többit. Illetve megvalósítja, csak megfelelteti őket a <em>normal</em>-nak vagy a <em>bold</em>-nak, így használatukkal nem érünk el valódi különbséget. Példa:</p>
<pre class="brush: css">
p {
    font-weight: bold;
}</pre>
<p>A következő részben megismerkedünk a <em>font-variant</em>, a <em>line-height</em>, a <em>text-transform</em>, a <em>text-decoration</em> és a <em>color </em>attribútumokkal.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2009/11/css-tipografia-1/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>CSS 3 word-wrap</title>
		<link>http://www.css-3.hu/2009/10/css-3-word-wrap/</link>
		<comments>http://www.css-3.hu/2009/10/css-3-word-wrap/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 19:37:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Nincs kategorizálva]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[CSS3 példa]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[word-wrap]]></category>

		<guid isPermaLink="false">http://www.css-3.hu/?p=147</guid>
		<description><![CDATA[Köztudott, hogy a Microsoft nem igazán jár élen sem a CSS 3 szabvány alakításában sem pedig az adaptációjában. De kivétel erősíti a szabályt, ahogy mondják, ugyanis most egy olyan CSS 3 újításról lesz szó, amelyet a Microsoft javasolt, így azt még az Internet Explorer is támogatja.
Ez a tulajdonság a word-wrap, amely a hosszú szavak problémáját [...]]]></description>
			<content:encoded><![CDATA[<p>Köztudott, hogy a Microsoft nem igazán jár élen sem a CSS 3 szabvány alakításában sem pedig az adaptációjában. De kivétel erősíti a szabályt, ahogy mondják, ugyanis most egy olyan CSS 3 újításról lesz szó, amelyet a Microsoft javasolt, így azt még az Internet Explorer is támogatja.</p>
<p><span id="more-147"></span>Ez a tulajdonság a <em>word-wrap</em>, amely a hosszú szavak problémáját hivatott megoldani. Segítségével azok a szavak, amelyek hosszabbak, mint amilyen széles az őket tartalmazó entitás, nem lógnak ki, hanem &#8220;betördelődnek&#8221; a rendelkezésre álló helyre.</p>
<p>Ezt kapjuk <em>word-wrap</em> nélkül, vagy a <em>word-wrap: normal;</em> beállítással:</p>
<div style="border-style: solid; width: 100px;">Ez_egy_nagyon_hosszú_szó!</div>
<p>Ezt pedig akkor, ha a <em>word-wrap: break-word;</em> beállítást használjuk.</p>
<div style="border-style: solid; width: 100px; word-wrap: break-word;">Ez_egy_nagyon_hosszú_szó!</div>
<p>Megtörni egy szót az elválasztási szabályok figyelmen kívül hagyásával persze nem szerencsés, de általában még mindig jobb megoldás, mint hagyni, hogy a szépen megtervezett weboldalunkon egy ilyen csúnya sebhely éktelenkedjen, mint amilyet az első változat okoz. Persze mindennek akkor van leginkább értelme, ha a tartalom változik az oldalon &#8211; mondjuk fájlból vagy adatbázisból olvasunk be -, így nem tudhatjuk előre, milyen hosszú lesz a leghosszabb szó. De ne felejtsük el, hogy még egy statikus oldalt is &#8220;elronthat&#8221; a látogató, ha ki vagy be zoom-ol böngészője segítségével, tehát a beállítás még ilyenkor sem teljesen haszontalan.</p>
<p>Az Internet Exploreren kívül támogatja még a Firefox, a Safari és a Chrome, sajnos az Opera nem.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.css-3.hu/2009/10/css-3-word-wrap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
