<?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>Sebastian Stöhr</title> <atom:link href="http://www.sebastianstoehr.de/feed/" rel="self" type="application/rss+xml" /><link>http://www.sebastianstoehr.de</link> <description>Webdesigner und -entwickler</description> <lastBuildDate>Sun, 19 Feb 2012 15:08:47 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>YouTube-Videos in Lightbox</title><link>http://www.sebastianstoehr.de/2011/10/youtube-videos-in-lightbox/</link> <comments>http://www.sebastianstoehr.de/2011/10/youtube-videos-in-lightbox/#comments</comments> <pubDate>Sun, 02 Oct 2011 06:06:30 +0000</pubDate> <dc:creator>Sebastian Stöhr</dc:creator> <category><![CDATA[Quicktipp]]></category> <category><![CDATA[Webdesign]]></category><guid isPermaLink="false">http://www.sebastianstoehr.de/?p=236</guid> <description><![CDATA[Viele eingebundene YouTube-Videos auf einer Seite sind schlecht für die Performance - Abhilfe schafft das Laden von YouTube-Videos in einer Lightbox.]]></description> <content:encoded><![CDATA[<p>Wenn man viele YouTube-Videos auf einer Seite einbinden möchte, sieht die Seite schnell überladen aus. Zudem belasten viele eingebundene Flash-Filme auch die Performance.<br /> <span id="more-236"></span><br /> Eine Alternative stellt das Laden der YouTube-Videos in einer Lightbox dar. Alles, was man dazu braucht, ist eines der vielen Lightbox-Skripte. Ich werde auf die <a href="http://fancybox.net/" rel="external" title="Fancybox für jQuery">Fancybox</a> (nutzt jQuery) zurückgreifen. Man kann diesen Code-Schnipsel aber auch auf andere Lightboxen portieren, die das Öffnen von iFrames erlauben.</p><h4>Das fertige Skript</h4><div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">jQuery<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
  jQuery<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;a.youtube&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #003366; font-weight: bold;">var</span> youtube_id <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">href</span>.<span style="color: #660066;">match</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">new</span> RegExp<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;(youtube.com/watch<span style="color: #000099; font-weight: bold;">\\</span>?v=|youtu.be/)([a-zA-Z0-9_-]+)&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;i&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>youtube_id<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      youtube_id <span style="color: #339933;">=</span> youtube_id<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">//VIDEO-ID		</span>
      jQuery.<span style="color: #660066;">fancybox</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
        <span style="color: #3366CC;">'autoScale'</span>	<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'transitionIn'</span>	<span style="color: #339933;">:</span> <span style="color: #3366CC;">'elastic'</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'transitionOut'</span>	<span style="color: #339933;">:</span> <span style="color: #3366CC;">'elastic'</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'width'</span>		<span style="color: #339933;">:</span> <span style="color: #CC0000;">640</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'height'</span>	<span style="color: #339933;">:</span> <span style="color: #CC0000;">385</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'title'</span>		<span style="color: #339933;">:</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">title</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'href'</span>		<span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;http://www.youtube.com/embed/&quot;</span> <span style="color: #339933;">+</span> youtube_id <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;/&quot;</span><span style="color: #339933;">,</span>
        <span style="color: #3366CC;">'type'</span>		<span style="color: #339933;">:</span> <span style="color: #3366CC;">'iframe'</span>
      <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
      <span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>		
<span style="color: #009900;">&#125;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div><p>Die Grundidee stammt dabei von der Fancybox-Seite selbst: <a href="http://fancybox.net/blog#tip4" rel="external" title="YouTube-Clips">Fancybox: Show youtube clips</a><br /> Allerdings verwende ich den iFrame-Embed-Code, da dieser YouTube die Wahl zwischen Flash- und HTML5-Player überlässt und man dadurch auch auf Plattformen ohne Flash (z.B. iOS) noch die Chance hat, dass das Video abgespielt wird.</p><h4>So wird&#8217;s genutzt</h4><p>Das Skript erwatet Links auf YouTube-Videos und öffnet diese dann bei aktiviertem JavaScript in einer Lightbox. Wenn kein JavaScript aktiviert ist, dann funktioniert der Link wie gehabt und führt den Besucher auf die YouTube-Seite des Videos.</p><div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;a</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;http://www.youtube.com/watch?v=5D__rKR44-8&quot;</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;youtube&quot;</span> <span style="color: #000066;">title</span>=<span style="color: #ff0000;">&quot;Video in einer Lightbox&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Video<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/a<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div><p>Dabei kann innerhalb des Links beliebiger Inhalte stehen. Man kann also z.B. auch Video-Thumbnails in dieser Form verlinken!<br /> Das <code>title</code>-Attribut wird später unterhalb der Fancybox angezeigt werden.</p><h4>So funktioniert&#8217;s</h4><p>Beim Klick auf den Link mit der Klasse <code>.youtube</code> wird das obige JavaScript ausgeführt. Dieses ermittelt die Video-ID aus der URL und öffnet dann das Video in der Lightbox. Dazu nutzt es den YouTube-iFrame-Embed-Code.<br /> Knackpunkt bei dieser Version ist noch der reguläre Ausdruck. YouTube nutzt einige unterschiedliche Link-Formate, die allesamt von dem regulären Ausdruck abgedeckt werden müssen. Bislang werden lediglich Links der Form <code>"youtube.com/watch?v=VIDEOID"</code> (Parameter &#8220;v&#8221; an erster Stelle) und <code>"youtu.be/VIDEOID"</code> unterstützt. Das lässt sich aber jederzeit um neue Linkformate erweitern.</p><h4>Demo</h4><p><a href="http://youtube.com/watch?v=5D__rKR44-8" class="youtube" title="Coca Cola - Werbespot"><div id="attachment_253" class="wp-caption alignnone" style="width: 320px"><img src="http://s1.sstoehr.de/wp-content/uploads/2011/10/youtube-fancybox.jpg" alt="" title="YouTube in Fancybox" width="310" height="204" class="size-full wp-image-253" /><p class="wp-caption-text">Ein Klick auf das Bild öffnet ein Video in der Fancybox</p></div></a></p> ]]></content:encoded> <wfw:commentRss>http://www.sebastianstoehr.de/2011/10/youtube-videos-in-lightbox/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Responsive Webdesign</title><link>http://www.sebastianstoehr.de/2011/09/responsive-webdesign/</link> <comments>http://www.sebastianstoehr.de/2011/09/responsive-webdesign/#comments</comments> <pubDate>Thu, 08 Sep 2011 08:58:38 +0000</pubDate> <dc:creator>Sebastian Stöhr</dc:creator> <category><![CDATA[Webdesign]]></category><guid isPermaLink="false">http://www.sebastianstoehr.de/?p=201</guid> <description><![CDATA[Mit CSS3 Media Queries kann man Webseiten so stylen, dass sie sich dem Ausgabegerät (Auflösung, ...) anpassen.]]></description> <content:encoded><![CDATA[<p><strong>Responsive Webdesign</strong> ist aktuell der Trend &#8211; Ziel ist es, Webseiten so umzusetzen, dass sie sich automatisch dem Anzeigegerät (insbesondere der Bildschirmauflösung) anpassen. In Zeiten von Smartphones und mobilem Internet die Alternative zur extra angepassten mobilen Webseite?<br /> <span id="more-201"></span></p><h3>Kurz &amp; knapp: Responsive Webdesign</h3><p>Eine kleine Demonstration von Responsive Webdesign bietet diese Webseite: Wenn man das Browserfenster verkleinert, dann passt sich die Webseite -bei Unterschreiten einer Grenzbreite- an, indem die Seitenleiste verschwindet und die Navigation ihre Position verändert:<br /><div id="attachment_224" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.sebastianstoehr.de/wp-content/uploads/2011/09/desktop-vs-mobile.png"><img src="http://s1.sstoehr.de/wp-content/uploads/2011/09/desktop-vs-mobile-300x153.png" alt="" title="Responsive Webdesign: Desktop- &amp; Mobile-Version" width="300" height="153" class="size-medium wp-image-224" /></a><p class="wp-caption-text">Die Seitenleiste wird in der Mobile-Version ausgeblendet, die Navigation wechselt ihre Position</p></div><p>Das alles ist komplett ohne JavaScript realisiert &#8211; möglich wird das mit den <a href="http://www.w3.org/TR/css3-mediaqueries/" rel="external" title="W3C: Media Queries"><strong>CSS3 Media Queries</strong></a>.</p><div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #a1a100;">@media screen and (max-width: 800px) {		</span>
   <span style="color: #808080; font-style: italic;">/* Hier Anweisungen, die nur für Bildschirme mit max. 800px Breite gelten sollen */</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div><p>Oder auch als separates Stylesheet:</p><div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;link</span> <span style="color: #000066;">rel</span>=<span style="color: #ff0000;">&quot;stylesheet&quot;</span> <span style="color: #000066;">media</span>=<span style="color: #ff0000;">&quot;screen and (max-width: 800px)&quot;</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;http://…&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></div></div><p>Media Queries werden bereits von allen modernen Browsern unterstützt (<a href="http://caniuse.com/css-mediaqueries" rel="external" title="Browserkompatibilität auf caniuse.com">Mehr zur Browserkompatibilität</a>).</p><p>Da viele mobile Browser die Seite skalieren und die Media Queries dadurch nicht greifen, ist ein <code>&lt;meta name="viewport"&gt;</code>-Tag notwendig (<a href="https://developer.mozilla.org/en/mobile/viewport_meta_tag" rel="external" title="mozilla.org: &lt;meta&gt;-Tag viewport">Mehr Informationen</a>):</p><div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;meta</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;viewport&quot;</span> <span style="color: #000066;">content</span>=<span style="color: #ff0000;">&quot;width=device-width, initial-scale=1, maximum-scale=1&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></div></div><h3>Vor- &amp; Nachteile</h3><p>Ein klarer Vorteil ist die einfache Anwendung: Ohne eine eigenständige Mobilewebseite mit Browserweiche, o.Ä. betreiben zu müssen, hat man mit wenigen Handgriffen eine Webseite, die für die mobile Nutzung angepasst ist.</p><p>Die einfache Anwendung schränkt natürlich auch ein: Mit Media Queries ist es z.B. nicht möglich, für mobile Geräte optimierte Bilder auszuliefern. Sicher: Man kann die Bilder per CSS skalieren &#8211; aber die Daten werden dennoch (in voller Auflösung) übertragen.<br /> Das selbe gilt für HTML-Elemente: Man kann sie zwar ausblenden, aber auch sie werden auf das Gerät übertragen.<br /> Zwar ist mobiles Internet nicht mehr so langsam wie vor einigen Jahren, aber auf eine hohe Bandbreite kann (und sollte) man sich eben noch nicht verlassen.</p><div class="comparison clearfix"><div class="positive"><h4>Vorteile</h4><ul><li>Einfach und ohne CMS-Anpassungen zu implementieren</li></ul></div><div class="negative"><h4>Nachteile</h4><ul><li>Gleiches Markup für Desktop- und Mobile-Version (Datenübertragung!)</li><li>Gleiche Bildressourcen (Volle Auflösung auch für mobile Endgeräte &#8211; Datenübertragung!)</li></ul></div></div><p>Extra angepasste mobile Webseiten bieten einiges an Mehrwert gegenüber Webseiten, die lediglich per Media Query angepasst wurden: So kann man das HTML-Markup abspecken, runterskalierte Bilder ausliefern, und, und, und.</p><p><em>Media Queries sind natürlich nicht nur auf Mobilgeräte beschränkt. Man kann mit ihnen Webseiten auch für unterschiedliche (Desktop-)Monitorauflösungen anpassen und vieles mehr: <a href="http://mediaqueri.es/" rel="external" title="Media Queries im Einsatz">Beispiele für Seiten, die Media Queries nutzen</a></em></p> ]]></content:encoded> <wfw:commentRss>http://www.sebastianstoehr.de/2011/09/responsive-webdesign/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Google und rel=&#8221;author&#8221;</title><link>http://www.sebastianstoehr.de/2011/08/google-und-relauthor/</link> <comments>http://www.sebastianstoehr.de/2011/08/google-und-relauthor/#comments</comments> <pubDate>Sun, 28 Aug 2011 13:12:48 +0000</pubDate> <dc:creator>Sebastian Stöhr</dc:creator> <category><![CDATA[Suchmaschinen]]></category><guid isPermaLink="false">http://www.sebastianstoehr.de/?p=176</guid> <description><![CDATA[Mit rel="author" kann man den Verfasser eines Artikels für Google verständlich auszeichnen (Rich Snippets) - Man benötigt lediglich ein Google+-Profil und etwas Markup!]]></description> <content:encoded><![CDATA[<p>Google unterstützt seit kurzem die Auswertung des <code>rel="author"</code>-Attributs. Damit ermöglicht man Google eine bessere Zuordnung von Inhalten zu Autoren. Wie wird das <code>rel="author"</code>-Attribut verwendet? Welche Vorteile bietet das für Webseitenbetreiber?<br /> <span id="more-176"></span></p><h3>Wie man <code>rel="author"</code> einsetzt:</h3><p>Eins vorweg: Ohne <a href="http://plus.google.com/" rel="external" title="Google+">Google Profil</a> kommt man nicht weit! Google verlangt einen Link von der eigenen Webseite auf sein Profil &#8211; und quasi zur Bestätigung einen Link vom Profil zurück auf die Internetseite.</p><p>Es gibt unterschiedliche Möglichkeiten, wie man diese Links setzen kann. Ich nutze eine separate Autorenseite. Webseiten, die nur von einem Autoren betreut werden, können sich diese Seite oftmals sparen &#8211; dazu später mehr.</p><ol><li>Deine Inhalte verweisen auf eine Autorenseite (z.B. mit einer Biographie, einer Übersicht deiner Artikel, &#8230;). Dieser Link wird mit einem Attribut <code>rel="author"</code> ausgezeichnet:<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;a</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;/uber-mich/&quot;</span> <span style="color: #000066;">rel</span>=<span style="color: #ff0000;">&quot;author&quot;</span> <span style="color: #000066;">title</span>=<span style="color: #ff0000;">&quot;Über mich&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Über mich<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/a<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div></li><li>Auf der Autorenseite platzierst du einen Link zu deinem <em>Google+</em>-Profil:<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;a</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;http://plus.google.com/117741749300587886396/&quot;</span> <span style="color: #000066;">rel</span>=<span style="color: #ff0000;">&quot;me&quot;</span> <span style="color: #000066;">title</span>=<span style="color: #ff0000;">&quot;Google+&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Google+<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/a<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div></li><li>Nun musst du nur noch die URL deiner Webseite in dein <em>Google+</em>-Profil eintragen.</li><li>Google bietet mit dem <a href="http://www.google.com/webmasters/tools/richsnippets" rel="external" title="Rich Snippets Testing Tool">Rich Snippets Testing Tool</a> eine Möglichkeit dein Markup zu testen.</li></ol><p>Wer ohne die zusätzliche Autorenseite auskommen will, kann ganz einfach einen <a href="http://www.google.com/webmasters/profilebutton/" rel="external" title="Google+ Buttons"><em>Google+</em>-Profilbutton</a> verwenden. Diesen einfach auf der eigene Seite einbinden und <a href="http://www.google.com/webmasters/tools/richsnippets" rel="external" title="Rich Snippets Testing Tool">überprüfen</a>. Fertig!</p><h3>Vorteile für Webseitenbetreiber</h3><p>Seitenbetreiber, die auf diese Weise auf ihr Google-Profil verlinken, haben die Chance, dass Google ihre Seiten in den Suchergebnissen prominenter anzeigt. Nein, das Ranking an sich wird dadurch (bislang?) noch nicht beeinflusst &#8211; aber die Art der Darstellung!</p><div id="attachment_181" class="wp-caption aligncenter" style="width: 569px"><a href="http://www.sebastianstoehr.de/wp-content/uploads/2011/08/rel-author.jpg"><img src="http://s1.sstoehr.de/wp-content/uploads/2011/08/rel-author.jpg" alt="Seite mit rel=&quot;author&quot; in den Google-Suchergebnissen (Montage)" title="Google-Suchergebnis" width="559" height="108" class="size-full wp-image-181" /></a><p class="wp-caption-text">Seite mit rel=&quot;author&quot; in den Google-Suchergebnissen (Montage)</p></div><p>Allerdings ist das reine Setzen dieser Profillinks kein Garant dafür, dass Google die Profilinformationen auch anzeigt. Sollte das Profilbild auch nach einiger Zeit noch fehlen, lohnt sich ein Blick in Googles <a href="http://knol.google.com/k/google-rich-snippets-tips-and-tricks#How_do_I_get_Rich_Snippets_to_show_up_for_my_site%283F%29" rel="external" title="FAQ für Rich Snippets">FAQ</a>, die einige mögliche Ursachen aufzählen.</p> ]]></content:encoded> <wfw:commentRss>http://www.sebastianstoehr.de/2011/08/google-und-relauthor/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
