<?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>KS Webdesign - Der Blog &#187; XHTML/CSS</title>
	<atom:link href="http://webdesign-passau.com/wordpress/kategorie/xhtmlcss/feed/" rel="self" type="application/rss+xml" />
	<link>http://webdesign-passau.com/wordpress</link>
	<description>Ein weiteres tolles WordPress-Blog</description>
	<lastBuildDate>Wed, 04 Aug 2010 11:29:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Navi includen &#8211; ohne Deppenlink</title>
		<link>http://webdesign-passau.com/wordpress/navi-includen-ohne-deppenlink/</link>
		<comments>http://webdesign-passau.com/wordpress/navi-includen-ohne-deppenlink/#comments</comments>
		<pubDate>Wed, 23 Dec 2009 14:33:11 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[Navigationen]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[Deppenlink]]></category>
		<category><![CDATA[include]]></category>
		<category><![CDATA[includen]]></category>
		<category><![CDATA[navi]]></category>
		<category><![CDATA[navigation]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=464</guid>
		<description><![CDATA[Wer kennt das nicht: Die Navigation einer bestehenden Site ändert sich und nun muss die Änderung bei wirklich jeder Seite eingetragen werden. Nervig und zeitaufwändig! Eine Menge Zeit spart man sich wenn man die navi per include einbindet. Diese Methode ist relativ simpel und effektiv. Man führt die Änderung an einer Datei durch und fertig. [...]]]></description>
			<content:encoded><![CDATA[<p>Wer kennt das nicht: Die Navigation einer bestehenden Site ändert sich und nun muss die Änderung bei wirklich jeder Seite eingetragen werden. Nervig und zeitaufwändig!</p>
<p>Eine Menge Zeit spart man sich wenn man die navi per <em>include</em> einbindet. Diese Methode ist relativ simpel und effektiv. Man führt die Änderung an einer Datei durch und fertig.</p>
<p>Man hat zwar noch den Deppenlink (Link der auf sich selber zeigt), aber was soll&#8217;s.</p>
<p>In diesem, auch für <em>PHP-Vollpfosten</em> geeigneten Tutorial beschreibe ich euch, wie ihr die navi includet und trotzdem den Deppenlink vermeidet.<span id="more-464"></span></p>
<p class="abstandunten0 abstandoben2">So sieht euer Menü normalerweise aus:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;div id=&quot;navi&quot;&gt;</code></li>
<li><code>&lt;ul&gt;</code></li>
<li><code>&lt;li&gt;&lt;strong&gt;Startseite&lt;/strong&gt;&lt;/li&gt;</code></li>
<li><code>&lt;li&gt;&lt;a href=&quot;leistungen.htm&quot;&gt;Leistungen&lt;/a&gt;&lt;/li&gt;</code></li>
<li><code>&lt;li&gt;&lt;a href=&quot;team.htm&quot;&gt;Team&lt;/a&gt;&lt;/li&gt;</code></li>
<li><code>&lt;/ul&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
</ul>
</div>
<p>Wie es sich gehört ist das Menü eine ungeordnete Liste. Bei der aktuellen Seite wurde <code>a</code> gegen <code>strong</code> ausgetauscht, um den Deppenlink zu vermeiden.</p>
<p>Um die navi zu includen, benenne ich die beteiligten Dateien von <code>.htm</code> in <code>.php</code> um. Aus der <code>index.htm</code> wird also <code>index.php</code>, usw.</p>
<p class="abstandunten0 abstandoben2">Wo die ungeordnete Liste mit dem Menü stand trage ich folgendes ein:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;div id=&quot;navi&quot;&gt;</code></li>
<li><code>&lt;?php include (&quot;navi.php&quot;) ?&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
</ul>
</div>
<p class="abstandunten0 abstandoben2">Den Inhalt der <code>navi.php</code>, die anstelle von dem, was da vorher stand eingebunden wird werfe ich euch mal direkt vor die Füße:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;?php</code></li>
<li class="codeeinrueckung"><code>$uri = $_SERVER['REQUEST_URI'];</code></li>
<li class="codeeinrueckung"><code>$navi = array(</code></li>
<li class="codeeinrueckung"><code>'/'        =&gt; 'Startseite',</code></li>
<li class="codeeinrueckung"><code>'/leistungen'    =&gt; 'Leistungen',</code></li>
<li class="codeeinrueckung"><code>'/team' =&gt; 'Team',</code></li>
<li class="codeeinrueckung"><code>);</code></li>
<li class="codeeinrueckung"><code>echo '&lt;ul&gt;'.&quot;\n&quot;;</code></li>
<li class="codeeinrueckung"><code>foreach ($navi as $href =&gt; $text)</code></li>
<li class="codeeinrueckung"><code>{</code></li>
<li class="codeeinrueckung"><code>echo '&lt;li&gt;';</code></li>
<li class="codeeinrueckung"><code>if ($uri == $href)</code></li>
<li class="codeeinrueckung"><code>{</code></li>
<li class="codeeinrueckung"><code>echo '&lt;strong&gt;'.$text.'&lt;/strong&gt;';</code></li>
<li class="codeeinrueckung"><code>}</code></li>
<li class="codeeinrueckung"><code>else</code></li>
<li class="codeeinrueckung"><code>{</code></li>
<li class="codeeinrueckung"><code>echo '&lt;a href=&quot;'.$href.'&quot;&gt;'.$text.'&lt;/a&gt;';</code></li>
<li class="codeeinrueckung"><code>}</code></li>
<li class="codeeinrueckung"><code>echo '&lt;/li&gt;'.&quot;\n&quot;;</code></li>
<li class="codeeinrueckung"><code>}</code></li>
<li class="codeeinrueckung"><code>echo '&lt;/ul&gt;'.&quot;\n\n&quot;;</code></li>
<li><code>?&gt;</code></li>
</ul>
</div>
<p>Um zu verstehen was wo eingetragen wird, lohnt es sich einmal etwas genauer hinzuschauen.</p>
<p>Zuerst wird in einem <code>array</code> die Adresse <em>root-relativ</em> eingetragen, d.h. es wird vom Wurzelverzeichnis des Webservers ausgegangen, was ja i.d.R. immer <code><strong>/</strong></code> ist.</p>
<p>Rechts daneben steht in Hochkommata der Text des Menüpunktes.</p>
<p>Wenn die angewählte URL gleich der URL des Menüpunktes ist wird <code>a</code> gegen <code>strong</code> ausgetauscht, ansonsten über die <code>else</code> der Link <em>hingeechot</em>.</p>
<p class="abstandunten0">Das <code>array</code> kann beliebig erweitert werden, je nachdem wieviel Menüpunkte die Navigation hat.</p>
<p>Wenn ihr mehrere Menüs auf eurer Seite habt, braucht ihr z.B. eine <code>topnavi.php</code>, eine <code>seitennavi.php</code> und/oder eine <code>fuss-navi.php</code>. Der Inhalt ist bis auf die Punkte des <code>arrays</code> gleich, ihr müßt nur die <em>richtige PHP-Datei</em> an der richtigen Stelle <em>includen</em>.</p>
<p>Das ist die einfachste Art eines Menüs, welches includet wird. Da ich euch noch mehrere Varianten zur Verfügung stellen will, habe ich alles zum Download in den Ordner <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/include.zip">include.zip</a> gepackt.</p>
<p class="abstandunten0">Die enthaltene <code>navi-normal.php</code> ist die hier vorgestellte Variante.</p>
<p class="abstandunten0">Bei der <code>navi-title.php</code> gibt es zusätzlich den <em>title</em>-Tag für <code>a</code></p>
<p>Bei der <code>navi-klasse.php</code> hat <code>a</code> noch eine zusätzliche Klasse und die <code>navi-id.php</code> hält für jeden Listenpunkt eine <code>id</code> bereit.</p>
<p>Funktioniert problemlos mit statischen Seiten. Ob das mit einem CMS so ohne weiteres geht glaube ich eher nicht.</p>
<p class="abstandoben">Wenn ihr das Gleiche für eine WordPressinstallation wollt, kann ich euch den schönen <a href="http://toscho.de/2009/deppenlink-entfernen/" title="Externer Link">Artikel von Thomas</a> dazu ans Herz legen.</p>
<p class="abstandoben">Von <a href="http://xhtmlforum.de/members/7772_gumbo.html" title="Externer Link">Markus</a> stammt die Ursprungsversion des Scriptes. <a href="http://xhtmlforum.de/members/9476_heiko_rs.html" title="Externer Link">Heiko</a> hat es verfeinert und <a href="http://dnaber.de/" title="Externer Link">David</a> hat mir beim Verstehen des Scriptes geholfen.</p>
<p class="abstandunten0"><strong>Vielen Dank dafür euch dreien!</strong></p>
<p>Ihr habt mir abgesehen von diesem Script schön öfter geholfen. Auch dafür nochmal an dieser Stelle meinen besonderen Dank! Ich habe viel von euch gelernt.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/navi-includen-ohne-deppenlink/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Fixierte Positionierung</title>
		<link>http://webdesign-passau.com/wordpress/fixierte-positionierung/</link>
		<comments>http://webdesign-passau.com/wordpress/fixierte-positionierung/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 14:52:59 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[fixed]]></category>
		<category><![CDATA[fixierte]]></category>
		<category><![CDATA[position]]></category>
		<category><![CDATA[Positionierung]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=449</guid>
		<description><![CDATA[Zu absoluter Positionierung gibt es schon einen Artikel, zur relativen Positionierung ebenfalls. Jetzt fehlt noch die fixierte Positionierung, die im Grunde eine Unterabteilung der absoluten Positionierung ist. D.h. es gelten fast die gleichen Regeln wie für position:absolute;, außer das dort immer body als Bezugspunkt für Positionsangaben gilt. Außerdem kennt der IE 6 position:fixed; nicht und [...]]]></description>
			<content:encoded><![CDATA[<p>Zu <a href="http://webdesign-passau.com/wordpress/absolute-positionierung/">absoluter Positionierung</a>  gibt es schon einen Artikel, zur <a href="http://webdesign-passau.com/wordpress/relative-positionierung/">relativen Positionierung</a> ebenfalls.</p>
<p>Jetzt fehlt noch die <em>fixierte</em> Positionierung, die im Grunde eine Unterabteilung der absoluten Positionierung ist.<span id="more-449"></span></p>
<p>D.h. es gelten fast die gleichen Regeln wie für <code>position:absolute;</code>, außer das dort <strong>immer</strong> <code>body</code> als Bezugspunkt für Positionsangaben gilt. Außerdem kennt der IE 6 <code>position:fixed;</code> nicht und ignoriert es deshalb.</p>
<p>Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/position-fixed-anfang.htm">position-fixed-anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Bilder gibt es diesmal leider nicht, aber ich denke diesmal geht es auch ohne.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>.fixed  {</code></li>
<li class="codeeinrueckung"><code>position:fixed;</code></li>
<li class="codeeinrueckung"><code>left:40px;</code></li>
<li class="codeeinrueckung"><code>top:20px,</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Wenn ihr jetzt im Browser nach unten scrollt, kommt das fixierte Element mit. Setzt ihr die Positionsangaben auf null drängelt sich das fixierte Element ganz nach oben links, kommt aber beim Scrollen immer noch mit.</p>
<p>Beim IE 6 passiert nix. Das fixierte Element kommt einfach nicht mit.</p>
<p>Zum einen kann man den IE6 dabei einfach ignorieren, es gäbe allerdings z.B. die Möglichkeit ihm <a href="http://www.doxdesk.com/software/js/fixed.html" title="Externer Link">per Javascript</a> auf die Sprünge zu helfen.</p>
<p>Oder ihr verzichtet auf <code>position:fixed;</code>.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/fixierte-positionierung/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Relative Positionierung</title>
		<link>http://webdesign-passau.com/wordpress/relative-positionierung/</link>
		<comments>http://webdesign-passau.com/wordpress/relative-positionierung/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 13:38:53 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[position]]></category>
		<category><![CDATA[Positionierung]]></category>
		<category><![CDATA[relative]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=447</guid>
		<description><![CDATA[Angefangen habe ich mit diesem Artikel zur absoluten Positionierung. Fortsetzen will ich mit position:relative;.Mit fixierter Positionierung wird es enden. Hier findest du die position-relative-anfang.htm zum Quelltext rauskopieren. Im Browser schaut es so aus: Drei farbige Boxen in einer hellgrauen Box untereinander. Alles ist im normalen Textfluß. Bitte CSS ergänzen: #green { position:relative; } Das ergibt [...]]]></description>
			<content:encoded><![CDATA[<p>Angefangen habe ich mit <a href="http://webdesign-passau.com/wordpress/absolute-positionierung/">diesem Artikel</a> zur absoluten Positionierung. Fortsetzen will ich mit <code>position:relative;</code>.Mit <a href="http://webdesign-passau.com/wordpress/fixierte-positionierung/">fixierter Positionierung</a> wird es enden.<span id="more-447"></span></p>
<p>Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/position-relative-anfang.htm">position-relative-anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Im Browser schaut es so aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/relative-1.png" alt="Relative Positionierung 1" width="500" height="193" /></p>
<p class="abstandoben">Drei farbige Boxen in einer hellgrauen Box untereinander. Alles ist im normalen Textfluß.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#green  {</code></li>
<li class="codeeinrueckung"><code>position:relative;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandoben">Das ergibt folgendes Bild im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/relative-1.png" alt="Relative Positionierung 1" width="500" height="193" /></p>
<p class="abstandoben">Nun ja, nicht sehr spektakulär.</p>
<p>Genaugenommen gibt es auch nach intensivem Studium keinen Vorher/Nachher-Effekt.</p>
<p>Durch <code>position:relative;</code> haben wir die Box zwar aus dem normalen Textfluß entfernt, sie hockt aber immer noch am gleichen Platz.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#green  {</code></li>
<li class="codeeinrueckung"><code>left:200px;</code></li>
<li class="codeeinrueckung"><code>top:50px;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Das ergibt folgendes Bild im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/relative-2.png" alt="Relative Positionierung 2" width="500" height="168" /></p>
<p class="abstandoben">Ihr seht, das die grüne Box die 200px von links und 50px von oben ausgehend von ihrem alten Standpunkt aus gemessen hat, einen Zaun um den alten Platz gelegt hat, damit während ihrer Abwesenheit keine andere Box dahin kann und dann erst an ihren neuen Platz marschiert ist.</p>
<p>Mit <code>position:relative;</code> könnt ihr die Reihenfolge auf der z-Achse verändern. Infos dazu bietet <a href="http://webdesign-passau.com/wordpress/stapelung-1/">dieser Artikel</a>.</p>
<p><a href="http://webdesign-passau.com/wordpress/absolute-positionierung/">Absolut positionierte Boxen</a> orientieren sich bei Positionsangaben an ihren <em>relativ</em> positionierten Vorfahren und nicht mehr an <code>body</code>.</p>
<p>Außerdem kann man öfter mal Darstellungsfehler im Internet Explorer beseitigen, wenn man die entsprechende Box relativ positioniert.</p>
<p class="abstandunten0">Manchmal wird allerdings durch relative Positionierung einer Box erst ein Darstellungsfehler im IE ausgelöst.</p>
<p>Das heißt in jedem Fall, das sorgfältiges Testen vonnöten ist, wenn man relativ positioniert.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/relative-positionierung/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Absolute Positionierung</title>
		<link>http://webdesign-passau.com/wordpress/absolute-positionierung/</link>
		<comments>http://webdesign-passau.com/wordpress/absolute-positionierung/#comments</comments>
		<pubDate>Wed, 02 Dec 2009 10:52:27 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[absolut]]></category>
		<category><![CDATA[absolute]]></category>
		<category><![CDATA[position]]></category>
		<category><![CDATA[Positionierung]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=436</guid>
		<description><![CDATA[Erklärungen für position:absolute; findet man im Netz viele. Manche beschränken sich auf wenige, dürre Sätze, anderen wiederrum sind ein paar Bilder zur Verdeutlichung beigefügt. Wenn es um Erklärungen geht, wo man anhand einer Beispieldatei sofort mit basteln kann wird die Luft schon ziemlich dünn. Deshalb sorge ich mit dem folgenden Tutorial dafür, dass die Luft [...]]]></description>
			<content:encoded><![CDATA[<p>Erklärungen für <code>position:absolute;</code> findet man im Netz viele. Manche beschränken sich auf wenige, dürre Sätze, anderen wiederrum sind ein paar Bilder zur Verdeutlichung beigefügt.</p>
<p class="abstandunten0">Wenn es um Erklärungen geht, wo man anhand einer Beispieldatei sofort mit basteln kann wird die Luft schon ziemlich dünn.</p>
<p>Deshalb sorge ich mit dem folgenden Tutorial dafür, dass die Luft in dem Bereich <em>a weng</em> dicker wird.<span id="more-436"></span></p>
<p class="abstandoben abstandunten0">Legen wir direkt los:</p>
<p>Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/position-absolute-anfang.htm">position-absolute-anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Im Browser schaut es so aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/absolute-1.png" alt="Absolute Positionierung 1" width="480" height="254" /></p>
<p class="abstandoben">Drei farbige Boxen in einer hellgrauen Box untereinander. Alles ist im normalen Textfluß. Für alle gilt <code>position:static;</code>. Das ist die <em>Standardeinstellung</em> (default-Einstellung) der Browser, die immer dann zum Tragen kommt, wenn man nix gemacht hat.</p>
<p>Das <code>position:static;</code> wird vom Browser praktisch unsichtbar eingefügt, ohne das er uns bescheid sagt.</p>
<p>Jetzt wollen wir den Textfluß mal durcheinanderwirbeln indem wir ein Element positionieren und damit die <em>Standardeinstellung</em> der Browser überschreiben.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#green  {</code></li>
<li class="codeeinrueckung"><code>position:absolute;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandoben2">Im Browser schaut es so aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/absolute-2.png" alt="Absolute Positionierung 2" width="480" height="192" />    </p>
<p class="abstandoben">Umpff! Die rote Box ist weg.</p>
<p>Egal, wir haben die Möglichkeit für die Positionierung Werte zu vergeben.</p>
<p class="abstandunten0">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#green  {</code></li>
<li class="codeeinrueckung"><code>left:0;</code></li>
<li class="codeeinrueckung"><code>top:0;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandoben2">Das ergibt folgendes Bild im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/absolute-3.png" alt="Absolute Positionierung 3" width="510" height="142" />   </p>
<p class="abstandoben">Aha, die rote Box hat sich also nur hinter der grünen versteckt. Allerdings springt die grüne Box nach ganz oben links ins Browserfenster, wenn wir als Wert für die Positionierung jeweils null eintragen.</p>
<p>Das heißt erst mal, das sich die absolut positionierte Box an <code>body</code> orientiert wenn man Werte für <code>top</code> und <code>left</code> eingibt.</p>
<p>Die nächste Erkenntnis die sich uns aufdrängt ist die, dass die absolute Box von den anderen Boxen ignoriert wird. Die anderen Boxen tun so als wäre die absolute Box nicht vorhanden.</p>
<p>Also sind absolut positionierte Elemente komplett aus dem normalen Textfluß raus.</p>
<p>Wenn sich die absolute Box immer an <code>body</code> orientiert ist das doch ganz schön nervig, weil man immer erst die richtigen Werte ausbaldowern muss, um eine Darstellung an der gewünschten Stelle zu erreichen.</p>
<p class="abstandunten0 abstandoben2">Das geht einfacher:</p>
<p>Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#wrapper  {</code></li>
<li class="codeeinrueckung"><code>position:relative;</code></li>
<li><code>}</code></li>
<li><code>#green  {</code></li>
<li class="codeeinrueckung"><code>left:50px;</code></li>
<li class="codeeinrueckung"><code>top:50px;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandoben2">Das ergibt folgendes Bild im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/12/absolute-4.png" alt="Absolute Positionierung 4" width="480" height="183" />       </p>
<p class="abstandoben">Wenn der umgebende Container (<code>#wrapper</code>) <code>position:relative;</code> bekommt orientiert sich die absolute Box daran und nicht mehr an <code>body</code>.</p>
<p>Zu beachten ist dabei, dass die relative Box <a href="http://onhavinglayout.fwpf-webdesign.de/"title="Externer Link">HasLayout</a> für den IE 6 u. 7 bekommen sollte, da es passieren kann, dass die Positionsangaben sonst evtl. nicht richtig ausgeführt werden.</p>
<p>Für Anfänger ist das durchaus verführerisch alle Elemente mit <code>position:absolute;</code> festzutackern, um so die gewünschte Darstellung zu erhalten.</p>
<p>Okay, dann nehmt mal <code>position:relative;</code> weg und setzt die Werte für <code>top/left</code> auf null. Danach verkleinert ihr mal das Browserfenster stark.</p>
<p>Ihr seht dann hoffentlich was ich meine.</p>
<p class="abstandoben2"><code>position:absolute;</code> sollte man mit Bedacht einsetzen, denn damit ändert ihr wie gesehen auch die Stapelreihenfolge auf der <em>z-Achse</em>, d.h. zu euch hin oder von euch weg.</p>
<p>Wenn ihr an weiteren Infos über Stapelung interessiert seid könnte <a href="http://webdesign-passau.com/wordpress/stapelung-1/">dieser Artikel von mir</a> noch in Frage kommen.</p>
<p class="abstandoben">Was gibts noch zu sagen?</p>
<p>Es kann vorkommen das absolut positionierte Boxen Im IE 6 u. 7 nicht angezeigt werden, wenn sie im Quelltext unmittelbar neben einem <em>Float</em> liegen.</p>
<p>Abhilfe schafft entweder ein leeres <code>div</code>zwischen dem <em>Float</em> und der <em>absoluten Box</em> in den Quelltext zu schreiben, oder entweder den Float oder die absolute Box in ein <code>div</code> zu wickeln. Entscheidend dabei ist die unmittelbare Nachbarschaft von <em>Float</em> und <em>absoluter Box</em> aufzulösen.</p>
<p>Erhellendes dazu findet ihr in <a href="http://www.brunildo.org/test/IE_raf3.html" title="Externer Link">dieser Untersuchung</a> von Bruno Fassini.</p>
<p class="abstandoben">Zur relativen Positionierung gibt es mittlerweile schon <a href="http://webdesign-passau.com/wordpress/relative-positionierung/">einen Artikel.</a></p>
<p>Die <a href="http://webdesign-passau.com/wordpress/fixierte-positionierung/">fixierte Positionierung</a> habe ich auch nicht vergessen.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/absolute-positionierung/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Listenzeichen</title>
		<link>http://webdesign-passau.com/wordpress/listenzeichen/</link>
		<comments>http://webdesign-passau.com/wordpress/listenzeichen/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 14:56:02 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[HG-Grafik]]></category>
		<category><![CDATA[Hintergrundgrafik]]></category>
		<category><![CDATA[listenpunkte]]></category>
		<category><![CDATA[listenzeichen]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=369</guid>
		<description><![CDATA[Listenzeichen sind ein leidiges Thema. Es ist ja optisch ganz nett, wenn die Listenpunkte einer ungeordneten Liste vom Browser automatisch mit einem Listenzeichen versehen werden. Dadurch wird die Liste optisch noch einmal hervorgehoben. Dumm ist nur wenn die Listenzeichen in jedem Browser anders aussehen. Ganz übel wird es dann, wenn sie im Internet Explorer zu [...]]]></description>
			<content:encoded><![CDATA[<p class="abstandunten0">Listenzeichen sind ein leidiges Thema.</p>
<p>Es ist ja optisch ganz nett, wenn die Listenpunkte einer ungeordneten Liste vom Browser automatisch mit einem Listenzeichen versehen werden. Dadurch wird die Liste optisch noch einmal hervorgehoben.</p>
<p>Dumm ist nur wenn die Listenzeichen in jedem Browser anders aussehen. Ganz übel wird es dann, wenn sie im Internet Explorer zu sehen sind im Firefox aber nicht, oder umgekehrt.</p>
<p>Was tun sprach Zeus?</p>
<p>Ihr könntet <code>list-style-position</code> auf <code>inside</code> setzen (beim Firefox ist es per <em>Default</em>-Einstellung <code>outside</code>), aber die Punkte sind im Internet Explorer trotzdem klein, dünn und kraftlos.</p>
<p>Es gibt einen besseren Weg:<span id="more-369"></span></p>
<p class="abstandunten0">Erst mal schalten wir die Listenzeichen mit <code>list-style-type:none;</code> alle aus.</p>
<p>Dann erstellen wir mit einem Grafikprogramm ein eigenes Listenzeichen und binden das als Hintergrundgrafik ein.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>li  {</code></li>
<li class="codeeinrueckung"><code>list-style-type:none;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Der Stand im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/10/listenzeichen_anfang.png" alt="Listenzeichen - Anfang" width="358" height="178" /></p>
<p class="abstandoben2">Die erstellte Grafik: <img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/10/listenzeichen.png" alt="Listengrafik" width="14" height="14" /></p>
<p>Die Grafik hat die Maße <em>14x14px</em> und ist ein gelber Punkt. Nicht spektakulär, aber für unsere Zwecke mehr als ausreichend.</p>
<p>Nun binden wir die Grafik als HG-Grafik ein. Dazu bilden wir eine Klasse die wir <code>li</code> zuweisen.</p>
<p class="abstandunten0 abstandoben2">Aussehen des Quellcodes:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;ul&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;li class=&quot;listenzeichen&quot;&gt;Erster Listenpunkt&lt;/li&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;li class=&quot;listenzeichen&quot;&gt;Zweiter Listenpunkt&lt;/li&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;li class=&quot;listenzeichen&quot;&gt;Dritter Listenpunkt&lt;/li&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;li class=&quot;listenzeichen&quot;&gt;Vierter Listenpunkt oder watt?!&lt;/li&gt;</code></li>
<li><code>&lt;/ul&gt;</code></li>
</ul>
</div>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>.listenzeichen  {</code></li>
<li class="codeeinrueckung"><code>background:url(listenzeichen.png) no-repeat left top;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Stand im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/10/listenzeichen_mitte.png" alt="Listenzeichen - Mitte" width="356" height="176" /></p>
<p class="abstandoben">Naja, da ist zwar was gelbes, aber an der falschen Stelle.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>.listenzeichen  {</code></li>
<li class="codeeinrueckung"><code>background:url(listenzeichen.png) no-repeat left <strong><em>0.3em;</em></strong></code></li>
<li class="codeeinrueckung"><code>padding-left:1.5em;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Stand im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/10/listenzeichen_fertig.png" alt="Listenzeichen - Fertig" width="349" height="168" /></p>
<p class="abstandoben">Man kann jetzt darüber streiten, ob die HG-Grafik im Internet Explorer <code>0.1em</code> zu tief sitzt und das dann per <a href="http://webdesign-passau.com/wordpress/conditional-comments-1/">Conditional Comment</a> korrigieren, aber das müßt ihr selbst entscheiden.</p>
<p>Auf jeden Fall erhaltet ihr so Listenzeichen, die browserübergreifend gleich aussehen und auch leicht zu positionieren sind.</p>
<p>Außerdem ist der Text wenn der Listenpunkt mehr als einzeilig ist sauber eingerückt, was bei den autom. Listenzeichen oder <code>list-style-image</code> nicht der Fall ist.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/listenzeichen/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Faux Columns Liquid</title>
		<link>http://webdesign-passau.com/wordpress/faux-columns-liquid/</link>
		<comments>http://webdesign-passau.com/wordpress/faux-columns-liquid/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 14:37:30 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[Faux Columns liquid]]></category>
		<category><![CDATA[unechte Spalten]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=350</guid>
		<description><![CDATA[Die Faux Columns Technik für feste Layouts hatte ich schon in einem Artikel erklärt. Aber wie erzeugen wir gleichlange Spalten für flüssige Layouts, d.h. wo die Spaltenbreiten Prozentwerte sind (rechts 25%, mitte 50%, links 25% z.B.) ? Das ist nicht viel schwieriger als die normale Faux Columns Technik. Hier findest du die fauxcolumns_liquid_anfang.htm zum Quelltext [...]]]></description>
			<content:encoded><![CDATA[<p class="abstandunten0">Die <a href="http://webdesign-passau.com/wordpress/faux-columns-technik/">Faux Columns Technik</a> für feste Layouts hatte ich schon in einem Artikel erklärt.</p>
<p>Aber wie erzeugen wir gleichlange Spalten für <em>flüssige</em> Layouts, d.h. wo die Spaltenbreiten<br />
Prozentwerte sind (rechts 25%, mitte 50%, links 25% z.B.) ?</p>
<p>Das ist nicht viel schwieriger als die normale <em>Faux Columns Technik</em>.<span id="more-350"></span></p>
<p class="abstandoben2">Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/fauxcolumns_liquid_anfang.htm">fauxcolumns_liquid_anfang.htm</a> zum Quelltext rauskopieren.</p>
<p class="abstandunten0">Die benötigten Grafiken kannst du dir hier holen: <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/fauxcolumns_liquid_grafik.htm">fauxcolumns_liquid_grafik.htm</a></p>
<p><strong>Achtung!!</strong> Die zweite Grafik seht ihr erst, wenn ihr nach rechts scrollt</p>
<p class="abstandoben">Im Browser schaut es noch so aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/fc_liquid_anfang.png" alt="Liquid-Faux-Columns - Anfang" width="480" height="155" /></p>
<p class="abstandoben abstandunten0">Die XHTM-Struktur ist folgende:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;div id="umhang"&gt;</code></li>
<li><code>&lt;div id="kopf"&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;h1&gt;Liquid Faux Columns&lt;/h1&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
<li><code>&lt;div id="zentral"&gt;</code></li>
<li><code>&lt;div id="links"&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;p&gt;........&lt;/p&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
<li><code>&lt;div id="textbereich"&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;p&gt;.............&lt;/p&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
<li><code>&lt;div id="rechts"&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;p&gt;..............&lt;/p&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
<li class="codeeinrueckung"><code>&lt;hr class="clear" /&gt;</code></li>
<li><code>&lt;/div&gt;<span class="kommentarfarbe">&lt;-- Ende div#zentral --&gt;</span></code></li>
<li><code>&lt;/div&gt;<span class="kommentarfarbe">&lt;-- Ende div#umhang --&gt;</span></code></li>
</ul>
</div>
<p class="abstandunten0"><code>div#umhang</code> umschließt alle Bereiche innerhalb von <code>body</code>.</p>
<p class="abstandunten0">Die drei Spalten <code>#links</code>,<code>#textbereich</code> und <code>#links</code> werden vom <code>div#zentral</code> umschlossen.</p>
<p>Unmittelbar vor dem Ende von <code>div#zentral</code> werden die später floatenden Spalten mit der<br />
<code>&lt;hr class="clear" /&gt;</code> gecleart.</p>
<p class="abstandoben2">Lange Rede, kurzer Sinn. Jetzt wird gestaltet!</p>
<p class="abstandunten0">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#links  {</code></li>
<li class="codeeinrueckung"><code>float:left;</code></li>
<li class="codeeinrueckung"><code>width:25%;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#textbereich  {</code></li>
<li class="codeeinrueckung"><code>float:left;</code></li>
<li class="codeeinrueckung"><code>width:46%;</code></li>
<li class="codeeinrueckung"><code>margin-left:2%;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#rechts  {</code></li>
<li class="codeeinrueckung"><code>float:right;</code></li>
<li class="codeeinrueckung"><code>width:25%;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandunten0">Die drei Spalten sind schon mal nebeneinander, aber das Ganze ist noch ziemlich grau.</p>
<p>Habt ihr euch nicht gewundert, das die mittlere Spalte (<code>div#textbereich</code>) nur <code>46% Breite</code> und ein <code>margin-left</code> von <code>2%</code> hat?</p>
<p>Prozentwerte für Spaltenbreiten können so manchen Browser ins <em>Trudeln</em> bringen. Wenn alles <em>auf Kante genäht</em> ist kann es leicht zu Rundungsfehlern kommen und die Floats brechen dann eventuell um.</p>
<p>Deshalb lasse ich da immer etwas Luft. Die <code>margin-left:2%;</code> brauche ich damit der Inhalt dann auch wirklich mittig sitzt.</p>
<p class="abstandoben2">Laßt uns jetzt mal die Grafiken einbauen.</p>
<p class="abstandunten0">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>body  {</code></li>
<li class="codeeinrueckung"><code>background:#dedede url(linke_seite.png) repeat-y 25% 0;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#umhang  {</code></li>
<li class="codeeinrueckung"><code>background: url(rechte_seite.png) repeat-y 75% 0;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Da pro Element nur eine Hintergrundgrafik erlaubt ist und wir aber zwei Grafiken einbauen müssen hat <code>body</code> die linke Spaltengrafik und <code>div#umhang</code> die rechte Spaltengrafik bekommen.</p>
<p class="abstandoben">Zwischenstand im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/fc_liquid_mitte.png" alt="Liquid-Faux-Columns - Fertig" width="500" height="217" /></p>
<p class="abstandoben abstandunten0">Interessant!</p>
<p class="abstandunten0">Die rechte Spaltengrafik, die ja <code>div#umhang</code> zugewiesen wurde, geht nicht bis nach unten.</p>
<p><code>div#umhang</code> braucht <code>min-height:100%;</code>. Damit das auch klappt brauchen <code>body</code> und <code>html</code> eine Höhe von 100%. Warum habe ich in <a href="http://webdesign-passau.com/wordpress/foot-sticker-alt/">diesem Artikel</a> ausführlich erklärt.</p>
<p>Es muss auch noch etwas <code>padding</code> vergeben werden, damit der Text nicht in die Schatten hineinragt.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>html,</code></li>
<li><code>body  {</code></li>
<li class="codeeinrueckung"><code>height:100%;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#umhang</code></li>
<li class="codeeinrueckung"><code>height:100%;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#links p  {</code></li>
<li class="codeeinrueckung"><code>padding:1em 1.5em 0 1em;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#textbereich p  {</code></li>
<li class="codeeinrueckung"><code>padding:1em;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#rechts p  {</code></li>
<li class="codeeinrueckung"><code>padding:1em 1em 0 2em;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Ergebnis im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/fc_liquid_fertig.png" alt="Liquid-Faux-Columns - Fertig" width="500" height="190" /></p>
<p class="abstandoben">Schaut doch schon recht ordentlich aus.</p>
<p>Der IE 6 kennt <code>min-height</code> leider nicht, deshalb braucht er per Conditional Comment <code>height</code>, das er fälschlicherweise wie <code>min-height</code> behandelt.</p>
<p>Der IE 7 hat einen Fehler beim <em>Seitenzoom</em>. Um das zu beheben bekommt <code>html</code> die linke Spaltengrafik noch einmal zugewiesen.</p>
<p class="abstandunten0 abstandoben2">Bitte den Conditional Comment ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;!--[if lte IE 8]&gt;</code></li>
<li><code>&lt;style type=&quot;text/css&quot;&gt;</code></li>
<li><code>* html #umhang {</code></li>
<li class="codeeinrueckung"><code>height: 100%;</code></li>
<li><code>}</code></li>
<li><code>*+html {</code></li>
<li class="codeeinrueckung"><code>background:#dedede url(linke_seite.png) 25% 0 repeat-y;</code></li>
<li><code>}</code></li>
<li><code>&lt;/style&gt;</code></li>
<li><code>&lt;![endif]--&gt;</code></li>
</ul>
</div>
<p class="abstandunten0">Bei den Grafiken ist der Bereich, der nicht zum Einfärben der Spalte benötigt wird transparent.</p>
<p>Da hier das <code>div#umhang</code> über die gesamte Breite des sichtbaren Bereichs geht, wird die Transparenz benötigt, damit der Hintergrund von <code>body</code> (linke Spalte!!) nicht verdeckt wird.</p>
<p>Das wäre es normalerweise, aber fragt ihr euch nicht auch warum z.B. die HG-Grafik für die linke Seite ganz links anfängt und nicht nach 25% von links aus gesehen?</p>
<p class="abstandunten0">Wenn ihr Hintergrundbilder mit Prozentwerten positionieren wollt, wird der diesem Prozentwert entsprechende Punkt des Bildes am entsprechenden Punkt des Elementes <em>befestigt</em>.</p>
<p>Das Ganze funktioniert bei Prozentwerten für die Positionierung des HG-Bildes also anders wie wir es normalerweise gewohnt sind.</p>
<p class="abstandunten0 abstandoben">Eine kleine Beispielzeichnung zur Veranschaulichung:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/fc_liquid_zeichnung.png" alt="Liquid-Faux-Columns - Fertig" width="500" height="99" /></p>
<p class="abstandoben abstandunten0"><code>body</code> geht über die ganze Breite des Viewports und hat die <strong>untere</strong> Grafik der Beispielzeichnung zugewiesen bekommen.</p>
<p>Wir haben für die Positionierung des HG-Bildes <code>background-position:25% 0;</code> notiert, also 25% von links.</p>
<p>Nun wird aber nicht die linke obere Ecke des HG-Bildes an diesen Punkt genagelt, sondern wir gehen mit dem Finger im HG-Bild 25% (650px) nach rechts und nageln genau diesen Punkt im Viewport 25% vom linken Rand aus gesehen fest.</p>
<p class="abstandoben2 abstandunten0"><code>div#umhang</code> geht auch über die ganze Breite des Viewports und hat die <strong>obere</strong> Grafik der Beispielzeichnung zugewiesen bekommen.</p>
<p>Wir haben für die Positionierung des HG-Bildes <code>background-position:75% 0;</code> notiert, also 75% von links.</p>
<p>Nun wird aber nicht die linke obere Ecke des HG-Bildes an diesen Punkt genagelt, sondern wir gehen mit dem Finger im HG-Bild 75% (1950px) nach rechts und nageln genau diesen Punkt im Viewport 75% vom linken Rand aus gesehen fest.</p>
<p class="abstandoben2">Inspiriert von:<a href="http://www.galileocomputing.de/1668?GPP=fcsst2" title="Externer Link">Fortgeschrittene CSS-Techniken</a></p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/faux-columns-liquid/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Navi &#8211; CSS-Tabelle</title>
		<link>http://webdesign-passau.com/wordpress/navi-css-tabelle/</link>
		<comments>http://webdesign-passau.com/wordpress/navi-css-tabelle/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 05:21:31 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[Navigationen]]></category>
		<category><![CDATA[CSS-Tabelle]]></category>
		<category><![CDATA[mehrzeilig]]></category>
		<category><![CDATA[menü]]></category>
		<category><![CDATA[navi]]></category>
		<category><![CDATA[Tabelle]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=324</guid>
		<description><![CDATA[Ein horizontales Menü dessen Links teilweise zwei,- und/oder dreizeilig sind, lassen sich mithilfe einer CSS-Tabelle recht gut gestalten. Die Vorteile der Tabellendarstellung bestehen darin, dass die Tabellenzellen einer Zeile immer gleich hoch sind und sich immer auf die gesamte Breite der Tabelle verteilen. Es gibt keinen Umbruch der Tabellenzellen und die Inhalte fließen nicht über. [...]]]></description>
			<content:encoded><![CDATA[<p>Ein horizontales Menü dessen Links teilweise zwei,- und/oder dreizeilig sind, lassen sich mithilfe einer <em>CSS-Tabelle</em> recht gut gestalten.</p>
<p>Die Vorteile der Tabellendarstellung bestehen darin, dass die Tabellenzellen einer Zeile immer gleich hoch sind und sich immer auf die gesamte Breite der Tabelle verteilen. Es gibt keinen Umbruch der Tabellenzellen<br />
und die Inhalte fließen nicht über.<span id="more-324"></span></p>
<p class="abstandoben2">Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/navi_tabelle_anfang.htm">navi_tabelle_anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Die benötigten Grafiken kannst du dir hier holen: <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/navi_tabelle_grafik.htm">navi_tabelle_grafik.htm</a></p>
<p>Im Browser schaut es so ungfähr aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/navi_tabelle_anfang.png" alt="Menü mit CSS-Tabelle - Anfang" width="480" height="215" /></p>
<p class="abstandunten0 abstandoben2">Der Quellcode des Navi-Containers schaut so aus:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;div id=&quot;navi&quot;&gt;</code></li>
<li><code>&lt;ul id=&quot;navigation&quot;&gt;</code></li>
<li><code>&lt;li&gt;&lt;a href=&quot;#&quot;&gt;&lt;span&gt;Windows&lt;/span&gt; Betriebssystem&lt;/a&gt;&lt;/li&gt;</code></li>
<li><code>&lt;li&gt;&lt;a href=&quot;#&quot;&gt;&lt;span&gt;Linux&lt;/span&gt; Betriebssystem&lt;/a&gt;&lt;/li&gt;</code></li>
<li><code>&lt;li&gt;&lt;a href=&quot;#&quot;&gt;&lt;span&gt;Mac&lt;/span&gt; Betriebssystem&lt;/a&gt;&lt;/li&gt;</code></li>
<li><code>&lt;li&gt;&lt;a href=&quot;#&quot;&gt;&lt;span&gt;Klemptnersglück&lt;/span&gt; Betriebssystem&lt;br /&gt;Gibts das?&lt;/a&gt;&lt;/li&gt;</code></li>
<li><code>&lt;/ul&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
</ul>
</div>
<p class="abstandunten0">Und wo ist jetzt die Tabelle, werdet ihr euch vielleicht jetzt fragen?</p>
<p>Im Quelltext werden wir sie nicht anlegen. Sie wird ausschließlich über CSS-Eigenschaften und Werte<br />
realisiert!</p>
<p class="abstandunten0 abstandoben2">Fangen wir also mit CSS-Ergänzungen an:</p>
<div class="beitragscode">
<ul>
<li><code>div#navi  {</code></li>
<li class="codeeinrueckung"><code>display:table;</code></li>
<li class="codeeinrueckung"><code>width:100%;</code></li>
<li class="codeeinrueckung"><code>background:#f8e580 url(navi_tabelle_verlauf.png) repeat-x left top;</code></li>
<li class="codeeinrueckung"><code>border-bottom:1px solid #a8a79f;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>div#navi ul  {</code></li>
<li class="codeeinrueckung"><code>display:table-row;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>div#navi ul li  {</code></li>
<li class="codeeinrueckung"><code>display:table-cell;</code></li>
<li class="codeeinrueckung"><code>vertical-align:top; <span class="kommentarfarbe">/* Text wird oben in der Zelle angeordnet */</span></code></li>
<li class="codeeinrueckung"><code>text-align:center;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p><code>div#navi</code> wird zur <em>Tabelle</em>, die <code>ul</code> zur <em>Tabellenzeile</em><br />
und die Listenpunkte zur <em>Tabellenzelle</em>. <code>div#navi</code> hat eine horizontale Verlaufsgrafik zugewiesen bekommen.</p>
<p class="abstandoben2">Zwischenstand im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/navi_tabelle_mitte.png" alt="Menü mit CSS-Tabelle - Mitte" width="480" height="165" /></p>
<p class="abstandoben">Noch nicht perfekt, aber auch nicht ganz schlecht.</p>
<p class="abstandunten0">Als nächstes bekommen alle Listenpunkte im Quelltext <strong>bis auf den ersten</strong> die Klasse <code>.trennlinie</code> zugewiesen.</p>
<p>Der erste Listenpunkt bekommt die Klasse nicht, weil sonst der Außenrahmen vom <code>div#umhang</code> in Höhe des Menüs auf der linken Seite <code>1px</code> breiter wäre als überall sonst. Das mag optisch kaum ins Gewicht fallen, aber mich stört es schon weil ich es weiss.</p>
<p>Die Links und das <code>span</code> wo wir das jeweils erste Wort des Linktextes eingewickelt haben werden gleich mitgestaltet.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>.trennlinie  {</code></li>
<li class="codeeinrueckung"><code>background: url(navi_tabelle_linie.png) repeat-y left top;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>div#navi li a  {</code></li>
<li class="codeeinrueckung"><code>display:block;</code></li>
<li class="codeeinrueckung"><code>color:#995d08;</code></li>
<li class="codeeinrueckung"><code>font-size:0.8em;</code></li>
<li class="codeeinrueckung"><code>text-decoration:none;</code></li>
<li class="codeeinrueckung"><code>padding:0.5em 0;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>div#navi ul li a:hover  {</code></li>
<li class="codeeinrueckung"><code>color:#d90000;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>div#navi ul li a span  {</code></li>
<li class="codeeinrueckung"><code>display:block;</code></li>
<li class="codeeinrueckung"><code>font-size:1.5em;</code></li>
<li class="codeeinrueckung"><code>line-height:1.1;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Ergebnis im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/navi_tabelle_fertig.png" alt="Menü mit CSS-Tabelle - Fertig" width="480" height="165" /></p>
<p class="abstandoben">Soweit, sogut. Was ist mit dem IE 6/7?</p>
<p class="abstandunten0">Wir erleben die übliche, böse Überraschung.</p>
<p>Alle Menüpunkte stehen untereinander, weil der IE 6/7 mit <code>display:table/table-row/table- cell</code> nix anfangen kann.</p>
<p>Die <em>Conditional Comments</em> werden nun ausgiebig mit Anweisungen gefüllt, damit diese Browser unser Menü vernünftig umsetzen.</p>
<p class="abstandunten0 abstandoben2">Bitte den Conditional Comment ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code class="kommentarfarbe">&lt;!--[if lte IE 8]&gt;&lt;style type=&quot;text/css&quot;&gt;</code></li>
<li><code>*+html #navi ul li  {</code></li>
<li class="codeeinrueckung"><code>width:24.9%;</code></li>
<li class="codeeinrueckung"><code>display:inline;</code></li>
<li class="codeeinrueckung"><code>zoom:1;</code></li>
<li><code>}</code></li>
<li><code>* html #navi ul li  {</code></li>
<li class="codeeinrueckung"><code>width:24.9%;</code></li>
<li class="codeeinrueckung"><code>display:inline;</code></li>
<li class="codeeinrueckung"><code>zoom:1;</code></li>
<li><code>}</code></li>
<li><code class="kommentarfarbe">&lt;/style&gt;&lt;![endif]--&gt;</code></li>
</ul>
</div>
<p class="abstandunten0">Mit <code>display:inline;</code> und <code>zoom:1;</code> wird ein <em>Inlineblock-</em>ähnliches Verhalten für den IE 6/7 erzeugt.</p>
<p>Eine feste Breite von etwas weniger als 25% wird zugewiesen. Etwas weniger deshalb, um Rundungsfehler abzufangen.</p>
<p>Die Listenpunkte stehen schon mal nebeneinander. Leider verlängert sich die vertikale Trenngrafik für die Listenpunkte nicht bis unten.</p>
<p>Ein Griff in die Trickkiste wird fällig!</p>
<p class="abstandunten0 abstandoben2">Bitte den Conditional Comment ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code class="kommentarfarbe">&lt;!--[if lte IE 8]&gt;&lt;style type=&quot;text/css&quot;&gt;</code></li>
<li><code>*+html div#navi ul li  {</code></li>
<li class="codeeinrueckung"><code>padding-bottom:6em;</code></li>
<li class="codeeinrueckung"><code>margin-bottom:-5.5em;</code></li>
<li><code>}</code></li>
<li><code>* html div#navi ul li  {</code></li>
<li class="codeeinrueckung"><code >padding-bottom:6em;</code></li>
<li class="codeeinrueckung"><code>margin-bottom:-5.5em;</code></li>
<li><code>}</code></li>
<li><code class="kommentarfarbe">&lt;/style&gt;&lt;![endif]--&gt;</code></li>
</ul>
</div>
<p>Die Listenpunkte bekommen ein unmäßiges unteres <code>padding</code> und zum Ausgleich ein fast genauso großes unteres <code>margin</code>.</p>
<p>Im IE 6 ist nun alles korrekt. Der IE7 macht es im Prinzip auch richtig, jedoch ragen die senkrechten HG-Grafiken für die Listenpunkte nach unten heraus.</p>
<p class="abstandunten0 abstandoben2">Bitte den Conditional Comment ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code class="kommentarfarbe">&lt;!--[if lte IE 8]&gt;&lt;style type=&quot;text/css&quot;&gt;</code></li>
<li><code>*+html div#navi ul {</code></li>
<li class="codeeinrueckung"><code>overflow-y:hidden;</code></li>
<li><code>}</code></li>
<li><code class="kommentarfarbe">&lt;/style&gt;&lt;![endif]--&gt;</code></li>
</ul>
</div>
<p>Mit dieser Anweisung stimmt es jetzt auch im IE 7.</p>
<p class="abstandoben2">Zu erwähnen wäre noch, dass wenn die Navigation den ganzen sichtbaren Bereich einnimmt, d.h. ohne Begrenzung durch ein umgebendes Element ist, der IE7 eine <em>Mindestbreite</em> braucht, um bei kleinem Viewport eine Überlappung der Linktexte zu verhindern (<code>min-width:40em;</code> z.B.).</p>
<p>Des Weiteren können die Listenpunkte in diesem Fall beim Verkleinern des Viewportes in die nächste Zeile umbrechen. Um das zu verhindern bekommt die <code>ul white-space:nowrap;</code> zugewiesen.</p>
<p>Damit die Linktexte über zwei oder mehr Zeilen laufen können benötigt <code>a</code> gleichzeitig noch <code>white-space:normal;</code>.</p>
<p>Natürlich alles per Conditional Comment.</p>
<p class="abstandoben">Diese Art der Menügestaltung kommt sicher nicht allzuhäufig zur Anwendung, da der Teufel hier im Detail steckt. Aber gut zu wissen, das es so auch geht.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/navi-css-tabelle/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Runde Ecken 3</title>
		<link>http://webdesign-passau.com/wordpress/runde-ecken-3/</link>
		<comments>http://webdesign-passau.com/wordpress/runde-ecken-3/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 05:33:26 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[HG-Grafik]]></category>
		<category><![CDATA[Hintergrundgrafik]]></category>
		<category><![CDATA[runde Ecken]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=307</guid>
		<description><![CDATA[Zwei Artikel zu Boxen mit abgerundeten Ecken habe ich bereits verfasst: Runde Ecken 1 und Runde Ecken 2. Im dritten Artikel wird die Box mit runden Ecken am Ende voll flexibel sein, d.h. sie hält einer Schriftvergrößerung von sechs Stufen stand. Hier findest du die rundeecken3_anfang.htm zum Quelltext rauskopieren. Die benötigten Grafiken kannst du dir [...]]]></description>
			<content:encoded><![CDATA[<p class="abstandunten0">Zwei Artikel zu Boxen mit abgerundeten Ecken habe ich bereits verfasst:<br />
<a href="http://webdesign-passau.com/wordpress/runde-ecken-1">Runde Ecken 1</a> und <a href="http://webdesign-passau.com/wordpress/runde-ecken-2">Runde Ecken 2</a>.</p>
<p>Im dritten Artikel wird die Box mit runden Ecken am Ende voll flexibel sein, d.h. sie hält einer Schriftvergrößerung von sechs Stufen stand.<span id="more-307"></span></p>
<p class="abstandoben2">Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken3_anfang.htm">rundeecken3_anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Die benötigten Grafiken kannst du dir hier holen: <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken3_grafik.htm">rundeecken3_grafik.htm</a></p>
<p>Bitte denkt daran, den Hintergrund der Ecken <strong>nicht</strong> transparent zu machen, sondern in der Farbe des Hintergrundes vom Container, wo die Grafik drinhockt!</p>
<p class="abstandoben">Zur Verdeutlichung habe ich die vier Grafiken mal in einem Tableau zusammengefasst:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rund3_grafiken_schaubild.png" alt="Schaubild Grafiken" width="494" height="312" /></p>
<p class="abstandoben">In diesem Fall sind es vier Grafiken, d.h. wir benötigen leider zusätzliche Elemente.</p>
<p class="abstandoben2">Deshalb schauen wir uns erstmal den Quelltext an:</p>
<div class="beitragscode">
<ul>
<li><code>&lt;div class=&quot;container&quot;&gt;</code></li>
<li><code>&lt;div class=&quot;container_innen&quot;&gt;</code></li>
<li><code>&lt;div class=&quot;container_ganzinnen&quot;&gt;</code></li>
<li><code>&lt;h2&gt;Box mit runden Ecken&lt;/h2&gt;</code></li>
<li><code>&lt;p&gt;Diese Box ist..........usw.&lt;/p&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
<li><code>&lt;/div&gt;</code></li>
</ul>
</div>
<p class="abstandunten0">Zwei weitere Elemente sind hinzugekommen:</p>
<p><code>div.container_innen</code> und <code>div.container_ganzinnen</code>.</p>
<p>Die Maßeinheiten habe ich konsequent in <code>em</code> abgeändert, damit die Box auch bei Textvergrößerung in alle Richtungen gleichmäßig mitwächst.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>.container  {</code></li>
<li class="codeeinrueckung"><code>background:#b2f8a8 url(rund3_untenlinks.gif) no-repeat left bottom;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>.container .container_innen  {</code></li>
<li class="codeeinrueckung"><code>background: url(rund3_untenrechts.gif) no-repeat right bottom;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>.container .container_ganzinnen  {</code></li>
<li class="codeeinrueckung"><code>background: url(rund3_obenlinks.gif) no-repeat left top;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>.container h2  {</code></li>
<li class="codeeinrueckung"><code>background: url(rund3_obenrechts.gif) no-repeat right top;</code></li>
<li class="codeeinrueckung"><code>padding-top:0.3em;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>.container p  {</code></li>
<li class="codeeinrueckung"><code>padding: 0.5em;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandoben2">Ergebnis im Browser:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken3_fertig.png" alt="Runde Ecken 3 - Fertig" width="400" height="213" /></p>
<p class="abstandoben2">Ist ja fast zu einfach. Was kann denn dabei schiefgehen?</p>
<p class="abstandunten0">Einiges!</p>
<p>In diesem Beispiel habe ich <code>padding</code> erst definiert <strong>nachdem</strong> ich die Grafiken eingebunden habe.<br />
Mit <code>margin</code> würde ich es genauso machen.</p>
<p>Ganz schnell sind nämlich statt vier runden Ecken z.B. nur eine oder drei da. Dann geht das wilde Rumgefuchtel mit verschiedenen <code>paddings/margins</code> los, die man vielleicht ja schon definiert hatte, <strong>bevor</strong> man die Grafiken eingebunden hat.</p>
<p>Deshalb bin ich da erstmal vorsichtig, setze alle <code>paddings</code> und <code>margins</code> für die Box auf null und ergänze dann die Abstände mit ständiger Zwischenkontrolle im Browser vorsichtig.</p>
<p>Außerdem verwechselt man beim Einbinden der Grafiken z.B. schnell mal <code>left bottom</code> mit <code>right bottom</code> oder <code>left top</code> mit <code>left bottom</code>, usw..</p>
<p>Ein wenig muss man auch schauen welche Grafik man welchem Element zuteilt, damit es nicht zu unliebsamen Überraschungen kommt.</p>
<p>Wie immer sehr hilfreich bei der Fehlersuche ist das <em>Firefox Addon</em> <a href="https://addons.mozilla.org/de/firefox/addon/1843" title="Externer Link">Firebug</a>, hier ein <a href="http://t3n.de/magazin/css-bearbeiten-firebug-web-layouts-analysieren-variieren-220315/" title="Externer Link">deutsches Tutorial</a> dazu.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/runde-ecken-3/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Runde Ecken 1</title>
		<link>http://webdesign-passau.com/wordpress/runde-ecken-1/</link>
		<comments>http://webdesign-passau.com/wordpress/runde-ecken-1/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 06:55:04 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[Hintergrundgrafik]]></category>
		<category><![CDATA[rounded corner]]></category>
		<category><![CDATA[runde Ecken]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=296</guid>
		<description><![CDATA[Container problemlos mit runden Ecken auszustatten wird erst mit CSS 3 kommen. Im Firefox kann man heute schon mit die Anweisung -moz-border-radius einer Box abgerundete Ecken verpassen. Browserübergreifend geht das heute nur mit Grafiken, etwas CSS und je nach Anforderung mit zusätzlichen Boxen. Im einfachsten Fall brauchen wir zwei Grafiken und kein zusätzliches Element. Diese [...]]]></description>
			<content:encoded><![CDATA[<p>Container problemlos mit runden Ecken auszustatten wird erst mit <em>CSS 3</em> kommen. Im Firefox kann man heute schon mit die Anweisung <code>-moz-border-radius</code> einer Box abgerundete Ecken verpassen.</p>
<p>Browserübergreifend geht das heute nur mit Grafiken, etwas CSS und je nach Anforderung mit zusätzlichen Boxen.</p>
<p>Im einfachsten Fall brauchen wir zwei Grafiken und <strong>kein</strong> zusätzliches Element. Diese Box wächst dann nur vertikal, was in vielen Fällen sicher ausreicht.<span id="more-296"></span></p>
<p class="abstandoben2">Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken1_anfang.htm">rundeecken1_anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Die benötigten Grafiken kannst du dir hier holen: <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken1_grafik.htm">rundeecken1_grafik.htm</a></p>
<p>Du brauchst die Grafiken nicht mal selber zu erstellen, das kannst du auch online mit wenigen Klicks auf <a href="http://roundedcornr.com/" title="Externer Link">RoundedCornr</a>.</p>
<p>Bitte denkt daran, den Hintergrund der Ecken <strong>nicht</strong> transparent zu machen, sondern in der Farbe des Hintergrundes vom Container, wo die Grafik drinhockt!</p>
<p>Die Grafiken schauen so aus::</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rund_oben.png" alt="Obere Grafik" width="400" height="50" /><br />
<img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rund_unten.png" alt="Untere Grafik" width="400" height="50" /></p>
<p class="abstandoben">Die obere Grafik wird der Box zugewiesen und die untere Grafik drücken wir dem Textabsatz aufs Auge.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#container  {</code></li>
<li class="codeeinrueckung"><code>background:#b2f8a8 url(rund_oben.png) no-repeat left top;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#container p  {</code></li>
<li class="codeeinrueckung"><code>background:transparent url(rund_unten.png) no-repeat left bottom;</code></li>
<li class="codeeinrueckung"><code>padding:0 15px 15px 15px;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p class="abstandoben2">So schauts im Browser aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken1_fertig.png" alt="Runde Ecken 1 - Fertig" width="438" height="207" /></p>
<p class="abstandoben abstandunten0">Das wars schon!</p>
<p>Wenn ihr mehr erwartet habt muss ich euch leider enttäuschen. Es funktioniert problemlos mit allen gängigen Browsern.</p>
<p>Ihr müßt nur aufpassen wenn die Box mehr als einen Textabsatz hat. Dann bekommt der letzte Textabsatz in der Box einfach eine Klasse mit der Hintergrundgrafik zugewiesen.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/runde-ecken-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Runde Ecken 2</title>
		<link>http://webdesign-passau.com/wordpress/runde-ecken-2/</link>
		<comments>http://webdesign-passau.com/wordpress/runde-ecken-2/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 06:07:15 +0000</pubDate>
		<dc:creator>Klaus</dc:creator>
				<category><![CDATA[XHTML/CSS]]></category>
		<category><![CDATA[HG-Grafik]]></category>
		<category><![CDATA[Hintergrundgrafik]]></category>
		<category><![CDATA[runde Ecken]]></category>

		<guid isPermaLink="false">http://webdesign-passau.com/wordpress/?p=301</guid>
		<description><![CDATA[In meinem letzten Artikel Runde Ecken 1 habe ich die einfachste Form einer relativ flexiblen Box mit abgerundeten Ecken erklärt. Die nächste Stufe ist eine teilflexible Box mit Rahmen. Hier findest du die rundeecken2_anfang.htm zum Quelltext rauskopieren. Die benötigten Grafiken kannst du dir hier holen: rundeecken2_grafik.htm. Du brauchst die Grafiken nicht mal selber zu erstellen, [...]]]></description>
			<content:encoded><![CDATA[<p class="abstandunten0">In meinem letzten Artikel <a href="http://webdesign-passau.com/wordpress/runde-ecken-1">Runde Ecken 1</a> habe ich die einfachste Form einer relativ flexiblen Box mit abgerundeten Ecken erklärt.</p>
<p>Die nächste Stufe ist eine teilflexible Box mit Rahmen.<span id="more-301"></span></p>
<p class="abstandoben2">Hier findest du die <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken2_anfang.htm">rundeecken2_anfang.htm</a> zum Quelltext rauskopieren.</p>
<p>Die benötigten Grafiken kannst du dir hier holen: <a href="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken2_grafik.htm">rundeecken2_grafik.htm</a>.</p>
<p>Du brauchst die Grafiken nicht mal selber zu erstellen, das kannst du auch online mit wenigen Klicks auf <a href="http://roundedcornr.com/" title="Externer Link">RoundedCornr</a>.</p>
<p>Bitte denkt daran, den Hintergrund der Ecken <strong>nicht</strong> transparent zu machen, sondern in der Farbe des Hintergrundes vom Container, wo die Grafik drinhockt!</p>
<p>Die Grafiken schauen so aus::</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rund2_oben.gif" alt="Obere Grafik" width="400" height="50" /><br />
<img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rund2_mitte.gif" alt="Mittlere Grafik" width="400" height="50" /><br />
<img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rund2_unten.gif" alt="Untere Grafik" width="400" height="50" /></p>
<p class="abstandoben2">Zwei Grafiken sind in diesem Fall leider nicht ausreichend, da sich beim Vergrößern der Rahmen nicht automatisch verlängert. Das geht nur wenn die mittlere Grafik mit <code>repeat-y</code> eingebunden wird.</p>
<p>Die gute Nachricht ist, das wir immer noch kein zusätzliches Element brauchen.</p>
<p>Die Box bekommt die mittlere Grafik, die <code>h2</code>-Überschrift die obere Grafik und der Textabsatz die untere Grafik.</p>
<p class="abstandunten0 abstandoben2">Bitte CSS ergänzen:</p>
<div class="beitragscode">
<ul>
<li><code>#container  {</code></li>
<li class="codeeinrueckung"><code>background:#b2f8a8 url(rund2_mitte.gif) repeat-y left top;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#container h2  {</code></li>
<li class="codeeinrueckung"><code>background:url(rund2_oben.gif) no-repeat left top;</code></li>
<li><code>}</code></li>
</ul>
<ul>
<li><code>#container p  {</code></li>
<li class="codeeinrueckung"><code>background:url(rund2_unten.gif) no-repeat left bottom;</code></li>
<li class="codeeinrueckung"><code>padding:0 12px 12px 12px;</code></li>
<li><code>}</code></li>
</ul>
</div>
<p>Im Browser schaut es so aus:</p>
<p><img src="http://webdesign-passau.com/wordpress/wp-content/uploads/2009/09/rundeecken2_fertig.png" alt="Runde Ecken 2 - Fertig" width="" height="" /></p>
<p class="abstandoben2 abstandunten0">Das wars schon!</p>
<p>Vielleicht fragt ihr euch, warum die Ecken oben auch rund sind. Schließlich haben wir der Box die mittlere Grafik gegeben und die hat oben keine runden Ecken.</p>
<p class="abstandunten0">Ganz einfach, die <code>h2</code>-Überschrift steht im Quelltext <strong>nach</strong> dem Eröffnungs-Tag der Box, d.h. die Hintergrundgrafik der Überschrift überdeckt deshalb die Hintergrundgrafik der Box.</p>
<p>Wenn euch nicht so klar ist warum das so schaut euch mal <a href="http://webdesign-passau.com/wordpress/stapelung-1/">diesen Artikel</a> an.</p>
]]></content:encoded>
			<wfw:commentRss>http://webdesign-passau.com/wordpress/runde-ecken-2/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
