<?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>Norman&#039;s Blog &#187; CSS3</title>
	<atom:link href="http://www.normansblog.de/tag/css3/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.normansblog.de</link>
	<description>News über CSS, jQuery, Firefox und andere Browser sowie aktuelle Kinofilme.</description>
	<lastBuildDate>Fri, 21 Sep 2018 13:18:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>Widescreen ist nicht immer gleich Widescreen</title>
		<link>https://www.normansblog.de/widescreen-ist-nicht-immer-gleich-widescreen/</link>
		<comments>https://www.normansblog.de/widescreen-ist-nicht-immer-gleich-widescreen/#comments</comments>
		<pubDate>Fri, 04 Oct 2013 01:56:03 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=4755</guid>
		<description><![CDATA[Yeah! Neulich bei einem Kundenprojekt habe ich eine kleine Entdeckung gemacht, die ich gern mit euch teilen würde. Die Situation war folgendermaßen: Die Website hat auf jeder Seite eine &#8220;Bühne&#8221; (aka Keyvisuals, großer Bilderslider). Dadurch, dass die Seite responsive ist und die Bühne über die gesamte Seite gehen soll, wird das Bild natürlich recht groß [...]]]></description>
			<content:encoded><![CDATA[<p>Yeah!</p>
<p><a href="http://www.normansblog.de/widescreen-ist-nicht-immer-gleich-widescreen/"><img src="http://www.normansblog.de/wp-content/uploads/2013/10/keyvisual-160x137.jpg" alt="" title="Ein großes Keyvisual" width="160" height="137" class="alignleft size-thumbnail wp-image-4763" /></a></p>
<p>Neulich bei einem Kundenprojekt habe ich eine kleine Entdeckung gemacht, die ich gern mit euch teilen würde.</p>
<p>Die Situation war folgendermaßen: Die Website hat auf jeder Seite eine &#8220;Bühne&#8221; (aka Keyvisuals, großer Bilderslider). Dadurch, dass die Seite responsive ist und die Bühne über die gesamte Seite gehen soll, wird das Bild natürlich recht groß gezogen. Besonders ärgerlich ist das auf Widescreen-Monitoren, wo die Bühne den kompletten Monitor bedeckt, der eigentliche Inhalt darunter hat dann keinen Platz und &#8220;liegt unter der <a href="http://en.wikipedia.org/wiki/Above_the_fold">Falz</a>&#8220;.</p>
<p><span id="more-4755"></span></p>
<p>Daraufhin sollte ich mir Gedanken machen, wie man das beheben könnte. Die naheliegendste Lösung ist es, die Bühne auf solchen Monitoren in der Höhe zu beschränken. Dazu schaute ich mir <a href="https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries">alle möglichen Media Queries</a> an und landete bei <code>device-aspect-ratio</code>. Damit lässt sich das Seitenverhältnis des Anzeigegeräts abfragen, in diesem Fall also 16:9 und 16:10, die üblichen Widescreen-Maße.</p>
<p>Mit diesem Ansatz konnte ich mein CSS um folgende Media Queries erweitern:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #a1a100;">@media screen and (device-aspect-ratio: 16/9) and (max-height: 900px), </span>
	screen and <span style="color: #00AA00;">&#40;</span>device-aspect-ratio<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">16</span>/<span style="color: #cc66cc;">10</span><span style="color: #00AA00;">&#41;</span> and <span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">900px</span><span style="color: #00AA00;">&#41;</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #6666ff;">.buehne</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span><span style="color: #933;">450px</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">&#125;</span>
<span style="color: #a1a100;">@media screen and (device-aspect-ratio: 16/9) and (max-height: 720px), </span>
	screen and <span style="color: #00AA00;">&#40;</span>device-aspect-ratio<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">16</span>/<span style="color: #cc66cc;">10</span><span style="color: #00AA00;">&#41;</span> and <span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">720px</span><span style="color: #00AA00;">&#41;</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #6666ff;">.buehne</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span><span style="color: #933;">360px</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Es wird abgefragt, ob das Anzeigemedium (Monitor) eine Widescreenauflösung benutzt und wie viele Pixel es in der Höhe besitzt. Die Werte sind ungefähr so gewählt, dass die Bühne nicht mehr als 50% des gesamten Display einnimmt.</p>
<p>Ich habe gedacht, damit wäre das Problem gelöst. Tests auf meinem Monitor verliefen alle positiv also eingecheckt und ab dafür. Schade nur, dass der Kunde Laptops im Einsatz hat, die eine Auflösung von <strong>1366&times;768</strong> Pixeln haben. Auf den ersten Blick kein Problem, denn das fällt ja unter die 16:9 Auflösungen&#8230; oder? Ja, zumindest, wenn man nicht genauer hinschaut.</p>
<div id="attachment_4760" class="wp-caption aligncenter" style="width: 520px"><a href="http://www.normansblog.de/wp-content/uploads/2013/10/Vector_Video_Standards4.svg_.png"><img src="http://www.normansblog.de/wp-content/uploads/2013/10/Vector_Video_Standards4.svg_-500x399.png" alt="" title="Bildschirmauflösungen" width="500" height="399" class="size-large wp-image-4760" /></a><p class="wp-caption-text">Alle gängigen Bildschirmauflösungen, Quelle: Wikipedia</p></div>
<p>Gelistet ist 1366&times;768 als 16:9er Auflösung, in der Realität weicht es aber leicht davon ab. 16:9 ergibt 1,<span style="text-decoration: overline;">7</span>, allerdings ist 1366:768 gleich 1.7786458<span style="text-decoration: overline;">3</span>. Genau da hat der Browser Probleme mit seiner Abfrage. Sobald auch nur ein Hauch von Abweichung vorhanden ist, greift <code>device-aspect-ratio: 16/9</code> nicht mehr.</p>
<p>Meinen Code habe ich um die Abfrage dieser speziellen Auflösung erweitern müssen, das ist unschön aber musste sein. Wenn jemand einen besseren Weg kennen sollte, lasst ihn mich bitte wissen!</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;"><span style="color: #a1a100;">@media screen and (device-aspect-ratio: 16/9) and (max-height: 900px), </span>
	screen and <span style="color: #00AA00;">&#40;</span>device-aspect-ratio<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">16</span>/<span style="color: #cc66cc;">10</span><span style="color: #00AA00;">&#41;</span> and <span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">900px</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span>
	screen and <span style="color: #00AA00;">&#40;</span>device-aspect-ratio<span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">1366</span>/<span style="color: #cc66cc;">768</span><span style="color: #00AA00;">&#41;</span> and <span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">900px</span><span style="color: #00AA00;">&#41;</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #6666ff;">.buehne</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">max-height</span><span style="color: #00AA00;">:</span><span style="color: #933;">450px</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Oh, und übrigens: die anderen Auflösungen könnt ihr getrost ignorieren, die sind alles Vielfache von 16:9 bzw. 16:10, da gibt es keine Probleme. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/widescreen-ist-nicht-immer-gleich-widescreen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iX-Artikel: Formulare mit HTML5 &amp; CSS3</title>
		<link>https://www.normansblog.de/ix-artikel-formulare-mit-html5-und-css3/</link>
		<comments>https://www.normansblog.de/ix-artikel-formulare-mit-html5-und-css3/#comments</comments>
		<pubDate>Tue, 11 Sep 2012 17:33:04 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[HTML5]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=4554</guid>
		<description><![CDATA[Seid gegrüßt! Mit Hilfe meines Arbeitgebers das MedienKombinat ist es mir möglich gewesen, einen Artikel in der Septemberausgabe der Fachzeitschrift iX zu veröffentlichen. Im Artikel geht es um HTML5 Fomulare, deren Styling mit CSS3 und den Vorteilen für mobile Endgeräte. Wer Interesse hat, kann mittlerweile alles online nachlesen. Ich bedanke mich bei allen Beteiligten und [...]]]></description>
			<content:encoded><![CDATA[<p>Seid gegrüßt!</p>
<div id="attachment_4557" class="wp-caption aligncenter" style="width: 520px"><a href="http://www.heise.de/ix/artikel/Auswahlscheibe-1667689.html"><img src="http://www.normansblog.de/wp-content/uploads/2012/09/iX_Artikel.jpg" alt="Artikel in der iX 09/2012" title="Artikel in der iX 09/2012" width="500" height="234" class="size-full wp-image-4557" /></a><p class="wp-caption-text">Bessere Formulare dank HTML5 und CSS3 - iX 09/2012</p></div>
<p>Mit Hilfe meines Arbeitgebers <a href="http://www.das-medienkombinat.de/">das MedienKombinat</a> ist es mir möglich gewesen, einen Artikel in der Septemberausgabe der Fachzeitschrift <a href="http://www.heise.de/ix/">iX</a> zu veröffentlichen. Im Artikel geht es um HTML5 Fomulare, deren Styling mit CSS3 und den Vorteilen für mobile Endgeräte. Wer Interesse hat, kann mittlerweile alles <a href="http://www.heise.de/ix/artikel/Auswahlscheibe-1667689.html">online nachlesen</a>.</p>
<p> Ich bedanke mich bei allen Beteiligten und wünsche euch viel Spaß damit. Wenn es Fragen dazu gibt, könnt ihr die hier oder im Forum der iX stellen. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/ix-artikel-formulare-mit-html5-und-css3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vortragsfolien: HTML5 &amp; CSS3</title>
		<link>https://www.normansblog.de/vortragsfolien-html5-css3/</link>
		<comments>https://www.normansblog.de/vortragsfolien-html5-css3/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 19:21:59 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Vortrag]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=3877</guid>
		<description><![CDATA[Die neuen Stars am Himmel: HTML5 &#038; CSS3 Wer möchte hat, kann sich die Folien meines Vortrags zum Thema HTML5 &#038; CSS3 anschauen. Der Vortrag soll Lust auf die neuen Technologien machen und zeigt auf, welche Möglichkeiten sich dabei bieten. Aufgrund der zeitlichen Begrenzung, konnte ich leider nicht zu sehr ins Detail gehen. Über Feedback [...]]]></description>
			<content:encoded><![CDATA[<p>Die neuen Stars am Himmel: HTML5 &#038; CSS3</p>
<div id="attachment_3878" class="wp-caption aligncenter" style="width: 520px"><a href="http://www.normansblog.de/vortragsfolien-html5-css3/"><img src="http://www.normansblog.de/wp-content/uploads/2012/01/folien_html5_css3-500x218.jpg" alt="HTML5 &amp; CSS3" title="Vortragsfolien: HTML5 &amp; CSS3" width="500" height="218" class="size-large wp-image-3878" /></a><p class="wp-caption-text">Vortragsfolien: HTML5 &amp; CSS3</p></div>
<p>Wer möchte hat, kann sich die <a href="http://www.normansblog.de/html5-css3/">Folien meines Vortrags</a> zum Thema HTML5 &#038; CSS3 anschauen. Der Vortrag soll Lust auf die neuen Technologien machen und zeigt auf, welche Möglichkeiten sich dabei bieten. Aufgrund der zeitlichen Begrenzung, konnte ich leider nicht zu sehr ins Detail gehen. Über Feedback würde ich mich trotzdem freuen! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span id="more-3877"></span></p>
<div class="demolink"><a href="http://www.normansblog.de/html5-css3/">Vortrag ansehen!</a></div>
<p>Oh übrigens werden IE-User kein großes Vergnügen an den Folien haben, auch iPad-User könnten Probleme haben, für euch gibts daher eine <a href="http://www.normansblog.de/html5-css3/index_acc.html">vereinfachte Version der Slides</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/vortragsfolien-html5-css3/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Transitions</title>
		<link>https://www.normansblog.de/css3-im-detail-transitions/</link>
		<comments>https://www.normansblog.de/css3-im-detail-transitions/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 01:02:26 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=3683</guid>
		<description><![CDATA[Aaaah *rülps* Weihnachten.. Ich weiß ja nicht, wie ihr es mit Weihnachten haltet, aber ich mag es. Die Familie ist da, jeder kriegt Geschenke und es gibt wahnsinnig viel lecker Essen UND DAS DREI TAGE LANG! (Bis auf die Geschenke versteht sich.. obwohl.. wäre auch mal cool eigentlich ) Kommen wir zum eigentlichen Thema des [...]]]></description>
			<content:encoded><![CDATA[<p>Aaaah *rülps* Weihnachten..</p>
<p><a href="http://www.normansblog.de/css3-im-detail-transitions/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Ich weiß ja nicht, wie ihr es mit Weihnachten haltet, aber ich mag es. Die Familie ist da, jeder kriegt Geschenke und es gibt wahnsinnig viel lecker Essen UND DAS DREI TAGE LANG! (Bis auf die Geschenke versteht sich.. obwohl.. wäre auch mal cool eigentlich <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ) Kommen wir zum eigentlichen Thema des Tages: <strong>CSS Transitions</strong>!</p>
<p><span id="more-3683"></span></p>
<div class="demolink"><a href="http://www.normansblog.de/demos/transition/">Transition Demo</a></div>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits vollständig:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a style="opacity:0.3;" href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a style="opacity:0.3;" href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a><br/><small>(Opera unterstützt noch nicht alle Properties, IE erst ab Version 10)</small></p>
</blockquote>
<h3>Animationen bei Mouse-Hover</h3>
<p>Prinzipiell dient Transition dazu eine Änderung am Styling eines Elements zu verlängern. Natürlich kennen wir alle schon die Peusoklasse <code>:hover</code> und auch, dass wir damit Eigenschaften des Normalzustandes überschreiben können. Transition greift genau an diesem Punkt an. Wir können bestimmen, wie lang diese Änderung dauert, welche Eigenschaften davon betroffen sind, ob es eine Pause gibt, bevor die Änderung beginnt und das Muster, in der sie abläuft (dazu wird eine <a href="http://de.wikipedia.org/wiki/B%C3%A9zierkurve">Bézierkurve</a> benutzt). Es entsteht eine kurze <strong>Animation</strong>.</p>
<h3>Syntax</h3>
<p>Die Kurzform lautet <code>transition</code>, danach folgen bis zu vier Werte, die gleichzeitig auch als einzelne Befehle benutzt werden können, ähnlich wie das bei <code>padding</code> oder <code>background</code> auch der Fall ist.</p>
<ol>
<li><em>transition-property</em> &#8211; gibt an, welche Eigenschaft animiert werden soll, Default ist <strong>all</strong></li>
<li><em>transition-duration</em> &#8211; ein dezimaler Wert in Sekunden, der für die Länge der Transition steht, Default ist <strong>0s</strong> (0 Sekunden, also keine Transition sichtbar)</li>
<li><em>transition-timing-function</em> &#8211; mehrere <a href="https://developer.mozilla.org/en/CSS/timing-function#Keywords_for_common_timing-functions">Schlüsselwörter</a> möglich, <a href="https://developer.mozilla.org/en/CSS/timing-function#Syntax">eigenen Kurven-Beschreibungen</a> möglich, Default ist <strong>ease</strong></li>
<li><em>transition-delay</em> &#8211; Länge der Pause in Sekunden bis Transition beginnt, Default ist <strong>0s</strong></li>
</ol>
<p>Da der Standard bisher nicht zu 100% fertig ist, unterstützen alle Browser Transition mit dem jeweils bekannten Prefix. An einem Beispiel wollen wir erreichen, dass sich die Textfarbe eines Links bei Mouse-Over innerhalb einer Sekunde von Blau zu Rot ändert.</p>
<h6>CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">a <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #000000; font-weight: bold;">blue</span><span style="color: #00AA00;">;</span>
	-moz-transition<span style="color: #00AA00;">:</span>all 1s ease 0s<span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*Firefox*/</span>
	-webkit-transition<span style="color: #00AA00;">:</span>all 1s ease 0s<span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*Safari + Chrome*/</span>
	-o-transition<span style="color: #00AA00;">:</span>all 1s ease 0s<span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*Opera*/</span>
	-ms-transition<span style="color: #00AA00;">:</span>all 1s ease 0s<span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*Internet Explorer*/</span>
	transition<span style="color: #00AA00;">:</span>all 1s ease 0s<span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/*W3C Standard*/</span>
<span style="color: #00AA00;">&#125;</span>
a<span style="color: #3333ff;">:hover </span><span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #993333;">red</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Man könnte auch nur <code>transition:1s</code> schreiben und den Rest den Defaultwerten überlassen aber ein Beispiel sollte ausführlicher sein. Der Effekt bliebe übrigens der gleiche, wenn wir ausschließlich <code>transition-duration</code> (samt allen Prefixes) verwenden würden, weil im Beispiel nur die Rede von einer Sekunde ist.</p>
<p>Was vielleicht noch erwähnenswert ist..</p>
<ul>
<li>die Transition-Eigenschaften schreibt man immer in den Selector ohne Pseudoklasse</li>
<li>und der Wert für <em>transition-duration</em> sollte immer zwischen 0s und 1s liegen</li>
</ul>
<p>Alles, was länger dauert, bringt dem User nicht das Geringste und die Webseite wirkt dadurch nur unglaublich träge.</p>
<h6>Ergebnis</h6>
<style>
p.demo a {
	color:blue !important;
	font:bold 20px/24px arial;
	-moz-transition:all 1s ease 0s; /*Firefox*/
	-webkit-transition:all 1s ease 0s; /*Safari + Chrome*/
	-o-transition:all 1s ease 0s; /*Opera*/
	-ms-transition:all 1s ease 0s; /*Internet Explorer*/
	transition:all 1s ease 0s; /*W3C Standard*/
}
p.demo a:hover {
	color:red !important;
	text-decoration:none;
}
p.demo {
	background:#f1f1f1;
	border:1px solid #ddd;
	padding:20px;
}
</style>
<p class="demo acenter"><a href="http://www.example.com">Bewege die Maus über diesen Link</a></p>
<p>Wie wir leicht sehen, läuft der Wechsel von Blau nach Rot in einer Sekunde ab und nicht wie normal sofort nachdem die Maus über dem Element schwebt.</p>
<p>Dadurch, dass es <a href="http://oli.jp/2010/css-animatable-properties/">viele Properties</a> gibt, die durch Transition beeinflusst werden können, gibt es extrem viele Möglichkeiten schöne und sinnvolle Effekte zu erzielen. Auch ich benutze es an einigen Stellen.. dem Weiterlesen-Button, Bilderrahmen, den Social Media Buttons links, das Einblenden des Text-Overlays bei verwandten Artikeln usw.</p>
<h3>Fazit</h3>
<p>CSS Transitions sind eine prima Sache zum Spielen und ausprobieren. Einige nervige Javascript-Lösungen lassen sich komplett damit ersetzen und User haben das Gefühl es mit einer edlen, unaufdringlichen Website zu tun zu haben.</p>
<div id="attachment_3856" class="wp-caption aligncenter" style="width: 520px"><a href="http://www.normansblog.de/demos/transition/"><img src="http://www.normansblog.de/wp-content/uploads/2011/12/css_transition.jpg" alt="CSS Transition Demo" title="CSS Transition Demo" width="500" height="210" class="size-full wp-image-3856" /></a><p class="wp-caption-text">CSS Transition Demo</p></div>
<p>Ich habe auch noch eine weitere Demo geschrieben, die zeigt, was man alles so animieren kann. Trotzdem ist auch sie nur die Spitze des Eisberges, ich bin sicher, dass ihr euch noch viel tollere Beispiele ausdenken werdet. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="demolink"><a href="http://www.normansblog.de/demos/transition/">Transition Demo</a></div>
<p>Viel Spaß also beim Experimentieren und da es unwahrscheinlich ist, dass ich dieses Jahr noch einen Artikel schreibe, wünsche ich euch schonmal einen guten Start ins neue Jahr (das wäre dann schon 2012)! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-transitions/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Türchen #16: resize</title>
		<link>https://www.normansblog.de/tuerchen-16-resize/</link>
		<comments>https://www.normansblog.de/tuerchen-16-resize/#comments</comments>
		<pubDate>Mon, 07 Mar 2011 12:30:00 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Adventskalender 2010]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=3260</guid>
		<description><![CDATA[Mahlzeit, mit großer Verspätung gehts nun mit dem Adventskalender weiter.. Hätte ich noch länger gewartet, wäre bald wieder Advent gewesen aber so passt es schon noch.. seht es einfach als eine Art Serie von Artikeln und nicht mehr als Adventskalender an. Ok, worum geht es heute? Ganz kurz und bündig: resize. Diese CSS3 Eigenschaft erlaubt [...]]]></description>
			<content:encoded><![CDATA[<p>Mahlzeit, mit großer Verspätung gehts nun mit dem Adventskalender weiter..</p>
<p><a href="http://www.normansblog.de/tuerchen-16-resize/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/adventskalender_16.png" alt="Türchen #16" title="Türchen #16" width="151" height="139" class="alignright size-full wp-image-2862" /></a> Hätte ich noch länger gewartet, wäre bald wieder Advent gewesen <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  aber so passt es schon noch.. seht es einfach als eine Art Serie von Artikeln und nicht mehr als Adventskalender an. Ok, worum geht es heute? Ganz kurz und bündig: <em>resize</em>. Diese CSS3 Eigenschaft erlaubt es dem User ohne Einsatz von Javascript Block-Level Elemente in ihrer Größe zu manipulieren. Ich werde euch zeigen, was damit alles möglich ist, wo es Sinn macht und was man beachten sollte.</p>
<p><span id="more-3260"></span></p>
<h3>Browserunterstützung</h3>
<table class="acenter alignright">
<tr>
<td>Browser</td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/firefox_ico.png" alt="Firefox" title="Firefox" width="16" height="16" class="alignnone size-full wp-image-2887" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/safari_ico.png" alt="Safari" title="Safari" width="16" height="16" class="alignnone size-full wp-image-2890" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/opera_ico.png" alt="Opera" title="Opera" width="16" height="16" class="alignnone size-full wp-image-2889" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/chrome_ico.png" alt="Chrome" title="Chrome" width="16" height="16" class="alignnone size-full wp-image-2886" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/ie_ico.png" alt="Internet Explorer" title="Internet Explorer" width="16" height="16" class="alignnone size-full wp-image-2888" /></td>
</tr>
<tr>
<td>ab Version</td>
<td>4.0</td>
<td>3.0</td>
<td>&ndash;</td>
<td>1.0</td>
<td>&ndash;</td>
</tr>
</table>
<p>Unterstützung gibt es bisher von Webkit- und künftigen Geckoversionen. Anders sieht es in Opera 11 und Internet Explorer 9 aus, hier fehlt jeglicher Support bisher.</p>
<p>Also, was macht <code>resize</code> nun genau? Wir als Entwickler können bestimmten, wie User die Größe, sprich Höhe und Breite, eines Blocks verändern können. Dazu stehen uns fünf mögliche Werte zur Verfügung:</p>
<ol>
<li><code>none</code>, das Element kann nicht verändert werden (Default, außer bei <code>textarea</code>)</li>
<li><code>both</code>, Höhe und Breite können verändert werden (Default bei <code>textarea</code>)</li>
<li><code>horizontal</code>, nur die Breite kann verändert werden</li>
<li><code>vertical</code>, nur die Höhe kann verändert werden</li>
<li><code>inherit</code>, erbt den Wert vom Elternelement</li>
</ol>
<blockquote class="warning">
<p><code>resize</code> ist für <code>textarea</code>-Elemente standardmäßig auf <code>both</code> gesetzt, alle anderen Elemente müssen zwei Bedingungen erfüllen:</p>
<ul>
<li>sie dürfen kein inline-Element sein (nur inline-block, block und replaced elements sind erlaubt)</li>
<li>die Eigenschaft <code>overflow</code> darf nicht auf <code>visible</code> gesetzt sein</li>
</ul>
<p>Ist eine der beiden Bedingungen nicht erfüllt, greift <code>resize</code> nicht!</p>
</blockquote>
<h3>Beispiele</h3>
<p>Okay, damit wissen wir jetzt, was wir zu tun haben. Als erstes Beispiel nehmen wir eine <code>textarea</code> zur Hand:</p>
<h6>HTML</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">textarea</span> <span style="color: #000066;">cols</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;20&quot;</span> <span style="color: #000066;">rows</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;3&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">textarea</span>&gt;</span></pre></td></tr></table></div>

<h6>Ergebnis</h6>
<p><textarea cols="20" rows="3" style="width:auto;resize:both;"></textarea></p>
<p>Benutzer von Chrome, Safari und Firefox 4 sollten jetzt in der Lage sein, die Box zu vergrößern, indem sie auf den kleinen Marker unten rechts klicken und ihn verschieben. Damit kann man wunderbar das Layout einer Seite zerstören, eventuell hat der ein oder andere das schon auf anderen Seiten bemerkt. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Jetzt wollen wir erreichen, dass die Textbox nur in der Höhe änderbar ist. Dazu benutzen wir <code>resize</code>:</p>
<h6>CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">textarea <span style="color: #00AA00;">&#123;</span>
	resize<span style="color: #00AA00;">:</span>vertical<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h6>Ergebnis</h6>
<p><textarea cols="20" rows="3" style="width:auto;resize:vertical;"></textarea></p>
<p>Es hat geklappt, die Textbox kann jetzt nicht mehr in ihrer Breite, sondern nur noch in ihrer Höhe geändert werden, damit lässt sich schonmal wesentlich weniger &#8220;Schaden&#8221; anrichten.</p>
<p>Okay, probieren wir das ganze jetzt mit einem <code>div</code>. Dazu müssen wir, wie oben schon beschrieben, neben der <code>resize</code> Eigenschaft auch <code>overflow</code> verändern:</p>
<h6>HTML</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;resize&quot;</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></td></tr></table></div>

<h6>CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.resize</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">2px</span> <span style="color: #993333;">solid</span> orange<span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">100px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">overflow</span><span style="color: #00AA00;">:</span><span style="color: #993333;">hidden</span><span style="color: #00AA00;">;</span>
	resize<span style="color: #00AA00;">:</span><span style="color: #993333;">both</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">200px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h6>Ergebnis</h6>
<div style="border:2px solid orange;height:100px;overflow:hidden;resize:both;width:200px;margin-bottom:10px;"></div>
<p>Und siehe da, wir haben den gleichen Effekt auch für ein stinknormales <code>div</code> erzielt &#8211; viel Spaß beim Basteln! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/tuerchen-16-resize/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Türchen #15: text-overflow</title>
		<link>https://www.normansblog.de/tuerchen-15-text-overflow/</link>
		<comments>https://www.normansblog.de/tuerchen-15-text-overflow/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 18:36:48 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Adventskalender 2010]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=3124</guid>
		<description><![CDATA[Da isser wieder! Heute ist zwar schon der 24. aber hier kommt erst das 15. Türchen. Ich wünsche euch und euren Familien ein schönes Fest und hoffe ihr vergebt mir meinen Rückstand bezüglich des Adventskalenders. Natürlich werde ich versuchen ihn trotz allem noch dieses Jahr zu komplettieren, wir werden sehen, ob das klappt. Die letzten [...]]]></description>
			<content:encoded><![CDATA[<p>Da isser wieder!</p>
<p><a href="http://www.normansblog.de/tuerchen-15-text-overflow/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/adventskalender_15.png" alt="Türchen #15" title="Türchen #15" width="151" height="139" class="alignright size-full wp-image-2862" /></a> Heute ist zwar schon der 24. aber hier kommt erst das 15. Türchen. Ich wünsche euch und euren Familien ein schönes Fest und hoffe ihr vergebt mir meinen Rückstand bezüglich des Adventskalenders. Natürlich werde ich versuchen ihn trotz allem noch dieses Jahr zu komplettieren, wir werden sehen, ob das klappt. Die letzten Tage ist wenig passiert, da ich durch diverse Geburtstagsfeiern nie Zeit hatte. Jetzt geht es aber auf jeden Fall mit <em>text-overflow</em> weiter, das hauptsächlich deswegen so selten benutzt wird, da es erst offiziell mit CSS3 Einzug in die Webwelt hält.</p>
<p><span id="more-3124"></span></p>
<h3>Browserunterstützung</h3>
<table class="acenter alignright">
<tr>
<td>Browser</td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/firefox_ico.png" alt="Firefox" title="Firefox" width="16" height="16" class="alignnone size-full wp-image-2887" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/safari_ico.png" alt="Safari" title="Safari" width="16" height="16" class="alignnone size-full wp-image-2890" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/opera_ico.png" alt="Opera" title="Opera" width="16" height="16" class="alignnone size-full wp-image-2889" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/chrome_ico.png" alt="Chrome" title="Chrome" width="16" height="16" class="alignnone size-full wp-image-2886" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/ie_ico.png" alt="Internet Explorer" title="Internet Explorer" width="16" height="16" class="alignnone size-full wp-image-2888" /></td>
</tr>
<tr>
<td>ab Version</td>
<td>7</td>
<td>1.3</td>
<td>11.0</td>
<td>1.0</td>
<td>6.0</td>
</tr>
</table>
<p>Die von Microsoft stammende Eigenschaft wird mittlerweile von allen Browsern <del datetime="2013-12-19T14:17:45+00:00">außer Firefox unterstützt (es gibt aber schon <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=312156">einen Bug</a> dafür <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  )</del><ins datetime="2013-12-19T14:17:45+00:00">, seit Version 7 auch von Firefox,</ins> unterstützt. Opera unterstützt sie seit Version 11, in Version 9-10 wurde aber noch die Präfix-Variante benutzt (<code>-o-text-overflow</code>).</p>
<p>Mit <code>text-overflow</code> können wir bestimmen, wie ein Text, der aufgrund seiner Länge nicht in sein Elternelement passt, abgeschnitten wird. Es werden für diese Eigenschaft nur drei Werte akzeptiert:</p>
<ol>
<li><code>ellipsis</code>, Text endet mit drei Punkten &#8220;&#8230;&#8221; (U+2026, &amp;hellip;)</li>
<li><code>clip</code>, der Text hört einfach auf, wie abgeschnitten (Defaultwert)</li>
<li><code>&lt;string&gt;</code>, eine Zeichenkette, mit der der Text abgeschnitten werden soll, wird noch von keinem Browser unterstützt!</li>
</ol>
<h3>Beispiel</h3>
<p>Wie immer, zeige ich euch das Ganze natürlich an einem Beispiel, denkt daran, dass ihr den Effekt in Firefox nicht sehen könnt. Als Versuchskaninchen dient uns diesmal eine Liste, mit der Artikel angeteasert werden sollen.</p>
<h6>HTML</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">ul</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>Post 1<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">p</span>&gt;</span>Lorem ipsum dolor sit amet.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">p</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>Post 2<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">p</span>&gt;</span>Lorem ipsum dolor sit amet, sadipscing elitr sed diam voluptua.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">p</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">li</span>&gt;&lt;<span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>Post 3<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">p</span>&gt;</span>Lorem ipsum dolor sit amet, sed diam nonumy eirmod.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">p</span>&gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">li</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">ul</span>&gt;</span></pre></td></tr></table></div>

<h6>CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">ul <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">list-style</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">overflow</span><span style="color: #00AA00;">:</span><span style="color: #993333;">hidden</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
li <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background-color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#eee</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#aaa</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span><span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin-right</span><span style="color: #00AA00;">:</span><span style="color: #933;">20px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">5px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">140px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h6>Ergebnis</h6>
<ul style="list-style:none;margin:10px 0;overflow:hidden;">
<li style="background-color:#eee;border:1px solid #aaa;float:left;margin-right:20px;padding:5px;width:140px;">
<h3>Post 1</h3>
<p>Lorem ipsum dolor sit amet.</p>
</li>
<li style="background-color:#eee;border:1px solid #aaa;float:left;margin-right:20px;padding:5px;width:140px;">
<h3>Post 2</h3>
<p>Lorem ipsum dolor sit amet, sadipscing elitr sed diam voluptua.</p>
</li>
<li style="background-color:#eee;border:1px solid #aaa;float:left;margin-right:20px;padding:5px;width:140px;">
<h3>Post 3</h3>
<p>Lorem ipsum dolor sit amet, sed diam nonumy eirmod.</p>
</li>
</ul>
<p>Damit erhalten wir drei gleiche Boxen. Das ist zwar ganz gut aber noch nicht schön. Schön wäre es, wenn die Boxen auch gleich hoch wären, dazu müssen wir den Text kürzen und das ist wiederum der Punkt, an dem uns <code>text-overflow</code> zu Hilfe kommt.</p>
<p>Als erstes müssen wir die Zeilenumbrüche mit <code>white-space:nowrap</code> verhindern &#8211; ohne dem geht es nicht! Danach müssen wir den Paragraphen innerhalb der Listenelemente ein <code>overflow:hidden</code> verpassen, damit zu langer Text nicht über das Element hinaus gerendert wird. Zum Schluss kommt noch <code>text-overflow:ellipsis</code> dazu. Das CSS der <code>li</code>-Tags wird also um folgenden Code erweitert:</p>
<h6>zusätzliches CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">li <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">white-space</span><span style="color: #00AA00;">:</span><span style="color: #993333;">nowrap</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
li p <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">overflow</span><span style="color: #00AA00;">:</span><span style="color: #993333;">hidden</span><span style="color: #00AA00;">;</span>
	text-overflow<span style="color: #00AA00;">:</span>ellipsis<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h6>Ergebnis</h6>
<ul style="list-style:none;margin:10px 0;overflow:hidden;">
<li style="background-color:#eee;border:1px solid #aaa;float:left;margin-right:20px;padding:5px;width:140px;white-space:nowrap;">
<h3>Post 1</h3>
<p style="overflow:hidden;text-overflow:ellipsis;">Lorem ipsum dolor sit amet.</p>
</li>
<li style="background-color:#eee;border:1px solid #aaa;float:left;margin-right:20px;padding:5px;width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;">
<h3>Post 2</h3>
<p style="overflow:hidden;text-overflow:ellipsis;">Lorem ipsum dolor sit amet, consetetur sadipscing elitr sed diam voluptua.</p>
</li>
<li style="background-color:#eee;border:1px solid #aaa;float:left;margin-right:20px;padding:5px;width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;">
<h3>Post 3</h3>
<p style="overflow:hidden;text-overflow:ellipsis;">Lorem ipsum dolor sit amet, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</p>
</li>
</ul>
<p>Und siehe da <del datetime="2013-12-19T14:17:45+00:00">(!=Firefox)</del> die Boxen haben alle die gleiche Höhe und die Posts werden automatisch abgeschnitten und enden mit drei Punkten, ganz ohne PHP. Schöne Sache wie ich finde.. so und nun wünsche ich allen Lesern ein ruhiges Weihnachtsfest und eine schöne Bescherung. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/tuerchen-15-text-overflow/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Türchen #5: word-wrap</title>
		<link>https://www.normansblog.de/tuerchen-5-word-wrap/</link>
		<comments>https://www.normansblog.de/tuerchen-5-word-wrap/#comments</comments>
		<pubDate>Sun, 05 Dec 2010 17:57:15 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Adventskalender 2010]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2950</guid>
		<description><![CDATA[Hallo und einen schönen zweiten Advent wünsche ich! Komm grad zurück vom JK2-Zocken und hab dabei wohl etwas die Zeit vergessen, aber hier nun Türchen Nummer fünf mit.. Word-Wrap! Schonmal das Problem gehabt, dass in Mock-Ups die Überschriften der Widgets alle schön gepasst haben aber im Real-Betrieb dann so lange Wörter beinhalten (ich liebe Deutschland [...]]]></description>
			<content:encoded><![CDATA[<p>Hallo und einen schönen zweiten Advent wünsche ich!</p>
<p><a href="http://www.normansblog.de/tuerchen-5-word-wrap/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/adventskalender_5.png" alt="Türchen #5" title="Türchen #5" width="151" height="139" class="alignright size-full wp-image-2862" /></a> Komm grad zurück vom JK2-Zocken und hab dabei wohl etwas die Zeit vergessen, aber hier nun Türchen Nummer fünf mit.. <em>Word-Wrap</em>! Schonmal das Problem gehabt, dass in Mock-Ups die Überschriften der Widgets alle schön gepasst haben aber im Real-Betrieb dann <em>so</em> lange Wörter beinhalten (ich liebe Deutschland für seine zusammengesetzten Substantive), dass sie übers Widget hinausragen? Ja? Dann ist <code>word-wrap</code> genau das Richtige für euch.</p>
<p><span id="more-2950"></span></p>
<h3>Browserunterstützung</h3>
<p>Das schöne an <code>word-wrap</code> ist, dass man bedenkenlos einsetzen kann und es, obwohl Teil der CSS3 Spezifikation, von allen Browsern unterstützt wird. Vermutlich liegt das daran, dass es ursprünglich von Microsoft kommt (daher auch Support in IE6).</p>
<table class="acenter alignright">
<tr>
<td>Browser</td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/firefox_ico.png" alt="Firefox" title="Firefox" width="16" height="16" class="alignnone size-full wp-image-2887" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/safari_ico.png" alt="Safari" title="Safari" width="16" height="16" class="alignnone size-full wp-image-2890" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/opera_ico.png" alt="Opera" title="Opera" width="16" height="16" class="alignnone size-full wp-image-2889" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/chrome_ico.png" alt="Chrome" title="Chrome" width="16" height="16" class="alignnone size-full wp-image-2886" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/ie_ico.png" alt="Internet Explorer" title="Internet Explorer" width="16" height="16" class="alignnone size-full wp-image-2888" /></td>
</tr>
<tr>
<td>ab Version</td>
<td>3.5</td>
<td>1.0</td>
<td>10.5</td>
<td>1.0</td>
<td>5.5</td>
</tr>
</table>
<p>Es hat zwei Werte aus denen man wählen kann, wobei letzteres das Interessantere von beiden ist:</p>
<ol>
<li><code>normal</code>, der Defaultwert lange, Wörter bleiben lang und werden nicht umgebrochen</li>
<li><code>break-word</code>, Wörter, die zu lang sind werden einfach umgebrochen und ragen somit nicht mehr über ihr Elternelement hinaus</li>
</ol>
<h3>Beispiel</h3>
<p>Kommen wir ohne große Umwege zu einem Beispiel, wir wollen <code>word-wrap</code> ja auch mal in Aktion sehen. Prinzipiell kann man diese Eigenschaft natürlich jedem Element geben, es bietet sich aber an, es gleich dem <code>body</code>-Tag zu verpassen, dann wirkt es sich gleich auf die ganze Seite aus. Zunächst aber ein Beispiel, wie es ohne <code>word-wrap</code> aussieht:</p>
<h6>Beispiel ohne Word-Wrap</h6>
<div style="background-color:#eee;border:1px solid #aaa;padding:10px 10px 0;width:200px;margin:0 0 10px;word-wrap:normal;">
<p>Gebäudereinigungsfachkraftpersonal gesucht, jeder Bewerber wird eingestellt und darf Putzen bis der Arzt kommt!</p>
</div>
<p>Jetzt im Vergleich dazu der gleiche Text mit <code>break-word</code>:</p>
<h6>CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">body <span style="color: #00AA00;">&#123;</span>
	word-wrap<span style="color: #3333ff;">:break-</span>word<span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h6>Beispiel mit Word-Wrap</h6>
<div style="background-color:#eee;border:1px solid #aaa;padding:10px 10px 0;width:200px;margin:0 0 10px;">
<p>Gebäudereinigungsfachkraftpersonal gesucht, jeder Bewerber wird eingestellt und darf Putzen bis der Arzt kommt!</p>
</div>
<p>Der Text wird zwar ohne Bindestrich umgebrochen, dafür ragt nichts mehr aus der Box heraus, was uns unter Umständen das Layout kaputt machen könnte. In Zusammenarbeit mit <code>overflow:hidden</code> geht außerdem der überstehende Text nicht mehr verloren.</p>
<p>So.. und für morgen versuche ich wieder pünktlich zu sein. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/tuerchen-5-word-wrap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Türchen #3: color:transparent</title>
		<link>https://www.normansblog.de/tuerchen-3-color-transparent/</link>
		<comments>https://www.normansblog.de/tuerchen-3-color-transparent/#comments</comments>
		<pubDate>Fri, 03 Dec 2010 10:25:55 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Adventskalender 2010]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2934</guid>
		<description><![CDATA[Guten Morgen! Heute bin ich extra früh aufgestanden (ja &#8211; um 9:00 Uhr ist sehr früh) um euch einen neuen Eintrag im Adventskalender zu schreiben. Naja jedenfalls gehts heute um das kleine Wort transparent, das &#8211; wie ihr sicherlich wisst &#8211; an sich nichts Neues ist. ABER in der Verbindung mit dem anderen kleinen Wort [...]]]></description>
			<content:encoded><![CDATA[<p>Guten Morgen!</p>
<p><a href="http://www.normansblog.de/tuerchen-3-color-transparent/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/adventskalender_3.png" alt="Türchen #3" title="Türchen #3" width="151" height="139" class="alignright size-full wp-image-2862" /></a> Heute bin ich extra früh aufgestanden (ja &#8211; um 9:00 Uhr ist <strong>sehr</strong> früh) um euch einen neuen Eintrag im Adventskalender zu schreiben. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Naja jedenfalls gehts heute um das kleine Wort <code>transparent</code>, das &#8211; wie ihr sicherlich wisst &#8211; an sich nichts Neues ist. ABER in der Verbindung mit dem anderen kleinen Wort <code>color</code> durchaus etwas Neues darstellt.</p>
<p><span id="more-2934"></span></p>
<h3>Browserunterstützung</h3>
<table class="acenter alignright">
<tr>
<td>Browser</td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/firefox_ico.png" alt="Firefox" title="Firefox" width="16" height="16" class="alignnone size-full wp-image-2887" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/safari_ico.png" alt="Safari" title="Safari" width="16" height="16" class="alignnone size-full wp-image-2890" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/opera_ico.png" alt="Opera" title="Opera" width="16" height="16" class="alignnone size-full wp-image-2889" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/chrome_ico.png" alt="Chrome" title="Chrome" width="16" height="16" class="alignnone size-full wp-image-2886" /></td>
<td><img src="http://www.normansblog.de/wp-content/uploads/2010/11/ie_ico.png" alt="Internet Explorer" title="Internet Explorer" width="16" height="16" class="alignnone size-full wp-image-2888" /></td>
</tr>
<tr>
<td>ab Version</td>
<td>3.0</td>
<td>3.1</td>
<td>10.0</td>
<td>1.0</td>
<td>9.0</td>
</tr>
</table>
<p>Ja transparent sollte euch zumindest schon einmal begegnet sein.. vermutlich im Zusammengang mit <code>background</code> oder ganz speziell als <code>background-color</code>. Außerdem kann man es auch als <code>border-color</code> benutzen, beides geht seit CSS2.</p>
<p>Als Wert für Color allerdings ist es erst in CSS3 &#8220;erlaubt&#8221;, deswegen ist die Unterstützung im IE auch recht dürftig. Nichtsdestotrotz will ich euch die Vorzüge dieser Variante nicht vorenthalten.</p>
<h3>Beispiel</h3>
<p>Viele von euch kennen sicherlich das leidige Thema <em>Image Replacement</em>. Jens Meiert hat mal eine <a href="http://meiert.com/de/publications/articles/20050513/">Übersicht mit so ziemlich allen bis dato bekannten Methoden</a> auf- und vorgestellt (kann ich nur empfehlen mal zu lesen), mit denen man Text durch Bilder ersetzen kann. Seine, ich nenne es jetzt mal Favoriten sind demnach die..</p>
<blockquote><p>[...] Phark-Methode, bedingt durch ihre Einfachheit, und SIIR, bedingt durch ihr Potential [...]</p>
</blockquote>
<p>Da die Phark-Methode die einzige von beiden ist, die ausschließlich mit CSS zu realisieren ist, ist sie mein Favorit.</p>
<p>Wie ich <a href="http://twitter.com/#!/normansblog/status/18625884487">vor einer ganze Weile bei Twitter</a> schonmal schrieb, hat <code>color:transparent</code> im Prinzip einen richtig guten Anwendungsfall: Die prima Phark-Methode wird sauberer, indem text-indent wegfällt. Also lautet der Code für halbwegs gutes Image Replacement in guten Browsern ab jetzt so (zumindest bei mir):</p>
<h6>HTML</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">&lt;h1<span style="color: #00AA00;">&gt;</span>Firefox&lt;/h1<span style="color: #00AA00;">&gt;</span></pre></td></tr></table></div>

<h6>CSS</h6>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">h1 <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">firefox.png</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #993333;">transparent</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span><span style="color: #933;">150px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">150px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h6>Ergebnis</h6>
<h1 style="background:transparent url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat 0 0;color:transparent;height:150px;width:150px;">Firefox</h1>
<p>Von der Schrift &#8220;Firefox&#8221; ist nichts mehr zu sehen, außer man markiert die ganze Überschrift. Übrigens könnte man auch <code>rgba(0,0,0,0)</code> nehmen, quasi das Äquivalent zu <code>transparent</code>.</p>
<p>Der Fallback im IE ist die Farbe Schwarz, was aber Mozilla nicht davon abhält <a href="https://input.mozilla.com/de/happy">es einzusetzen</a>. Schönen dritten Dezember noch! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/tuerchen-3-color-transparent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Box-Shadow</title>
		<link>https://www.normansblog.de/css3-im-detail-box-shadow/</link>
		<comments>https://www.normansblog.de/css3-im-detail-box-shadow/#comments</comments>
		<pubDate>Sun, 19 Sep 2010 13:07:46 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2487</guid>
		<description><![CDATA[CSS3 im Detail: Box-Shadow - was für Text gilt, gilt natürlich auch für Elemente, die sich leicht mit einem Schatten von anderen Dingen abheben lassen.]]></description>
			<content:encoded><![CDATA[<p>Der neunte und damit letzte Teil der <em>CSS3 im Detail</em> &#8211; Reihe: Box-Shadow.</p>
<p><a href="http://www.normansblog.de/css3-im-detail-box-shadow/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Bax-Shadow wird dazu verwendet einem Element einen oder mehrere Schlagschatten zu verleihen. Allerdings verhält sich Box-Shadow etwas anders als das uns schon bekannte <a href="http://www.normansblog.de/css3-im-detail-text-shadow/">Text-Shadow</a>. In diesem Teil erfahrt ihr, wie man Box-Shadow richtig benutzt und was für ein Potential diese Property hat.</p>
<p><span id="more-2487"></span></p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a></p>
</blockquote>
<h3>Syntax</h3>
<p><a href="http://dev.w3.org/csswg/css3-background/#the-box-shadow">Box-Shadow</a> ist ähnlich aufgebaut wie Text-Shadow, unterscheidet sich aber in einigen wesentlichen Dingen. Allen voran können wir noch nicht auf browserspezifische Präfixe verzichten, d. h. dass Webkit-Browser und aktuelle Firefox-Versionen Box-Shadow noch mit ihren jeweiligen Kürzeln implementiert haben.</p>
<p>Der Code für einen normalen, cross-browser-kompatiblen Schlagschatten lautet daher wie folgt:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.boxshadow</span> <span style="color: #00AA00;">&#123;</span>
	-moz-box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox - alte Syntax */</span>
	-webkit-box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome - alte Syntax */</span>
	box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* alle neuen Browser, W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Wie bei <code>text-shadow</code> auch, stehen auch hier die Werte für Verschiebung entlang der <strong>X-Achse</strong>, Verschiebung entlang der <strong>Y-Achse</strong>, <strong>Schattengröße</strong> und <strong>Schattenfarbe</strong>. <em>(Da alle Browser, die Box-Shadow unterstützen auch den <a href="http://www.normansblog.de/css3-im-detail-rgba/">RGBa-Farbraum</a> darstellen können, bietet es sich an, diesen hier gleich mal zu verwenden.)</em></p>
<p>Obiger Code erzeugt dieses Bild:</p>
<div style="-moz-box-shadow:5px 5px 5px rgba(0,0,0,0.5);-webkit-box-shadow:5px 5px 5px rgba(0,0,0,0.5);box-shadow:5px 5px 5px rgba(0,0,0,0.5);padding:20px;margin:20px;font:40px/40px arial,sans-serif;text-align:center;background:#ccc;">Box mit Schlagschatten</div>
<p>Ebenso können wir bei <code>box-shadow</code> mehrere Schatten durch Komma getrennt angeben:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.moreboxshadows</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #808080; font-style: italic;">/*Lila, Gruen, Gelb*/</span>
	-moz-box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">15px</span> <span style="color: #933;">15px</span> <span style="color: #933;">10px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span><span style="color: #933;">10px</span> <span style="color: #933;">-10px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span><span style="color: #933;">-10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
	-webkit-box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">15px</span> <span style="color: #933;">15px</span> <span style="color: #933;">10px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span><span style="color: #933;">10px</span> <span style="color: #933;">-10px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span><span style="color: #933;">-10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
	box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">15px</span> <span style="color: #933;">15px</span> <span style="color: #933;">10px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span><span style="color: #933;">10px</span> <span style="color: #933;">-10px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">,</span><span style="color: #933;">-10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-box-shadow:15px 15px 10px rgba(255,0,255,0.5),10px -10px 5px rgba(0,255,0,0.5),-10px 10px 5px rgba(255,255,0,0.5);-webkit-box-shadow:15px 15px 10px rgba(255,0,255,0.5),10px -10px 5px rgba(0,255,0,0.5),-10px 10px 5px rgba(255,255,0,0.5);box-shadow:15px 15px 10px rgba(255,0,255,0.5),10px -10px 5px rgba(0,255,0,0.5),-10px 10px 5px rgba(255,255,0,0.5);padding:20px;margin:30px;font:40px/40px arial,sans-serif;text-align:center;">Mehrere bunte Schlagschatten</div>
<p>Man beachte, dass der Schatten, der an erster Stelle steht, auch &#8220;oben auf&#8221; liegt. Das heißt, er ist dem Betrachter am nächsten. In diesem Fall ist der gelbe Schatten ganz unten, darüber wird der grüne und zum Schluss der lila Schatten gezeichnet. Durch die RGBa-Farbwerte kommt es außerdem zur Mischung der Farben.</p>
<h3>Zwei weitere (optionale) Parameter</h3>
<p>Box-Shadow hat aber noch zwei weitere Parameter, der erste ist <strong>inset</strong>. Ist <code>inset</code> gesetzt, verläuft der Schatten nach innen statt nach außen. Ein Beispiel:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.innerboxshadow</span> <span style="color: #00AA00;">&#123;</span>
	-moz-box-shadow<span style="color: #00AA00;">:</span><span style="color: #993333;">inset</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
	-webkit-box-shadow<span style="color: #00AA00;">:</span><span style="color: #993333;">inset</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">10px</span> <span style="color: #cc00cc;">#000</span><span style="color: #00AA00;">;</span>
	box-shadow<span style="color: #00AA00;">:</span><span style="color: #993333;">inset</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">10px</span> <span style="color: #cc00cc;">#000</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-box-shadow:inset 0 0 10px #000;-webkit-box-shadow:inset 0 0 10px #000;box-shadow:inset 0 0 10px #000;border:2px solid #000;padding:20px;margin:20px;font:40px/40px arial,sans-serif;text-align:center;">inset-Shadow</div>
<p>Der andere Parameter ist ein vierter Pixel-Wert, der den Grad der <strong>Überfüllung</strong> des Schattens angibt &#8211; auch <em>negative Werte</em> sind erlaubt! Damit kann man den Schatten kräftiger/schwächer erscheinen lassen. Verdeutlicht nochmal am allerersten Beispiel:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.strongboxshadow</span> <span style="color: #00AA00;">&#123;</span>
	-moz-box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">10px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
	-webkit-box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">10px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
	box-shadow<span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">5px</span> <span style="color: #933;">10px</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-box-shadow:5px 5px 5px 10px rgba(0,0,0,0.5);-webkit-box-shadow:5px 5px 5px 10px rgba(0,0,0,0.5);box-shadow:5px 5px 5px 10px rgba(0,0,0,0.5);padding:20px;margin:20px;font:40px/40px arial,sans-serif;text-align:center;background:#ccc;">Box mit Schlagschatten</div>
<p>Durch alle sechs Parameter haben wir im Prinzip die gleichen Möglichkeiten zum Erstellen eines Schattens, die wir auch aus Photoshop kennen.</p>
<div id="attachment_2703" class="wp-caption aligncenter" style="width: 376px"><a href="http://www.normansblog.de/wp-content/uploads/2010/09/photoshop_schlagschatten.jpg"><img src="http://www.normansblog.de/wp-content/uploads/2010/09/photoshop_schlagschatten.jpg" alt="Schatten in Photoshop" title="photoshop_schlagschatten" width="356" height="191" class="size-full wp-image-2703" /></a><p class="wp-caption-text">Einstellungen Schlagschatten in Photoshop</p></div>
<p>Box-Shadow funktioniert übrigens ganz wunderbar im Zusammenspiel mit <a href="http://www.normansblog.de/css3-im-detail-border-radius/">Border-Radius</a> und es lassen sich zusammen mit weiteren CSS3 Properties allerhand schöne Dinge anstellen. Ein gutes Beispiel sind Buttons:</p>
<div style="background:-moz-linear-gradient(top ,#7CD357,#5CA33E);background:-ms-linear-gradient(top ,#7CD357,#5CA33E);background:-o-linear-gradient(top ,#7CD357,#5CA33E);background:-webkit-gradient(linear,left top,left bottom,from(#7CD357),to(#5CA33E));background-color:#5CA33E;border:1px solid #5B0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;-moz-box-shadow:0 1px 2px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.4);-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.4);box-shadow:0 1px 2px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.4);color:#fff;text-align:center;font:bold 16px/16px arial;text-shadow:0 1px 0 rgba(0,0,0,0.5);padding:10px 0;margin:20px 150px;">CSS3 Button</div>
<h3>Fazit</h3>
<p>Soweit zu den eher spektakulären visuellen Neuerungen, die mit CSS3 und den neuen Browserversionen Einzug halten werden. Einiges davon ist heute schon ohne große Bedenken einsetzbar und wird in Zukunft gehäuft anzutreffen sein. Box-Shadow ist da keine Ausnahme und meiner Meinung nach ein sehr Nützliches Tool, um schnell und unproblematisch diverse Schatteneffekte zu erzeugen. Das alles spart uns Zeit und wiedereinmal Bandbreite, denn wo sonst aufwändige Grafiken für Schatten erstellt werden mussten, kommt jetzt nur noch ein Dreizeiler zum Einsatz. Schöne neue Welt. Mit diesem Teil endet die <em>CSS3 im Detail</em>-Reihe, ich hoffe ihr konntet einiges mitnehmen und nutzt das Gelernte. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-box-shadow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Text-Shadow</title>
		<link>https://www.normansblog.de/css3-im-detail-text-shadow/</link>
		<comments>https://www.normansblog.de/css3-im-detail-text-shadow/#comments</comments>
		<pubDate>Sat, 01 May 2010 15:56:36 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2404</guid>
		<description><![CDATA[CSS3 im Detail: Text-Shadow - mit CSS3 kann jede Art von Text mit wunderschönen Schatteneffekten hervorgehoben werden, auch mehrere gleichzeitig sind möglich.]]></description>
			<content:encoded><![CDATA[<p>Teil 8 der <em>CSS3 im Detail</em> &#8211; Reihe, diesmal geht&#8217;s um Text-Shadow.</p>
<p><a href="http://www.normansblog.de/css3-im-detail-text-shadow/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Wie der Name schon vermuten lässt, wird es möglich sein, bzw. ist es schon möglich, beliebigen Text einen Schatten zu verleihen. Das hat natürlich hauptsächlich ästhetische Vorzüge, kann aber unter Umständen sogar die Lesbarkeit verbessern oder zumindest dem Benutzer helfen, bestimmte Texte eher wahrzunehmen. Text-Shadow ist keinesfalls mehr eine Technik von morgen, im Gegenteil, schon heute trifft man (meist unbewusst) schattierten Text auf vielen Webseiten an.</p>
<p><span id="more-2404"></span></p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a style="opacity:0.3;" href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a><br/><small>(IE ab Version 10)</small></p>
</blockquote>
<h3>Syntax</h3>
<p><a href="http://www.w3.org/TR/css3-text/#text-shadow">Text-Shadow</a> ist ganz simpel und kommt sogar schon ohne browserspezifische Präfixe aus. D.h. alle oben genannten Browser unterstützen <code>text-shadow</code> in seiner finalen Form.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.textshadow</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">text-shadow</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">3px</span> <span style="color: #cc00cc;">#666</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Wie wir sehen können, hat <code>text-shadow</code> vier Parameter:</p>
<ol>
<li><strong>X-Abstand:</strong> Dieser Längenwert gibt an, wie weit der Schatten entlang der X-Achse verschoben wird (nach links/rechts versetzt). Negative Werte sind erlaubt.</li>
<li><strong>Y-Abstand:</strong> Dieser Längenwert gibt an, wie weit der Schatten entlang der Y-Achse verschoben wird (nach unten/oben versetzt). Negative Werte sind erlaubt.</li>
<li><strong>Größe:</strong> Ein weiterer Längenwert, der angibt, wie weit sich der Schatten ausbreiten soll. Ein Wert von 0 erzeugt einen sehr harten Schatten, je höher der Wert, desto unschärfer wird er.</li>
<li><strong>Farbe:</strong> Hier kann man jeden in CSS erlaubten Farbwert einsetzen (auch <a href="http://www.normansblog.de/css3-im-detail-rgba/">RGBa</a>!).</li>
</ol>
<p>Obiger Code erzeugt dieses Bild:</p>
<div style="text-shadow:10px 10px 3px #666;padding:20px;margin:20px;font:40px/40px arial,sans-serif;text-align:center;">Text mit Schatten</div>
<p>Man kann das Ganze aber auch noch weiter treiben und <em>mehrere Schatten</em> erzeugen. Dazu werden hinter dem ersten Schatten einfach noch weitere deklariert und mit Komma voneinander getrennt.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.moreshadows</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">text-shadow</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc00cc;">#aaa</span><span style="color: #00AA00;">,</span><span style="color: #933;">-10px</span> <span style="color: #933;">-10px</span> <span style="color: #933;">3px</span> <span style="color: #cc00cc;">#f00</span><span style="color: #00AA00;">,</span><span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">10px</span> <span style="color: #cc00cc;">#00f</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="text-shadow:10px 10px 0 #aaa,-10px -10px 3px #f00,0 0 10px #00f;padding:20px;margin:20px;font:40px/40px arial,sans-serif;text-align:center;">Verrückter Text</div>
<p>Ihr seht, damit kann man auch ne ganze Menge dummes Zeug fabrizieren aber dazu ist Text-Shadow nicht gedacht. Hier mal ein paar schöne Beispiele, wie man Text-Shadow richtig einsetzen kann.</p>
<h3>a) Gravur-Effekt 1</h3>
<div style="text-shadow:0 1px 0 #fff;padding:20px;margin:20px;background-color:#ddd;">
<p>Dezent hervorgehobener Text.</p>
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</p>
</div>
<h3>b) Gravur-Effekt 2</h3>
<div style="background-color:#ccc;color:#ddd;font:bold 40px/40px arial;margin:20px;padding:10px;text-shadow:-1px -1px 0 #888,1px 1px 0 #fff">Überschrift</div>
<h3>c) Schlagschatten</h3>
<div style="background-color:#E11926;color:#F3D052;font:50px/50px 'Rockwell Extra Bold',impact;letter-spacing:-2px;margin:20px;padding:20px;text-shadow:0 2px 2px black;text-align:center;text-transform:uppercase;">Pulp Fiction</div>
<h3>Fazit</h3>
<p>Schaut euch eure Lieblingsseiten im Internet mal genauer an. Ich wette, da gibt es einige, die bereits Text-Shadow verwenden. Auch ich nutze es auf diesem Blog. Der Text in der Sidebar hat einen diffusen Schatten, damit er leichter auf dem dunklen Hintergrund zu lesen ist, die Artikelüberschriften haben einen schwachen Schlagschatten und die <em>Ähnliche Artikel</em>-Box benutzt den Gravur-Effekt 1. Text Shadow ist für mich ein nützliches Werkzeug geworden um Text besser und schöner hervorzuheben. Weitere Pluspunkte sammelt Text-Shadow mit der breiten Unterstützung an der Browser-Front und der schlanken Syntax. Viel Spaß! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-text-shadow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Columns</title>
		<link>https://www.normansblog.de/css3-im-detail-columns/</link>
		<comments>https://www.normansblog.de/css3-im-detail-columns/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 00:19:12 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2373</guid>
		<description><![CDATA[CSS3 im Detail: Columns - mit minimalem Aufwand kann langer Text in mehrere kleine Textspalten aufgeteilt werden, den Leser freuts.]]></description>
			<content:encoded><![CDATA[<p>Teil 7 der <em>CSS3 im Detail</em> &#8211; Reihe beschäftigt sich mit Columns.</p>
<p><a href="http://www.normansblog.de/css3-im-detail-columns/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Columns oder zu deutsch <em>Spalten</em> gibt es schon eine Ewigkeit. Uns allen sind sie aus den klassischen Printerzeugnissen wie Zeitungen und Magazinen <a href="http://de.wikipedia.org/wiki/Spaltensatz">bekannt</a>. Prinzipiell machen sie nichts anderes als Text in schmalere Spalten aufzuteilen.</p>
<blockquote><p>Der Vorteil des mehrspaltigen Satzes als Textgestaltung liegt darin, dass insbesondere bei großformatigem Papier die Zeilenlänge kurz gehalten wird [...]</p>
</blockquote>
<p><span id="more-2373"></span></p>
<p>&#8230; und damit die Lesbarkeit des Textes erhöht wird. Durch CSS3 haben Webdesigner nun die Möglichkeit, diese Art des Satzes auch in Webseiten anzuwenden.</p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a style="opacity:0.3;" href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a><br/><small>(IE ab Version 10)</small></p>
</blockquote>
<h3>Syntax</h3>
<p>Columns haben mehrere Eigenschaften, die wir uns im Einzelnen anschauen werden. Gecko- und Webkitbrowser haben die Technik wieder mit ihren Präfixen implementiert.</p>
<h3>column-count</h3>
<p><code>column-count</code> gibt die Anzahl der Spalten an, in die der Text aufgeteilt werden soll.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.columns</span> <span style="color: #00AA00;">&#123;</span>
	-moz-column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
	-webkit-column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
	column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera, IE, W3C Standard */</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Folgender Fließtext wird durch obigen Code in zwei Spalten aufgeteilt. Die Breite einer Spalte wird immer aus der Breite des Elternelements durch die Anzahl der Spalten berechnet.</p>
<div style="-moz-column-count:2;-webkit-column-count:2;column-count:2;border:4px solid #adf;padding:10px;margin-bottom:10px;">
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
<p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>
</div>
<h3>column-width</h3>
<p>Anstatt eine feste Anzahl Spalten anzugeben, kann man auch eine ungefähre Breite einer Spalte deklarieren. Dabei wird die Spaltenanzahl automatisch errechnet. Ihr versteht sicherlich, dass es wenig Sinn macht <code>column-count</code> und <code>column-width</code> gleichzeitig zu verwenden..</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.columns</span> <span style="color: #00AA00;">&#123;</span>
	-moz-column-width<span style="color: #00AA00;">:</span><span style="color: #933;">100px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
	-webkit-column-width<span style="color: #00AA00;">:</span><span style="color: #933;">100px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
	column-width<span style="color: #00AA00;">:</span><span style="color: #933;">100px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera, IE, W3C Standard */</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-column-width:100px;-webkit-column-width:100px;column-width:100px;border:4px solid #adf;padding:10px;margin-bottom:10px;">
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
<p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>
</div>
<h3>column-gap</h3>
<p>Das ist natürlich noch nicht alles, mit <code>column-gap</code> könnt ihr den Abstand zwischen den Spalten festlegen..</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.columns</span> <span style="color: #00AA00;">&#123;</span>
	-moz-column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
	-moz-column-gap<span style="color: #00AA00;">:</span><span style="color: #933;">7em</span><span style="color: #00AA00;">;</span>
	-webkit-column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
	-webkit-column-gap<span style="color: #00AA00;">:</span><span style="color: #933;">7em</span><span style="color: #00AA00;">;</span>
	column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera, IE, W3C Standard */</span>
	column-gap<span style="color: #00AA00;">:</span><span style="color: #933;">7em</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-column-count:2;-moz-column-gap:7em;-webkit-column-count:2;-webkit-column-gap:7em;column-count:2;column-gap:7em;border:4px solid #adf;padding:10px;margin-bottom:10px;">
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
<p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>
</div>
<h3>column-rule</h3>
<p>.. und mit <code>column-rule</code> zieht ihr zwischen den Spalten eine Linie. Der Befehl hat genau wie <code>border</code> folgende drei Parameter:</p>
<ol>
<li><em>column-rule-width</em>, die Breite der Linie</li>
<li><em>column-rule-style</em>, der Stil der Linie (solid, dashed, dotted, etc.)</li>
<li><em>column-rule-color</em>, die Farbe der Linie</li>
</ol>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.columns</span> <span style="color: #00AA00;">&#123;</span>
	-moz-column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
	-moz-column-rule<span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">dashed</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	-webkit-column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
	-webkit-column-rule<span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">dashed</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	column-count<span style="color: #00AA00;">:</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera, IE, W3C Standard */</span>
	column-rule<span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">dashed</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">4px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-column-count:2;-moz-column-rule:4px dashed #adf;-webkit-column-count:2;-webkit-column-rule:4px dashed #adf;column-count:2;column-rule:4px dashed #adf;border:4px solid #adf;padding:10px;margin-bottom:10px;">
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
<p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>
</div>
<h3>Verfeinerung</h3>
<p>Nochmals verstärkt wird der Effekt, wenn man zusätzlich <code>text-align:justify</code> anwendet.</p>
<div style="-moz-column-count:2;-moz-column-gap:3em;-webkit-column-count:2;-webkit-column-gap:3em;column-count:2;column-gap:3em;padding:10px;margin-bottom:10px;text-align:justify;border:4px solid #adf;">
<h4>Justifiy Me!</h4>
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
<p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>
</div>
<h3>Fazit</h3>
<p>So, damit wisst ihr nun alles über Columns und wie man sie verwendet. Besonders schön an ihnen finde ich die Tatsache, dass Browser, die die Technik noch nicht beherrschen, einfach auf die &#8220;normale&#8221; Darstellungsweise zurückfallen (Paragraphen untereinander statt nebeneinander). Ein sinnvolles Einsatzgebiet sind natürlich News-Portale, die sehr breit sind. Auf solchen Seiten lohnt es sich  lange Artikel in kürzere Spalten zu teilen um die Lesbarkeit zu verbessern. Ich wünsche wie immer viel Spaß! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-columns/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Border-Image</title>
		<link>https://www.normansblog.de/css3-im-detail-border-image/</link>
		<comments>https://www.normansblog.de/css3-im-detail-border-image/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 22:33:41 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2305</guid>
		<description><![CDATA[CSS3 im Detail: Border-Image - skalierbare Rahmengrafiken können jetzt leicht angefertigt und eingebaut werden, das spart http-Requests und Nerven.]]></description>
			<content:encoded><![CDATA[<p>Ich glaub das wird kein toller Artikel aber fangen wir einfach an.. Teil 6 der <em>CSS3 im Detail</em> &#8211; Reihe: Border-Image.</p>
<p><a href="http://www.normansblog.de/css3-im-detail-border-image/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Bei dieser Technik geht es prinzipiell darum eine Grafik als <code>border</code> für jedes beliebige Element zu benutzen. Was das soll? Nun ja, manche Leute mögen es bunt und lassen sich ausgefallene Rahmen einfallen. Damit man nicht mehrere Hintergrundbilder deswegen zurecht schneiden muss, hält nun mit CSS3 <code>border-image</code> Einzug.</p>
<p><span id="more-2305"></span></p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a></p>
</blockquote>
<h3>Vorbereitung</h3>
<p>Die Basis bildet natürlich eine Grafik. Diese muss so aufgebaut sein, dass sie aus neun Bereichen besteht: vier Ecken, vier Kanten und der Mitte, hier dargestellt durch Pikachus. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png"><img src="http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png" alt="" title="pikachu" width="123" height="147" class="aligncenter size-full wp-image-2310" /></a></p>
<h3>Syntax</h3>
<p>Kommen wir also zur Sache, wie schon aus vorhergehenden Teilen bekannt, haben die Browser unterschiedliche Präfixe, so auch bei <code>border-image</code>.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.borderimage</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border-style</span><span style="color: #00AA00;">:</span><span style="color: #993333;">solid</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">border-width</span><span style="color: #00AA00;">:</span><span style="color: #933;">49px</span> <span style="color: #933;">41px</span><span style="color: #00AA00;">;</span>
	-moz-border-image<span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">pikachu.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #cc66cc;">49</span> <span style="color: #cc66cc;">41</span> <span style="color: #993333;">repeat</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
	-webkit-border-image<span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">pikachu.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #cc66cc;">49</span> <span style="color: #cc66cc;">41</span> <span style="color: #993333;">repeat</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
	-o-border-image<span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">pikachu.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #cc66cc;">49</span> <span style="color: #cc66cc;">41</span> <span style="color: #993333;">repeat</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera */</span>
	border-image<span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">pikachu.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #cc66cc;">49</span> <span style="color: #cc66cc;">41</span> <span style="color: #993333;">repeat</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Wichtig ist, dass <code>border-style</code> einen wert ungleich <code>none</code> hat und mit <code>border-width</code> könnt ihr die Breite des Rahmes bestimmen, in meinem Fall sind die Werte die Maße eines Pikachus. Damit sollten wir ungefähr so eine Box bekommen:</p>
<div style="border-style:solid;border-width:49px 41px;-moz-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 repeat;-webkit-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 repeat;-o-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 repeat;border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 repeat;border-width:49px 41px;line-height:100px;width:255px;margin:20px auto;text-align:center;">Div mit Pikachu-Border <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </div>
<p>Kurze Erklärung, welcher Teil hier was bewirkt.. mit der URL gibt man natürlich den Pfad zum Bild an. Danach folgen die beiden Werte für die Rahmenbreite. Hier können 1-4 Werte stehen, ein Wert für jede Seite. In diesem Fall ist ein Pikachu 41 Pixel breit und 49 Pixel hoch. Als letztes folgt noch ein Schlüsselwort, von denen es genau drei Stück zur Auswahl gibt:</p>
<ol>
<li><em>repeat</em> &#8211; das Bild wird einfach wiederholt</li>
<li><em>stretch</em> &#8211; die Kantenstücke werden auf die volle Breite bzw. Höhe gestreckt</li>
<li><em>round</em> &#8211; die Kantenstücke werden etwas verzogen damit kein Pikachu abgeschnitten werden muss</li>
</ol>
<p>Obiges Beispiel benutzt <strong>repeat</strong>, hier nun eins mit <strong>round</strong>&#8230;</p>
<div style="border-style:solid;border-width:49px 41px;-moz-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 round;-webkit-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 round;-o-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 round;border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 round;border-width:49px 41px;line-height:100px;width:255px;margin:20px auto;text-align:center;">Div mit rounded Pikachu-Border</div>
<p>(Webkit-Browser scheinen mit <em>round</em> im Moment wohl ein Problem zu haben.)</p>
<p>&#8230; und eins mit <strong>stretch</strong>&#8230;</p>
<div style="border-style:solid;border-width:49px 41px;-moz-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 stretch;-webkit-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 stretch;-o-border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 stretch;border-image:url(http://www.normansblog.de/wp-content/uploads/2010/04/pikachu.png) 49 41 stretch;border-width:49px 41px;line-height:100px;width:255px;margin:20px auto;text-align:center;">Div mit stretched Pikachu-Border</div>
<h3>Fazit</h3>
<p>Jo, so geht das. Ich geb zu, das Pikachu-Beispiel ist vielleicht nicht gerade realistisch, zeigt aber was für einen Unfug man mit der neuen Technik treiben kann. Border-Image ist keine große Revolution, vereinfacht aber doch einige Dinge und vermindert auf jeden Fall die Anzahl an Grafiken, die man für aufwendige Rahmen bräuchte. Ich wünsch euch viel Spaß beim Ausprobieren. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-border-image/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Internet Explorer 9, eh?</title>
		<link>https://www.normansblog.de/internet-explorer-9-eh/</link>
		<comments>https://www.normansblog.de/internet-explorer-9-eh/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 19:09:58 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2193</guid>
		<description><![CDATA[Die &#187;Windows Internet Explorer Platform Preview&#171; ist da! Das ist sie also, die erste offizielle Vorschau auf den IE9. Microsoft hat gestern oder so das Programm zum Download freigegeben und erhofft sich damit viel Feedback, um das Produkt weiter zu verbessern &#8211; man hat also dazugelernt. Mit dem neuen Internet Explorer hat Microsoft etliches vor, [...]]]></description>
			<content:encoded><![CDATA[<p>Die &raquo;Windows Internet Explorer Platform Preview&laquo; ist da!</p>
<div id="attachment_2195" class="wp-caption alignright" style="width: 165px"><a href="http://www.normansblog.de/internet-explorer-9-eh/"><img src="http://www.normansblog.de/wp-content/uploads/2010/03/ie9_preview_logo.jpg" alt="IE9 Preview" title="ie9_preview_logo" width="145" height="145" class="size-full wp-image-2195" /></a><p class="wp-caption-text">IE9 Preview</p></div>
<p>Das ist sie also, die erste offizielle Vorschau auf den IE9. Microsoft hat gestern oder so das <a href="http://ie.microsoft.com/testdrive/">Programm zum Download</a> freigegeben und erhofft sich damit <a href="http://blogs.msdn.com/ie/">viel Feedback</a>, um das Produkt weiter zu verbessern &#8211; man hat also dazugelernt.</p>
<p>Mit dem neuen Internet Explorer hat Microsoft etliches vor, endlich will man zu den anderen Browsern aufschließen, sie sogar teilweise überholen. Warum auch nicht, bis der IE9 erscheint, werden sich auch die anderen Browser verbessert haben. Um erste Erfolge vorzuweisen, hat man gleich ein paar Statistiken und Demos auf die Startseite gepackt. Diese sind natürlich mit Vorsicht zu genießen aber im Großen und Ganzen kann man davon ausgehen, dass der Internet Explorer um einiges schneller geworden ist &#8211; besonders beim Verarbeiten von JavaScript und im Grafik-Rendering.</p>
<p><span id="more-2193"></span></p>
<h3>Gute Neuigkeiten</h3>
<p>Nennen wir doch mal ein paar Fakten:</p>
<ol>
<li>besteht Acid2</li>
<li>55 Punkte in Acid3</li>
<li>alle CSS3 Selectoren werden unterstützt</li>
<li>Boder-Radius und RGBa wird unterstützt</li>
<li>Hardwarebeschleunigung für 2D Animationen</li>
<li>schnelles Javascript</li>
<li>ein bisschen HTML5 Support</li>
<li>Unterstützung für SVG</li>
</ol>
<p>Das klingt zugegeben alles sehr verlockend und ich freue mich über die CSS3 Unterstützung, je mehr davon im endgültigen Code enthalten ist, desto besser. Hoffen wir, dass die Auflistung nicht die endgültige Feature-List bleiben wird und noch einige Dinge wie z.B. Box-Shadow, Text-Shadow und <code>video</code>-Support in der fertigen Version vorfinden werden.</p>
<h3>Qualität der Preview Version</h3>
<div id="attachment_2198" class="wp-caption aligncenter" style="width: 520px"><a href="http://www.normansblog.de/wp-content/uploads/2010/03/ie9_preview_window.jpg"><img src="http://www.normansblog.de/wp-content/uploads/2010/03/ie9_preview_window-500x360.jpg" alt="Internet Explorer 9" title="ie9_preview_window" width="500" height="360" class="size-large wp-image-2198" /></a><p class="wp-caption-text">Die (nicht vorhandene) GUI des IE9.</p></div>
<p>Ich weiß, man sollte an eine frühe Alpha keine hohen Erwartungen stellen aber etwas mehr Mühe hätten sich die Typen aus Redmond schon geben können.. keine Adressleiste, keine Tabs.. Hallo?! Naja vielleicht bin ich auch nur von den Firefox Alphas verwöhnt aber so kann man den IE sicherlich nicht auf seine Alltagstauglichkeit hin testen.</p>
<p>Besonders nervig ist der Wegfall der Adresszeile, will man die Seite wechseln muss man über <code>Page->Open</code> ein Fenster öffnen, in dem man die URL eintragen kann &#8211; überflüssig zu sagen, dass das widerlichst und umständlich ist.</p>
<div id="attachment_2205" class="wp-caption aligncenter" style="width: 419px"><a href="http://www.normansblog.de/wp-content/uploads/2010/03/ie9_type_url.jpg"><img src="http://www.normansblog.de/wp-content/uploads/2010/03/ie9_type_url.jpg" alt="Adresszeile" title="ie9_type_url" width="399" height="179" class="size-full wp-image-2205" /></a><p class="wp-caption-text">Adresszeile mal anders..</p></div>
<p>Außer dem Aussehen ist mir das Textrendering negativ aufgefallen. Es erinnert mich stark an das von Safari 3: Die Schrift sieht etwas matschig und unleserlich aus. Ich habe keine Ahnung, ob das so gewollt ist oder ob es nur ein böser Nebeneffekt der Hardwareunterstützung ist. Mal sehen, wie sich das weiterentwickelt.</p>
<h3>Fazit</h3>
<p>Alles ganz lustig und prima aber es bedarf doch noch etwas mehr als <em>das</em>, um bei den großen Jungs mitspielen zu können. Microsoft scheint mir aber auf dem richtigen Weg zu sein. Moderne Standards werden eingebaut und die Schnelligkeit wurde stark verbessert. Das ist aber nicht alles, Sicherheit, Privatsphäre und gute Bedienbarkeit sind mindestens genauso wichtig. Mal sehen, welche Antwort der IE9 zum Thema Erweiterungen parat haben wird. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Auf jeden Fall ist es ein Schritt in die richtige Richtung. Ich denke auch, dass Mircosoft noch viel Zeit in seinen neuen Browser investieren wird und er dadurch ein würdiger Nachfolger zum bereits recht guten IE8 darstellen kann. Wir werden sehen, was die Zeit bringt. Bis dahin viel Spaß mit der Vorabversion. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/internet-explorer-9-eh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Border-Radius</title>
		<link>https://www.normansblog.de/css3-im-detail-border-radius/</link>
		<comments>https://www.normansblog.de/css3-im-detail-border-radius/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 14:20:12 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2140</guid>
		<description><![CDATA[CSS3 im Detail: Border Radius - Runde Ecken können jetzt per CSS3 jedem beliebigem Element verpasst werden, ohne Grafiken, ohne Extra-Markup.]]></description>
			<content:encoded><![CDATA[<p>Runde fünf von <em>CSS3 im Detail</em> &#8211; Border-Radius.</p>
<p><a href="http://www.normansblog.de/css3-im-detail-border-radius/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Entschuldigt die enorme Verzögerung aber ich hatte bisschen Prüfungsstress und viel Arbeit, sodass mir dann die Motivation gefehlt hat noch diese Artikel zu schreiben. Sei&#8217;s drum, heute gehts um eine nützliche Technik, mit der man runde Ecken erstellen kann. Früher musste man immer mindestens zwei Grafiken erstellen, um einer Box runde Ecken zu verpassen &#8211; das wird sich jetzt ändern. <a href="http://www.w3.org/TR/css3-background/#the-border-radius">Border-Radius</a> wird euch gefallen, es erspart einem sehr viel Arbeit und wird von den meisten Browsern schon ganz gut unterstützt.</p>
<p><span id="more-2140"></span></p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a></p>
</blockquote>
<h3>Einsatzgebiete</h3>
<p>Sogenannte &#8220;runde Ecken&#8221; spielen in heutiger Zeit eine immer größere Rolle, alle modernen UIs benutzen sie an nahezu allen Elementen. Manchmal recht großzügig, dann wieder nur mit der Lupe zu erkennen, ein gutes Beispiel sind aktuelle Windows Versionen (Vista oder 7), die extrem viel Aufwand in diese Richtung betreiben. Folgender Screen soll das einmal illustrieren..</p>
<div id="attachment_2156" class="wp-caption aligncenter" style="width: 501px"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/win7_window.jpg" alt="Fenster in Windows 7" title="win7_window" width="481" height="243" class="size-full wp-image-2156" /><p class="wp-caption-text">Ein Fenster in Windows 7 hat viele runde Ecken: der Fensterrahmen, die Buttons oben rechts, der Rahmen um die markierte Festplatte, etc.</p></div>
<p>Warum? Weil runde Ecken angenehmer anzusehen sind und das ganze Design etwas auflockern. Fenster mit richtigen Ecken, wie bei Windows 2000 und davor, wirken heutzutage altbacken und hässlich.</p>
<h3>Syntax</h3>
<p>Border-Radius wird von den Browsern durch unterschiedliche Präfixe unterstützt.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.rounded</span> <span style="color: #00AA00;">&#123;</span>
-moz-border-radius<span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox - alte Syntax */</span>
-webkit-border-radius<span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome - alte Syntax */</span>
<span style="color: #000000; font-weight: bold;">border-radius</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* alle neuen Browser, W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Diese Anweisungen bewirken, dass die Ecken eines <code>divs</code> mit der Klasse <em>rounded</em> abgerundet werden. Folgendes Beispiel, hat zur Verdeutlichung der Rundungen zusätzlich eine Schwarze Border bekommen.</p>
<div style="-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;margin:20px;border:2px solid #222;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;"></div>
<p><code>border-radius</code> kann aber nicht nur mit einem Wert gesteuert werden. Maximal sind 4 Werte möglich, wobei jeder davon ein Ecke kontrolliert, im Uhrzeigersinn beginnend mit der links oben. Folgender Code bewirkt z.B., dass nur die beiden Ecken oben abgerundet werden, die unten bleiben eckig.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.rounded_up</span> <span style="color: #00AA00;">&#123;</span>
-moz-border-radius<span style="color: #00AA00;">:</span><span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox - alte Syntax */</span>
-webkit-border-radius<span style="color: #00AA00;">:</span><span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome - alte Syntax */</span>
<span style="color: #000000; font-weight: bold;">border-radius</span><span style="color: #00AA00;">:</span><span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* alle neuen Browser, W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="-moz-border-radius:10px 10px 0 0;-webkit-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;margin:20px;border:2px solid #222;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;"></div>
<p>Natürlich kann man auch &#8220;unterschiedlich runde Ecken&#8221; machen, indem man einfach verschiedene Werte benutzt, hier gilt: <em>Probieren geht über Studieren</em>.</p>
<blockquote class="warning"><p><a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignright size-full wp-image-1949" /></a>Safari spackt hier noch etwas rum. Es kommt mit 4 Werten nicht klar und ignoriert deswegen den Befehl. Da es aber die selbe Engine wie Chrome nutzt, wird sich hier demnächst bestimmt eine Besserung einstellen. Bis es soweit ist, kann man sich diesen Artikel auf <a href="http://www.css3.info/preview/rounded-border/">CSS3.info</a> mal durchlesen.</p>
<p><strong>Update:</strong> Mit Safari 5 sollte alles funktionieren.</p>
</blockquote>
<h3>Fazit</h3>
<p>Ein wahnsinnig mächtiger Befehl, Border-Radius lässt uns schnell und komfortabel Rundungen an allen Elementen erstellen. Das lästige Zuschneiden von Grafiken und der damit verbundene Aufwand über CSS-Formatierungen (Stichwort: <a href="http://www.jankoatwarpspeed.com/post/2008/04/30/make-fancy-buttons-using-css-sliding-doors-technique.aspx">Sliding Doors</a>) entfällt vollständig. Das spart mal wieder jede Menge Traffic und Zeit beim Aufbau einer Seite. Viel Spaß damit! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-border-radius/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Background Gradients</title>
		<link>https://www.normansblog.de/css3-im-detail-background-gradients/</link>
		<comments>https://www.normansblog.de/css3-im-detail-background-gradients/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 01:33:46 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2080</guid>
		<description><![CDATA[CSS3 im Detail: Background Gradients - damit kann man jede Art von Verläufen darstellen, frei skalierbar und ganz ohne Grafiken.]]></description>
			<content:encoded><![CDATA[<p>Etwas verspätet nun auch der vierte Teil von <em>CSS3 im Detail</em>!</p>
<p><a href="http://www.normansblog.de/css3-im-detail-background-gradients/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Dieses mal erwarten euch lineare und radiale Farbverläufe (engl. gradients) in CSS, mit deren Hilfe wir einige ganz hübsche Effekte erzielen können. Benutzt werden sie überall dort, wo wir eine <code>url()</code> angeben können. In den folgenden Beispielen werden wir sie aber im Zusammenhang mit <code>background</code> verwenden, indem wir statt einem Hintergrundbild den gewünschten Verlauf angeben.</p>
<p><span id="more-2080"></span></p>
<p style="border-radius:5px;background:#c00;color:white;padding:0 5px">Achtung, ich verwende im Artikel noch die alte Syntax. Sobald ich Zeit habe, werde ich den Text updaten. Bis dahin lest bitte folgende <a style="color:#fff" href="https://developer.mozilla.org/en-US/docs/CSS/linear-gradient">Dokumentation zu Farbverläufen (MDN)</a>.</p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a style="opacity:0.3;" href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a><br/><small>(IE ab Version 10)</small></p>
</blockquote>
<h3>Syntax</h3>
<p>Prinzipiell muss man zwischen zwei Arten von Farbverläufen unterscheiden:</p>
<ol>
<li>Lineare Verläufe, geradliniger Farbverlauf von zwei oder mehr Farben</li>
<li>Radiale Verläufe, kreisförmiger Farbverlauf von zwei oder mehr Farben</li>
</ol>
<h3>Linearer Verlauf</h3>
<p>Zuerst einmal ein einfacher, linearer Verlauf:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.lin_grad</span> <span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-moz-linear-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-webkit-linear-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-o-linear-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-ms-linear-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* IE */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:linear-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p><strong>Anmerkung:</strong> Das Firefox Logo im Vordergrund wird als zusätzlicher Background eingebunden, <a href="http://www.normansblog.de/css3-im-detail-multiple-backgrounds/">siehe Teil 2</a>.</p>
<div style="margin:20px;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-moz-linear-gradient(top, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-webkit-linear-gradient(top, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-o-linear-gradient(top, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-ms-linear-gradient(top, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,linear-gradient(top, #fff, #adf);"></div>
<p>Prinzipiell haben die Verlauf-Funktionen 4 Argumente um einen Farbverlauf näher zu beschreiben. Die Argumente sind einmal <code>linear</code> oder <code>radial</code>, welche angeben um welchen Typ von Verlauf es sich handelt. Firefox bietet 2 separate Funktionen dafür an, Safari/Chrome nutzen eine Funktion für beide Typen. Es folgen dann der Start- bzw. Endpunkt und somit die Richtung des Verlaufs. Zu guter Letzt werden noch die Farbcodes für Start- und Endfarbe benötigt.</p>
<p>Bei den Webkit-Browsern erscheint mir dir Syntax insgesamt etwas komplizierter. Also es kann sein, dass es auch kürzer geht aber ich bin ehrlich gesagt froh, dass ich überhaupt einen funktionierenden Verlauf mit Safari hinbekommen habe. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Update 1:</strong> Mittlerweile hat Webkit die Syntax an die von Gecko angepasst, auch Opera unterstützt ab Version 11.10 lineare Verläufe mit einem eigenen Prefix.</p>
<p><strong>Update 2:</strong> Die <abbr title="13.04.2011">heute</abbr> herausgegebene Platform Preview des Internet Explorer 10 unterstützt beide Arten von Verläufen.</p>
<p><strong>Update 3:</strong> Opera <del datetime="2011-12-06T20:05:59+00:00">12</del> <ins datetime="2011-12-06T20:05:59+00:00">11.6</ins> unterstützt radiale Verläufe per Prefix.</p>
<h3>Radialer Verlauf</h3>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.rad_grad</span> <span style="color: #00AA00;">&#123;</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-moz-radial-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #993333;">center</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-webkit-radial-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #993333;">center</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-o-radial-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #993333;">center</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:-ms-radial-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #993333;">center</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* IE */</span>
<span style="color: #000000; font-weight: bold;">background</span><span style="color: #3333ff;">:radial-</span>gradient<span style="color: #00AA00;">&#40;</span><span style="color: #993333;">center</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#fff</span><span style="color: #00AA00;">,</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="margin:20px;height:400px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-moz-radial-gradient(center, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-webkit-radial-gradient(center, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-o-radial-gradient(center, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,-ms-radial-gradient(center, #fff, #adf);background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center,radial-gradient(center, #fff, #adf);"></div>
<p>Um einen radialen Verlauf zu bekommen, gehen wir genauso vor wie oben. Im Firefox ist es ganz einfach: Startpunkt, Startfarbe, Endfarbe. Webkit bereitet mir etwas Kopfzerbrechen.. soweit ich das verstanden habe, muss man hier zwei Kreise angeben mit jeweils einem Startpunkt und den Radius des Kreises, sowie Start- und Endfarbe.</p>
<p>Ich will das jetzt mal nicht weiter vertiefen und euch verwirren. Am besten ihr lest euch mal die Spezifikationen durch. Zwei Artikel im <abbr title="Mozilla Developer Network">MDN</abbr> erklären sowohl <a href="https://developer.mozilla.org/en/CSS/linear-gradient">linear-gradient</a> als auch <a href="https://developer.mozilla.org/en/CSS/radial-gradient">radial-gradient</a> (beides auf Englisch).</p>
<h3>Fazit</h3>
<p>Background Gradients könnten in Zukunft recht interessant werden. Lineare Verläufe werden heutzutage bereits auf fast allen Webseiten eingesetzt (Hintergründe, Buttons). Radiale Verläufe machen sich sicherlich gut, um bestimmte Sachen zu highlighten. Der größte Vorteil ist, dass somit keine Grafiken mehr gebraucht werden, die sinnlos Zeit und Bandbreite vergeuden. Die Syntax ist zwar nicht die einfachste aber mit etwas Geduld und Übung lernt man sie schon kennen. Ich hoffe, dass Webkit hier trotzdem nochmal nachbessert und die Funktion irgendwie vereinfacht. Mit Firefox hingegen kommt man recht schnell ans Ziel.</p>
<p>Lange Rede, kurzer Sinn: Probiert euch am besten selbst mal an den Verläufen, kombiniert eventuell das Ganze dann noch mit mehreren Backgrounds und/oder Background-Size und ihr werdet auf einige lustige Ergebnisse stoßen. Viel Spaß. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-background-gradients/feed/</wfw:commentRss>
		<slash:comments>36</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Background-Size</title>
		<link>https://www.normansblog.de/css3-im-detail-background-size/</link>
		<comments>https://www.normansblog.de/css3-im-detail-background-size/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 00:00:47 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2023</guid>
		<description><![CDATA[CSS3 im Detail: Background-Size - mit CSS3 Hintergrundgrafiken vergrößern, verkleinern, strecken, zerren oder einfach nur füllend auf den Bildschirm bringen.]]></description>
			<content:encoded><![CDATA[<p>Die <em>CSS3 im Detail</em>-Reihe geht in die dritte Runde!</p>
<p><a href="http://www.normansblog.de/css3-im-detail-background-size/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Im dritten Teil werden wir eine weitere Möglichkeit unter die Lupe nehmen, die es uns erlaubt <code>background</code> noch weiter zu manipulieren. Dabei soll es uns um das Ändern der Größe des Hintergrundes gehen. Kurz gesagt, wir reden über <code>background-size</code>.</p>
<p><span id="more-2023"></span></p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a></p>
</blockquote>
<h3>Syntax</h3>
<p>Background-Size wird zwar von vielen Browsern unterstützt, allerdings hat jedes Programm noch seine eigene Implementierung mit eigener Syntax. Alle folgenden Anweisungen sind nötig, um <code>background-size</code> auf allen Browsern, sofern diese die Technik auch unterstützen, zum Laufen zu bringen.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.bg_size</span> <span style="color: #00AA00;">&#123;</span>
	-moz-background-size<span style="color: #00AA00;">:</span><span style="color: #933;">50%</span> <span style="color: #933;">25%</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Firefox */</span>
	-webkit-background-size<span style="color: #00AA00;">:</span><span style="color: #933;">50%</span> <span style="color: #933;">25%</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Safari, Chrome */</span>
	background-size<span style="color: #00AA00;">:</span><span style="color: #933;">50%</span> <span style="color: #933;">25%</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* Opera, IE, W3C Standard */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>Die beiden Werte sind entweder Prozentangaben (prozentuale Breite und Höhe des Elements mit dem Hintergrund) oder Längenangaben in px, em oder sonstwas, dann gibt man direkt die Breite und Höhe des Hintergrundbildes an.</p>
<h4>background-size:50% 25%</h4>
<div style="margin:20px;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;-moz-background-size:50% 25%;-webkit-background-size:50% 25%;background-size:50% 25%;"></div>
<h4>background-size:100px 10em</h4>
<div style="margin:20px;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;-moz-background-size:100px 10em;-webkit-background-size:100px 10em;background-size:100px 10em;"></div>
<p>Neben diesen Möglichkeiten können wir aber auch noch zwischen den Schlüsselwerten <code>contain</code> und <code>cover</code> wählen. Contain skaliert das Bild so groß wie möglich aber noch so klein, dass es vollständig in das Element passt. Cover hingegen skaliert das Bild so klein es geht aber füllt das Element vollständig aus.</p>
<blockquote class="warning"><p><a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignright size-full wp-image-1949" /></a>Die nachfolgenden Anweisungen funktionieren nicht in Safari. Dieser nutzt noch eine alte Implementierung, die kein cover oder contain beinhaltet.</p>
<p><strong>Update:</strong> Seit Version 5 (08.06.2010) besteht das Problem in Safari nicht mehr.</p>
</blockquote>
<h4>background-size:contain</h4>
<div style="margin:20px;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;-moz-background-size:contain;-webkit-background-size:contain;background-size:contain;"></div>
<h4>background-size:cover</h4>
<div style="margin:20px;height:200px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;-moz-background-size:cover;-webkit-background-size:cover;background-size:cover;"></div>
<h3>Fazit</h3>
<p>An sich ist das eine schöne Sache aber die Implementierung ist noch nicht in allen modernen Browsern gleich.. von daher seh ich noch keinen wahnsinnig großen Vorteil. Es macht sicherlich Sinn, wenn man Vektorgrafiken als Hintergrundbilder benutzt, dann kann man diese wunderbar verlustlos skalieren. Für <code>cover</code> oder <code>contain</code> gibt es sicherlich mehr Anwendungsfälle, z.B. <a href="http://ringvemedia.com/">gibt es Seiten</a>, die derzeit recht aufwändig versuchen ihr Hintergrundbild immer auf 100% Fensterbreite zu ziehen. Mit <code>background-size:cover</code> ist das jetzt kein Problem mehr.</p>
<p>Einmal müssen wir noch über Backgrounds reden, das nächste Mal geht&#8217;s nämlich um Background-Gradients, danach geht es dann mit Bordern weiter. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-background-size/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: Multiple Backgrounds</title>
		<link>https://www.normansblog.de/css3-im-detail-multiple-backgrounds/</link>
		<comments>https://www.normansblog.de/css3-im-detail-multiple-backgrounds/#comments</comments>
		<pubDate>Sun, 07 Feb 2010 00:00:29 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=2008</guid>
		<description><![CDATA[CSS3 im Detail: Multiple Backgrounds - bisher konnte man immer nur eine Hintergrundgrafik pro Element angeben, mit CSS3 gehört diese Grenze der Vergangenheit an.]]></description>
			<content:encoded><![CDATA[<p>Willkommen zum zweiten Teil der <em>CSS3 im Detail</em>-Reihe! <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.normansblog.de/css3-im-detail-multiple-backgrounds/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Diesmal geht es um die Möglichkeit einem Element mehrere Hintergrundbilder zu vergeben. Bisher war es nur möglich <strong>1 Bild pro Element</strong> als Hintergrund zu definieren. Wollte man mehr, mussten sogenannte Wrapper um das Element gesetzt werden. Das verursacht unnötiges Mark-up, was vielen schon lange ein Dorn im Auge war. Das zusätzliche Mark-up war sicherlich auch einer der Hauptgründe für die Einführung von <em>Multiple Backgrounds</em>.</p>
<p><span id="more-2008"></span></p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits vollständig:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a></p>
</blockquote>
<h3>Syntax</h3>
<p>Damit man die neue Technik nutzen kann, muss man lediglich mehrer URLs, das Attachment und die Position des Bildes in die <code>background</code>-Anweisung schreiben.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #6666ff;">.multiple_bgs</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span><span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span>example_1.jpg<span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #000000; font-weight: bold;">left</span> <span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">,</span>
	<span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span>example_2.jpg<span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #000000; font-weight: bold;">right</span> <span style="color: #000000; font-weight: bold;">bottom</span><span style="color: #00AA00;">,</span>
	<span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span>example_3.jpg<span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #993333;">center</span> <span style="color: #993333;">center</span> <span style="color: #cc00cc;">#adf</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="margin:20px;height:400px;background:url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat left top,url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat right bottom,url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat center center #adf;"></div>
<h3>Anwendungen</h3>
<p>Ein gutes Beispiel ist mein Blog. Für die Darstellung des Contents benötige ich 3 Grafiken: den oberen Bereich, den Mittelteil und den unteren Bereich. Natürlich musste ich dafür 2 Wrapper um den eigentlich Content legen. Diese könnten entfallen, wenn ich Multiple Backgrounds nutzen würde.</p>
<p><strong>Update:</strong> Mittlerweile mach ich das auch. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h3>Vor- und Nachteile</h3>
<p>Durch den Wegfall des zusätzlichen Mark-ups wird der Code etwas schlanker und semantisch korrekter.</p>
<p>Für den IE und Opera gibt es derzeit noch keine Lösungen oder Alternativen, von daher ist die Technik noch relativ unpraktikabel.</p>
<h3>Fazit</h3>
<p>Multiple Backgrounds lohnt sich nur an Stellen, die nicht so wichtig sind oder wenn man seine Leserschaft genau kennt und weiß, dass davon die meisten mit Firefox/Safari/Chrome unterwegs sind.</p>
<p>Viel Spaß beim Basteln! Wir sehen uns beim nächsten Mal. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-multiple-backgrounds/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS3 im Detail: RGBa</title>
		<link>https://www.normansblog.de/css3-im-detail-rgba/</link>
		<comments>https://www.normansblog.de/css3-im-detail-rgba/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 01:01:05 +0000</pubDate>
		<dc:creator>Norman</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CSS3]]></category>

		<guid isPermaLink="false">http://www.normansblog.de/?p=1900</guid>
		<description><![CDATA[CSS3 im Detail: RGBa - endlich kann man Hintergründe, Schrift und Border halbtransparent machen und brauch dazu keine PNGs.]]></description>
			<content:encoded><![CDATA[<p>Hallo und herzlich willkommen zum ersten Teil meiner <em>CSS3 im Detail</em>-Reihe. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.normansblog.de/css3-im-detail-rgba/"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/css3.jpg" alt="" title="css3" width="180" height="120" class="alignright size-full wp-image-1902" /></a>Während dieser Reihe möchte ich euch gern die wichtigsten Neuerungen, die <a href="http://www.w3.org/TR/css3-roadmap/">CSS3</a> mit sich bringt, vorstellen und einzeln näher betrachten. Weiterhin wird die Unterstützung in der derzeitigen Browserlandschaft aufgezeigt und welche Vor- und eventuell auch Nachteile die Techniken haben.</p>
<p>Im ersten Teil von <em>CSS3 im Detail</em> dreht sich alles um <a href="http://www.w3.org/TR/css3-color/#rgba-color">den neuen Farbraum RGBa</a>.</p>
<p><span id="more-1900"></span></p>
<blockquote class="warning"><p><a href="http://www.microsoft.com/ie"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_ie_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignright size-full wp-image-1947" /></a>Eins vorweg: Der Internet Explorer in Version 6, 7 und 8 unterstützt noch <em>keines</em> der Features. IE9 hingegen beherrscht erste CSS3 Spezifikationen. Mehr Infos gibts auf meiner <a href="http://www.normansblog.de/demos/browser-support-checklist-css3/">Browser Support Checklist CSS3</a>.</p>
</blockquote>
<h3 style="clear:both;">Neuer Farbraum &#8211; RGBa</h3>
<p>RGBa steht für <em>Red-Green-Blue-alphachannel</em>, also einem Quadrupel aus drei Farbwerten (Rot, Grün und Blau) und einem Transparenzwert (<a href="http://de.wikipedia.org/wiki/Alphakanal">Alphakanal</a>). Damit stellt es eine Weiterentwicklung des schon bekannten RGB Farbraumes dar und unterscheidet sich im Wesentlichen nur durch den vierten Kanal.</p>
<blockquote class="idea"><h3>Browserunterstützung</h3>
<p>Folgende Browser unterstützen diese Technik bereits vollständig:</p>
<p class="center"><a href="http://www.firefox.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_firefox_small.png" alt="Firefox" title="Firefox" width="50" height="50" class="alignnone size-full wp-image-1946" /></a> <a href="http://www.apple.com/safari"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_safari_small.png" alt="Safari" title="Safari" width="50" height="50" class="alignnone size-full wp-image-1949" /></a> <a href="http://www.opera.com"><img src="http://www.normansblog.de/wp-content/uploads/2010/02/logo_opera_small.png" alt="Opera" title="Opera" width="50" height="50" class="alignnone size-full wp-image-1948" /></a> <a href="http://www.google.com/chrome"><img src="http://www.normansblog.de/wp-content/uploads/2011/04/logo_chrome_new_small.png" alt="Chrome" title="Chrome" width="50" height="50" class="alignnone size-full wp-image-1945" /></a> <a href="http://ie.microsoft.com/"><img src="http://www.normansblog.de/wp-content/uploads/2010/11/logo_ie_new_small.png" alt="Internet Explorer" title="Internet Explorer" width="50" height="50" class="alignnone size-full" /></a></p>
</blockquote>
<h3>Syntax</h3>
<h4>RGBa ist ganz einfach:</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">p<span style="color: #6666ff;">.rgba</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span>rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0.75</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p style="margin:20px;padding:20px;font:bold 28px/30px arial;background:#adf url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat left center;color:rgba(255, 255, 255, 0.75);">75% Weißer Text</p>
<p>RGBa erlaubt es uns mit Hilfe des vierten Wertes eine Transparenz anzugeben. Ich habe hier 0.75 gewählt, d.h. der Text ist genau zu 75% sichtbar und zu 25% transparent. Es dürfen nur Werte zwischen 0 und 1 angegeben werden, wobei 0 für vollständig transparent (unsichtbar) und 1 für vollständig sichtbar steht.</p>
<h4>Zum Vergleich das bekannte RGB:</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">p<span style="color: #6666ff;">.rgb</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #993333;">rgb</span><span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">255</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p style="margin:20px;padding:20px;font:bold 28px/30px arial;background:#adf url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat left center;color:rgb(255, 255, 255);">100% Weißer Text</p>
<p>Die alte Angabe von Farben in RGB bietet uns diese Möglichkeit nicht.</p>
<h3>Anwendungen</h3>
<p>Kleine Ursache, große Wirkung..</p>
<p>Da RGBa kann überall dort verwendet werden, wo <code>color</code> zum Einsatz kommt. Als Schriftfarbe habt ihr es eben gesehen, es bieten sich uns aber noch andere Anwendungsmöglichkeiten an:</p>
<h4>RGBa als Hintergrundfarbe</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">p<span style="color: #6666ff;">.trans</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background-color</span><span style="color: #00AA00;">:</span>rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">200</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">255</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0.5</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="margin:20px;background:transparent url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat left center;">
<p style="padding:20px;font:bold 14px/18px arial;background-color:rgba(200, 0, 255, 0.5);color:#fff;">Dieser Absatz hat einen zu 50% transparenten, lila Hintergrund (sieht auf weißem Hintergrund wie Rosa aus).</p>
</div>
<h4>RGBa als Rahmenfarbe</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">p<span style="color: #6666ff;">.trans</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">8px</span> <span style="color: #993333;">solid</span> rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">180</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0.25</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<div style="margin:20px;background:transparent url(http://www.normansblog.de/wp-content/uploads/2009/11/firefox-512-150x150.png) no-repeat left center;">
<p style="padding:20px;font:bold 14px/18px arial;border:8px solid rgba(0, 180, 0, 0.25);">Dieser Absatz hat einen zu 75% transparenten, grünen Rahmen.</p>
</div>
<h3>Vor- und Nachteile</h3>
<blockquote><p>Häh, das kann ich doch auch mit PNGs und Opacity machen, wozu brauch man das?</p>
</blockquote>
<p>Das stimmt wohl. Der entscheidende Vorteil von RGBa ist jedoch, dass ich mir die PNG Datei und den dazugehörigen HTTP-Request sparen kann. Opacity (was es übrigens offiziell auch erst mit CSS3 gibt) hingegen macht leider nicht nur den Hintergrund, sondern auch den Inhalt des Elements transparent.</p>
<p>Der Nachteil von RGBa ist <strong>noch</strong> ganz klar die fehlende Unterstützung des IEs. Wenn man es sich erlauben kann, sollte man daher einfach eine Fallbacklösung in Betracht ziehen. D.h. dass man dem IE anstatt der RGBa Werte einfach nur die äquivalenten RGB Werte übergibt:</p>
<h4>Lösung für den IE</h4>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="css" style="font-family:monospace;">p<span style="color: #6666ff;">.trans</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span>rgba<span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">180</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">0.25</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* der IE ignoriert diese Zeile */</span>
	<span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">:</span><span style="color: #993333;">rgb</span><span style="color: #00AA00;">&#40;</span><span style="color: #cc66cc;">190</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">230</span><span style="color: #00AA00;">,</span> <span style="color: #cc66cc;">190</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span> <span style="color: #808080; font-style: italic;">/* entspricht in etwa der selben Farbe */</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<h3>Fazit</h3>
<p>RGBa wird sich, wenn es das nicht schon bei vielen getan hat, durchsetzen. Es ist sehr flexibel und hat im Grunde keine Nachteile. Durch den Wegfall von unnötigen halbtransparenten PNG Dateien spart man außerdem Traffic und die Seite kann schneller geladen werden.</p>
<p>Ich hoffe die Beispiele waren hilfreich und wünsche euch viel Spaß beim experimentieren! Bis zum nächsten Mal. <img src='https://www.normansblog.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://www.normansblog.de/css3-im-detail-rgba/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
