<?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>andreas-schlapsi.at &#187; HTML</title>
	<atom:link href="http://www.andreas-schlapsi.at/tag/html/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.andreas-schlapsi.at</link>
	<description>Software-Entwicklung, .NET &#38; Co.</description>
	<lastBuildDate>Sat, 17 Sep 2011 16:28:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>&#8220;Runde Ecken&#8221; und Schlagschatten mit CSS3</title>
		<link>http://www.andreas-schlapsi.at/2009/08/16/runde-ecken-und-schlagschatten-mit-css3/</link>
		<comments>http://www.andreas-schlapsi.at/2009/08/16/runde-ecken-und-schlagschatten-mit-css3/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 20:39:19 +0000</pubDate>
		<dc:creator>Andreas Schlapsi</dc:creator>
				<category><![CDATA[JavaScript & HTML]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://www.andreas-schlapsi.at/?p=423</guid>
		<description><![CDATA[Langsam aber doch wächst die Unterstützung für die neuen Features, die CSS3 bringen wird. Immer mehr Browser unterstützen in ihrer aktuellsten Version einige Teile der CSS3-Spezifikation, die noch nicht vom W3C abgesegnet wurde. Browserspezifische Erweiterungen Die Hersteller können browserspezifische Erweiterungen vornehmen, indem sie die Eigenschaften mit einem Präfix versehen. Die folgende Tabelle zeigt die Präfixe [...]]]></description>
			<content:encoded><![CDATA[<p>Langsam aber doch wächst die Unterstützung für die neuen Features, die CSS3 bringen wird. Immer mehr Browser unterstützen in ihrer aktuellsten Version einige Teile der <a title="CSS: Current Work" href="http://www.w3.org/Style/CSS/current-work#CSS3">CSS3-Spezifikation</a>, die noch nicht vom W3C abgesegnet wurde.<br />
<span id="more-423"></span></p>
<h2>Browserspezifische Erweiterungen</h2>
<p>Die Hersteller können browserspezifische Erweiterungen vornehmen, indem sie die Eigenschaften mit einem Präfix versehen. Die folgende Tabelle zeigt die Präfixe der gängigen Browser:</p>
<table border="0">
<tbody>
<tr>
<th>Präfix</th>
<th>Browser</th>
<th>Beispiel</th>
</tr>
<tr>
<td>-khtml-</td>
<td>Konqueror</td>
<td>-khtml-border-radius</td>
</tr>
<tr>
<td>-moz-</td>
<td>Gecko-basierte Browser, z.B. Firefox</td>
<td>-moz-box-shadow</td>
</tr>
<tr>
<td>-ms-</td>
<td>Internet Explorer</td>
<td>-ms-filter</td>
</tr>
<tr>
<td>-o-</td>
<td>Opera</td>
<td>-o-background-size</td>
</tr>
<tr>
<td>-webkit-</td>
<td>Webkit-basierte Browser, z.B. Google Chrome oder Safari</td>
<td>-webkit-border-radius</td>
</tr>
</tbody>
</table>
<p>Browser müssen CSS-Eigenschaften, die sie nicht verstehen, ignorieren. Viele Hersteller verwenden deshalb Präfixe, um einen Teil der CSS3-Features schon jetzt zu unterstützen.</p>
<h2>&#8220;Runde Ecken&#8221;</h2>
<p>Mit CSS3 können &#8220;runde Ecken&#8221; realisiert werden, ohne das HTML-Markup zu beeinflussen. Die dafür notwendige Eigenschaft heißt <code>border-radius</code>. Unterstützt wird diese Eigenschaft bisher von Firefox (<code>-moz-border-radius</code>), Webkit-basierten Browsern wie Google Chrome oder Safari (<code>-webkit-border-radius</code>) und Konqueror (<code>-khtml-border-radius</code>).</p>
<p>Ein Element kann so ganz einfach mit runden Ecken versehen werden:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#myBox</span> <span style="color: #00AA00;">&#123;</span>
    -webkit-border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -khtml-border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -moz-border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    border-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Um nur eine der Ecken abzurunden, definiert CSS3 die Eigenschaften <code>border-top-left-radius</code>, <code>border-top-right-radius</code>, <code>border-bottom-right-radius</code> und <code>border-bottom-left-radius</code>. Firefox schert an dieser Stelle aus: <code>-moz-border-radius-topleft</code>, <code>-moz-border-radius-topright</code>, <code>-moz-border-radius-bottomright</code> und <code>-moz-border-radius-bottomleft</code>.</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#myBox</span> <span style="color: #00AA00;">&#123;</span>
    -webkit-border-top-left-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -webkit-border-top-right-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -khtml-border-top-left-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -khtml-border-top-right-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -moz-border-radius-topleft<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    -moz-border-radius-topright<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    border-top-left-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
    border-top-right-radius<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<h2>Schlagschatten</h2>
<p>Mit CSS3 kann eine Box mit Schlagschatten versehen werden. Dafür gibt es die Eigenschaft <code>box-shadow</code>:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#myBox</span> <span style="color: #00AA00;">&#123;</span>
    -webkit-box-shadow<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">5px</span> <span style="color: #cc00cc;">#cefa42</span><span style="color: #00AA00;">;</span>
    -moz-box-shadow<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">5px</span> <span style="color: #cc00cc;">#cefa42</span><span style="color: #00AA00;">;</span>
    box-shadow<span style="color: #00AA00;">:</span> <span style="color: #933;">10px</span> <span style="color: #933;">10px</span> <span style="color: #933;">5px</span> <span style="color: #cc00cc;">#cefa42</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Diese CSS-Eigenschaft benötigt 4 Angaben:</p>
<ul>
<li>Die ersten zwei Angaben bestimmen den horizontalen und vertikalen Offset des Schlagschattens. Positive Werte bedeuten, dass der Schatten rechts oder oben der Boxen positioniert wird, negative Werte positionieren den Schatten links bzw. unter der Box.</li>
<li>Die dritte Angaben definiert, wie scharf der Schatten dargestellt werden soll. Je höher der Wert, desto verschwommer stellt der Browser den Schatten dar. Negative Werte sind an dieser Stelle nicht erlaubt.</li>
<li>Der letzte Parameter gibt die Farbe des Schattens an.</li>
</ul>
<h2>Und was ist mit dem IE?</h2>
<p>Der Internet Explorer unterstützt selbst in der Version 8 keine der oben genannten CSS3-Features. Auch die aktuelle Version von Opera bietet keine Unterstützung für diese Effekte.</p>
<p>Wenn man damit leben kann, dass Benutzer fortschrittlicher Browser ein schöneres Layout sehen als die Benutzer des Internet Explorers oder des Opera-Browsers, kann man die oben genannten CSS3-Features ohne Probleme nutzen. Will man Boxen mit Schlagschatten haben und darf der Schatten ruhig eine scharfe Begrenzung haben, kann man eine Microsoft-proprietären Filter einsetzen:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#myBox</span> <span style="color: #00AA00;">&#123;</span>
    -ms-filter<span style="color: #00AA00;">:</span><span style="color: #ff0000;">&quot;progid:DXImageTransform.Microsoft.DropShadow(color=#333333, offx=2, offy=2)&quot;</span><span style="color: #00AA00;">;</span>
    filter<span style="color: #3333ff;">:progid</span><span style="color: #3333ff;">:DXImageTransform</span><span style="color: #6666ff;">.Microsoft</span>.DropShadow<span style="color: #00AA00;">&#40;</span><span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">=</span><span style="color: #cc00cc;">#333333</span><span style="color: #00AA00;">,</span> offx<span style="color: #00AA00;">=</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">,</span> offy<span style="color: #00AA00;">=</span><span style="color: #cc66cc;">2</span><span style="color: #00AA00;">&#41;</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Internet Explorer-Versionen vor 8 verstehen nur die untere Zeile. Ab IE 8 sollte der Filter mit dem herstellerspezifischen Präfix versehen werden. Dann muss der Wert in Anführungszeichen stehen.</p>
<p><a href="http://www.andreas-schlapsi.at/wp-content/uploads/2009/08/boxwithshadowandroundcorners-css3.html">Hier</a> gibt&#8217;s ein Beispiel für diese Technik.</p>
<p>Die Box sieht in Firefox 3.5.2 so aus:</p>
<p><a href="http://www.andreas-schlapsi.at/wp-content/uploads/2009/08/box-in-firefox-3.5.png"><img class="alignnone size-full wp-image-476" title="box in firefox 3.5" src="http://www.andreas-schlapsi.at/wp-content/uploads/2009/08/box-in-firefox-3.5.png" alt="box in firefox 3.5" width="555" height="423" /></a></p>
<p>Und so sieht die gleiche Box im Internet Explorer 8 aus:</p>
<p><a href="http://www.andreas-schlapsi.at/wp-content/uploads/2009/08/box-in-ie-8.png"><img class="alignnone size-full wp-image-477" title="box in ie 8" src="http://www.andreas-schlapsi.at/wp-content/uploads/2009/08/box-in-ie-8.png" alt="box in ie 8" width="557" height="415" /></a></p>
<p>Wenn auch das keine Option ist, bleiben nur mehr die konventiellen Methoden für &#8220;runde Ecken&#8221; und Schlagschatten.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-schlapsi.at/2009/08/16/runde-ecken-und-schlagschatten-mit-css3/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
	</channel>
</rss>

