﻿<?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>J. Pedro Ribeiro</title> <atom:link href="http://jpedroribeiro.com/feed/" rel="self" type="application/rss+xml" /><link>http://jpedroribeiro.com</link> <description>Brazilian web designer writing about design, photography, illustrations and his projects.</description> <lastBuildDate>Wed, 15 Feb 2012 18:56:12 +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>CSS Only Drop Down Menu</title><link>http://jpedroribeiro.com/2012/02/css-only-drop-down-menu/</link> <comments>http://jpedroribeiro.com/2012/02/css-only-drop-down-menu/#comments</comments> <pubDate>Wed, 01 Feb 2012 03:37:36 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[Front-End Development]]></category> <category><![CDATA[css]]></category> <category><![CDATA[drop-down]]></category> <category><![CDATA[front-end development]]></category> <category><![CDATA[html]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=126</guid> <description><![CDATA[No more javascript or hacks. Learn how to create a usable html + css only drop down menu. <a
href="http://jpedroribeiro.com/2012/02/css-only-drop-down-menu/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><img
src="http://jpedroribeiro.com/wp-content/uploads/2012/01/css-only-drop-down.jpg" alt="CSS Only Drop Down Menu" title="css only drop down" class="alignnone size-full wp-image-213" /></p><p>Drop Down menu is an excellent alternative for complex menus, the ones with a variety of categories and subcategories to choose from. In this article, I&#8217;ll show how I usually code this kind of menu without using any javascript of back-end functionality.</p><h2>The Goal</h2><p>We are going to aim for a simple usable menu with links and sub-menus. It will work on most browsers (IE, FF, Chrome, Opera) with graceful degradation on the outdated ones.</p><h2>The Markup</h2><p>Our menu is an ordered list.<br
/> Why ordered you ask? Well I&#8217;ll consider this our main menu (on header &gt; nav) so the items/links have a logic on its own. There is a meaning for placing &#8216;About Us&#8217; before &#8216;Contact&#8217; (even thought it&#8217;s not numerical or alphabetical order). Therefore, it&#8217;s an ordered menu.</p><p>So here it is:</p><pre>&lt;ol&gt;
    &lt;li&gt;&lt;a href='/About' title='About Us'&gt;About Us&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href='/Products' title='Products'&gt;Products&lt;/a&gt;
        &lt;ol&gt;
            &lt;li&gt;&lt;a href='/Accessories' title='Accessories'&gt;Accessories&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='/Laptops' title='Laptops'&gt;Laptops&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='/Macs' title='Macs'&gt;Macs&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='/Pcs' title='PCs'&gt;PCs&lt;/a&gt;&lt;/li&gt;
        &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;a href='/Support' title='Support'&gt;Support&lt;/a&gt;
        &lt;ol&gt;
            &lt;li&gt;&lt;a href='/FAQ' title='FAQ'&gt;FAQ&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='/VideoTour' title='Video Tour'&gt;Video Tour&lt;/a&gt;&lt;/li&gt;
        &lt;/ol&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;a href='/Contact' title='Contact'&gt;Contact&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;</pre><h2>Styling</h2><p>Now, the fun part. I will use some basic design styles just to make the menu more clear, but you can edit colours, fonts, sizes the way you want.</p><pre>ol {
    font-family: arial;
    font-size: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative
}
ol li {
    float: left;
    margin: 0 5px 5px 0;
    position: relative;
}
ol li a, ol li:hover ol li a {
    background: #f4f4f4;
    border: 1px solid #eee;
    color: #555;
    padding: 5px;
    text-decoration: none;
    display: block;
    white-space: nowrap
}
ol li:hover a {
    background: #555;
    color: #f4f4f4;
}
ol li ol li:hover a {
    background: #222;
    color: #f4f4f4;
}
ol li ol {
    left: 0;
    position: absolute;
    top: 26px;
    padding-top: 5px;
    display: none;
}
ol li:hover ol {
    display: block;
    position: absolute</pre><p>What basically is happening is that we are hiding the second level menu via <em>display:none</em> and showing it when the user hovers over the parent list item (last style declaration).</p><h3>IE7</h3><p>As always, there&#8217;s a bug on IE7 where you have to set a background to an object in order to handle the <em>:hover</em> selector. This happens on objects that have position: absolute, which is the case of our menu. To fix this, the easiest way is to add a fake image to it, like:</p><pre>&lt;!--[if lte IE 7]&gt;
    &lt;style&gt;
        ol li ol {background: url(none);}
    &lt;/style&gt;
&lt;![endif]--&gt;</pre><h3>IE6</h3><p>Sadly, IE6 can&#8217;t handle :hover on list elements. There are some hacks and javascript to enable it but I prefer to use another approach and just show it like a simple menu for these users. In this conditional comment, we will be resetting the &#8220;mouse over&#8221; effect to the anchor element instead.</p><pre>&lt;!--[if lte IE 6]&gt;
    &lt;style&gt;
        ol li a:hover {background: #555; color: #f4f4f4;}
        ol li ol li a:hover {background: #222; color: #f4f4f4;}
    &lt;/style&gt;
&lt;![endif]--&gt;</pre><h2>Conclusion</h2><p>You can use different properties on the :hover state, like visibility, left and top positioning and also add css transitions to make the change smoother, but our goal was to do something simple, a base where you can build upon.<br
/> One drawback of using a drop down menu is that you can &#8220;hover&#8221; over elements on a touchscreen device. That&#8217;s why we make all items of our menu link to a page, so if the user can&#8217;t hover to see the product list they can still navigate through our site.</p><p><a
href='http://jpedroribeiro.com/wp-content/uploads/2012/01/css-only-drop-down.html'><strong>VIEW DEMO</strong></a></p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2012/02/css-only-drop-down-menu/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Book Review: Smashing Book 2</title><link>http://jpedroribeiro.com/2012/01/book-review-smashing-book-2/</link> <comments>http://jpedroribeiro.com/2012/01/book-review-smashing-book-2/#comments</comments> <pubDate>Wed, 18 Jan 2012 00:00:28 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[Book Reviews]]></category> <category><![CDATA[books]]></category> <category><![CDATA[smashing magazine]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=209</guid> <description><![CDATA[Finished reading Smashing Book 2 and I got disappointed. It looks good, feels good, covers a variety of topics, but to me it just doesn't work. <a
href="http://jpedroribeiro.com/2012/01/book-review-smashing-book-2/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><img
src="http://jpedroribeiro.com/wp-content/uploads/2012/01/buch_dummy_big_3.png" alt="" title="smashing book 2" class="alignnone size-full wp-image-210" /></p><p>A couple months ago I finished reading <a
href="https://shop.smashingmagazine.com/smashing-book-2.html" title="Buy The Book">The Smashing Book 2</a> from the popular web design blog <a
href="http://www.smashingmagazine.com/">Smashing Magazine</a>. Just like with the first book, I got disappointed. It <strong>looks good</strong>, it <strong>feels good</strong> (awesome printing), it covers a variety of topics, but to me it just doesn&#8217;t work.</p><p>For starter, it feels like a bunch of <strong>blog articles</strong> put together. I can&#8217;t feel the connection among them. Like I said, it covers a wide range of topics, from e-commerce to mobile, typography and print design. I found myself skipping several pages until finding something that I&#8217;m actually interested in. Too many different areas covered also means I won&#8217;t use the <a
href="http://jpedroribeiro.com/tag/books/">book</a> as a quick reference. Maybe this was intentional so they could reach a broader audience, just a guess.</p><p>One chapter in particular covers <strong>design patterns</strong> in e-commerce based on a research with over 50 websites. Even though the content and results are well put together, this is hardly something I want to read in a book. It would make more sense to see it in a <strong>magazine </strong>as the results will become dated very fast.</p><p><strong>The Smashing Book 2</strong> is not a bad book. It is well written and the authors go very deep into each chapter, they are very informative although not so useful in practise. The chapters cover a lot about strategy and theory.</p><p>It&#8217;s a great improvement from their first try and I&#8217;m sure a lot of people will like it. It just isn&#8217;t the book I was expecting considering what <strong>Smashing Magazine</strong> represents to the web community.</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2012/01/book-review-smashing-book-2/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>So&#8230; I Finally Redesigned My Site</title><link>http://jpedroribeiro.com/2012/01/so-i-finally-redesigned-my-site/</link> <comments>http://jpedroribeiro.com/2012/01/so-i-finally-redesigned-my-site/#comments</comments> <pubDate>Fri, 13 Jan 2012 03:59:17 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[web design]]></category> <category><![CDATA[process]]></category> <category><![CDATA[redesign]]></category> <category><![CDATA[wordpress]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=205</guid> <description><![CDATA[Took me a while but I finally managed to redesign this site. Four years is enough time, people change and so must this blog. <a
href="http://jpedroribeiro.com/2012/01/so-i-finally-redesigned-my-site/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><img
src="http://jpedroribeiro.com/wp-content/uploads/2012/01/redesign.jpg" alt="Website, Redesigned" title="redesign" class="alignnone size-full wp-image-206" /></p><p>Nearly 4 years ago, back in 2008, I decided to create a <strong>blog</strong> and write about all the stuff I was reading and doing, mostly <strong>web</strong> related. Took me a while to learn <strong>WordPress</strong>, how to create a brand new theme and customise it. It went ok, and <a
href="http://jpedroribeiro.com/other-portals-that-showcase-this-website/" title="feedback">I got nice feedback</a>. But time passes by, people change and so must this site.</p><h2>Design</h2><p>On the first version I was very into <strong>textures </strong>and <strong>retro </strong>feeling. I kind of overdid it to my current taste. So in this new theme I decided to go <strong>minimal</strong>: subtle texture in the background, little graphics (mostly icons) and kept the dark colour scheme.</p><h2>Content</h2><p>As you can see, this site is heavily focused on the blog entries. <a
href="http://jpedroribeiro.com/portfolio/" title="Portfolio">Portfolio</a>, about me and everything else is secondary.<br
/> <strong>Comments</strong> are off. I realised that only 5-10% of comments were meaningful and from those, about half were actually interesting comments to the post. Also, most people would contact me via <a
href="http://twitter.com/jpedroribeiro" title="Follow me on Twitter">Twitter</a> anyway so I saw no reason to keep it.</p><h2>Development</h2><p>Even though the design is minimal, the <strong>coding</strong> is quite complex. On the front-end side, I used <strong>HTML5</strong> markup mostly, with some <strong>CSS3</strong> techniques for visual richness and a bit of <strong>jQuery</strong>. The back-end is, clearly <strong>WordPress</strong>, so I made use of the new features available at version 3+ like Custom Menus, Custom Fields, Featured Images, and so on. I learned A LOT about WordPress during this stage.</p><h2>And It&#8217;s Here!</h2><p>Took me a while to finish it, I&#8217;d say about three months on and off since I could only work on it weekends and some free nights. Anyway, hope you like this new version. If you have any question about techniques, codes, plugins, or anything used in this site just drop me a <a
href="http://twitter.com/jpedroribeiro" title="Twitter">tweet</a> or <a
href="http://jpedroribeiro.com/contact-me/" title="Contact Me">e-mail</a>.<br
/> Cheers!</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2012/01/so-i-finally-redesigned-my-site/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>HTML Coding For E-mail Marketing</title><link>http://jpedroribeiro.com/2011/07/html-coding-for-e-mail-marketing/</link> <comments>http://jpedroribeiro.com/2011/07/html-coding-for-e-mail-marketing/#comments</comments> <pubDate>Thu, 21 Jul 2011 16:21:42 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[E-mail Marketing]]></category> <category><![CDATA[e-mail]]></category> <category><![CDATA[html]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=120</guid> <description><![CDATA[Creating a successful <strong>e-mail marketing</strong> campaign requires several items: a valid product or service to offer, selected target audience and, to make everything work, a fail-proof <strong>html</strong>. <a
href="http://jpedroribeiro.com/2011/07/html-coding-for-e-mail-marketing/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2011/07/html-coding-for-e-mail-marketing/"><img
title="HTML Coding For E-mail Marketing" src="http://jpedroribeiro.com/wp-content/uploads/2011/07/email-marketing.jpg" border="0" alt="HTML Coding For E-mail Marketing" /></a></p><p>Creating a successful <strong>e-mail marketing</strong> campaign requires several items: a valid product or service to offer, selected target audience and, to make everything work, a fail-proof <strong>html</strong>.</p><h2>Old Style HTML</h2><p>Coding for e-mail is completely different than coding <a
href="http://jpedroribeiro.com/portfolio/">websites</a>. E-mail clients software render e-mails in different ways just as <strong>browser</strong>-based e-mail services. The <strong>HTML</strong> for this media is mostly outdated, deprecated and messy, at least it will be if you want to make them work on all (or most) clients.</p><h2>What About CSS?</h2><p>Most of the <strong>CSS</strong> you know is useless for e-mails, but depending on your target audience you might be able to go a bit further. <strong>Campaign Monitor</strong> keeps an updated table with the <a
href="http://www.campaignmonitor.com/css/" target="_blank">current CSS support in e-mails</a>, so keep that page in your bookmark for future references.</p><h2>Tips to Code a Fail Proof E-mail</h2><p><strong>Structure</strong>: Put semantics aside and bring those &lt;table&gt; tags back. Since most of the styling won&#8217;t behave as we want, we are going to have to use tables for positioning the design. Don&#8217;t forget to set cellpadding and cellspacing to 0.<br
/> <strong>Images</strong>: Use border 0 and display: block on every images, they avoid that extra spacing around the image, specially on Gmail clients. If you are using images inside table cells, add a background colour to the cell, since some users might have turned off images display (use alt tags as well).<br
/> <strong>Text</strong>: Although some platforms will render css text styling, I recommend going back to the deprecated &lt;font&gt;. You can use a styled <span> inside the <font> for modern clients.</p><h2>Test, Test, Test</h2><p>After all is done, <strong>test as much as you can</strong>. You&#8217;ll probably be fine if the e-mail work on Gmail, Hotmail and Outlook, so try to focus on those first. Providing a link to a <strong>browser version</strong> of the e-mail on the top (and bottom) of your e-mail is also a common standard.</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2011/07/html-coding-for-e-mail-marketing/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Book Review: Hardboiled Web Design</title><link>http://jpedroribeiro.com/2011/06/book-review-hardboiled-web-design/</link> <comments>http://jpedroribeiro.com/2011/06/book-review-hardboiled-web-design/#comments</comments> <pubDate>Thu, 16 Jun 2011 02:30:00 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[Book Reviews]]></category> <category><![CDATA[books]]></category> <category><![CDATA[css3]]></category> <category><![CDATA[html5]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=118</guid> <description><![CDATA[Andy Clarke's long-waited book, <strong><a
href="http://hardboiledwebdesign.com/" target="blank">Hardboiled Web Design</a></strong>, brings new ideas on website development. It's packed with HTML5 and CSS3 but with a different take. A <em>hard-ass</em> approach using the latest, emerging technologies. <a
href="http://jpedroribeiro.com/2011/06/book-review-hardboiled-web-design/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2011/06/book-review-hardboiled-web-design/"><img
title="Book Review: Hardboiled Web Design" src="http://jpedroribeiro.com/wp-content/uploads/2011/06/hardboiled.jpg" border="0" alt="Book Review: Hardboiled Web Design" /></a></p><p>Andy Clarke&#8217;s long-waited book, <strong><a
href="http://hardboiledwebdesign.com/" target="blank">Hardboiled Web Design</a></strong>, brings new ideas on website development. It&#8217;s packed with HTML5 and CSS3 but with a different take. A <em>hard-ass</em> approach using the latest, emerging technologies.</p><p><span
id="more-118"></span></p><p>I&#8217;ve got to admit that I&#8217;m a big fan of <a
href="http://stuffandnonsense.co.uk/" target="blank">Andy</a>&#8216;s work. <a
href="http://www.transcendingcss.com/">Transcending CSS</a> had a huge impact on <a
href="http://jpedroribeiro.com/portfolio/">my work</a> and the way I used to see markup and styling. And I had the same feeling after reading this book.</p><h2>Hardboiled</h2><p>As the book says: &#8220;<em>&#8216;Hardboiled&#8217; web design is about never compromising on creating the best we can for the web. Hardboiled is about challenging assumptions.</em>&#8220;. This is just to give an idea of the tone used by the author throughout the book. Basically, the idea is to use all <strong>technologies</strong> available to us right now and not letting <a
href="http://jpedroribeiro.com/2010/06/cross-browser-testing-resources/">browser capabilities</a> drag us down.</p><h2>The Book</h2><p>Beautifully illustrated and designed, the book itself it&#8217;s different than everything you&#8217;ll ever see in the category. It&#8217;s one of a kind. It&#8217;s also a huge book with nearly <strong>400 pages</strong> divided into 4 big chapters.</p><p>Each segment within these chapters is loaded with <strong>HTML5</strong> and <strong>CSS3</strong> techniques deeply explained (in a hardboiled way, of course) and exemplified using the book&#8217;s case study, plus, the author shows us real websites that are using it and gives us directions if we want further knowledge on the subject.</p><p>The book is available at Five Simple Steps. What are you waiting for? <a
href="http://www.fivesimplesteps.com/products/hardboiled-web-design" target="blank">Buy it now</a>!</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2011/06/book-review-hardboiled-web-design/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Creating Expandable Banners with Flash and Javascript</title><link>http://jpedroribeiro.com/2011/06/creating-expandable-banners-with-flash-and-javascript/</link> <comments>http://jpedroribeiro.com/2011/06/creating-expandable-banners-with-flash-and-javascript/#comments</comments> <pubDate>Sat, 04 Jun 2011 21:13:37 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[web design]]></category> <category><![CDATA[banner]]></category> <category><![CDATA[flash]]></category> <category><![CDATA[javascript]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=112</guid> <description><![CDATA[A very popular ad type in portals and blogs, the expandable banner is a useful technique to display more content to a banner. It's a very simple concept: the banner initially starts with a standard size and then increase when the user interacts (rollover or click) with it. <a
href="http://jpedroribeiro.com/2011/06/creating-expandable-banners-with-flash-and-javascript/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2011/06/creating-expandable-banners-with-flash-and-javascript/"><img
title="Creating Expandable Banners with Flash and Javascript" src="http://jpedroribeiro.com/wp-content/uploads/2011/06/expandable-banner.jpg" border="0" alt="Creating Expandable Banners with Flash and Javascript" /></a></p><p>A very popular ad type in portals and blogs, the expandable banner is a useful technique to display more content to a banner. It&#8217;s a very simple concept: the banner initially starts with a standard size and then increase when the user interacts (rollover or click) with it.</p><p>In this tutorial, we are going to create the expandable banner by following 3 steps:</p><ol><li>Create a Flash banner with the original size and the expanded animation.</li><li>Build a expandable area for the banner with HTML &amp; CSS.</li><li>Develop a small javascript to enable communication between the Flash banner and the HTML file.</li></ol><h2>1) The Flash Animation</h2><p>Start by creating your animation in a canvas as big as the expanded part to be. In this example, my banner will expand from 600&#215;150 to 600&#215;300, so the latter is my canvas size.</p><p>We are going to use 4 layers (although you might use more if needed): <em>hit area</em> &#8211; for our mouse events, <em>stage</em> &#8211; as a guide, <em>mask</em> &#8211; to hide and show different areas of the canvas and <em>content</em>.</p><p><img
src="http://jpedroribeiro.com/wp-content/uploads/2011/06/flash-layers.png" alt="flash layers" title="flash-layers" width="511" height="187" class="alignnone size-full wp-image-114" /></p><p>In the <strong>hit area</strong>, we place a button with this actionscript:</p><pre>
on(rollOver)	{
  getURL("javascript:expand();");
  gotoAndPlay("Start");
}

on(rollOut)	{
  gotoAndPlay("Finish");
  getURL("javascript:retract();");
}

on(release)	{
  getURL("http://www.jpedroribeiro.com/", "_top");
}
</pre><p>As you can see we are going to call a <strong>javascript</strong> on these two mouse events that will expand and retract the flash area, the third event is the click which will take us to our desired link.<br
/> In the <strong>mask</strong> layer, create a shape object and animate it to hide the extra content. Don&#8217;t worry about the canvas size, we will take care of it next.</p><h2>2) The HTML</h2><p>We are going to use 2 DIVs here, the parent one with a set position and the child one containing the embedded Flash and using CSS to clip its area.</p><pre>&lt;div style=&quot;position: relative; width: 600px; height: 150px&quot;&gt;
    &lt;div id=&quot;exp-banner&quot; style=&quot; position:absolute;clip: rect(0px 600px 150px 0px)&quot;&gt;
        &lt;object&gt;...&lt;/object&gt;
    &lt;/div&gt;
&lt;/div&gt;</pre><p>Now we just need some script to dynamically change those attributes.</p><h2>3) Interaction</h2><p>Finally, the JavaScript. Here we will set the CSS attribute <em>clip</em> of the child DIV to 300px height when the user hovers our banner and 150px when he moves away from it.</p><pre>function expand() {
    document.getElementById("exp-banner").style.clip="rect(0px 600px 300px 0px)";
}
function retract() {
    document.getElementById("exp-banner").style.clip="rect(0px 600px 150px 0px)";
}</pre><p>To get a smoother result, you should only call the <em>retract</em> function when your animation reverted back to its standard height.</p><h2>Demo &amp; Source Files</h2><p>Putting all together, you should come with something like this. <a
href="http://jpedroribeiro.com/wp-content/uploads/2011/06/expandable.html" target="_blank">Check out the <strong>demo page</strong></a> and feel free to <strong>download </strong>the original <a
href="http://jpedroribeiro.com/wp-content/uploads/2011/06/expandable.fla">Flash file</a>.</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2011/06/creating-expandable-banners-with-flash-and-javascript/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Please Start From The Beginning&#8230;</title><link>http://jpedroribeiro.com/2011/02/please-start-from-the-beginning/</link> <comments>http://jpedroribeiro.com/2011/02/please-start-from-the-beginning/#comments</comments> <pubDate>Sun, 20 Feb 2011 23:09:29 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[Interviews]]></category> <category><![CDATA[interview]]></category> <category><![CDATA[podcast]]></category> <category><![CDATA[transcription]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=109</guid> <description><![CDATA[A couple of weeks ago I had the pleasure of doing some transcription <a
href="http://jpedroribeiro.com/portfolio/">work</a> for the podcast called "<a
href="http://psftb.ryanhavoctaylor.com/" target="blank">Please start from the beginning...</a>", a video series exploring the career paths and experiences of web industry professionals. <a
href="http://jpedroribeiro.com/2011/02/please-start-from-the-beginning/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2011/02/please-start-from-the-beginning/"><img
title="Please Start From The Beginning..." src="http://jpedroribeiro.com/wp-content/uploads/2011/02/psftb.jpg" border="0" alt="Please Start From The Beginning..." /></a></p><p>A couple of weeks ago I had the pleasure of doing some transcription <a
href="http://jpedroribeiro.com/portfolio/">work</a> for the podcast called &#8220;<a
href="http://psftb.ryanhavoctaylor.com/" target="blank">Please start from the beginning&#8230;</a>&#8220;, a video series exploring the career paths and experiences of web industry professionals.</p><h2>The Podcast</h2><p>PSFTB (as I&#8217;ll call it from here) is a project run by <a
href="http://ryanhavoctaylor.com/" target="blank">Ryan &#8220;Havoc&#8221; Taylor</a>, a British designer and developer that works at <a
href="http://www.headscape.co.uk/" target="blank">Headscape</a> and also freelances at <a
href="http://www.havocinspired.co.uk/" target="blank">Havoc Inspired</a>. The weekly podcast interviews <a
href="http://psftb.ryanhavoctaylor.com/interviews/" target="blank">amazing people</a> from the web design industry from all over the world.</p><h2>Transcribing, Learning, Enjoying</h2><p>The <a
href="http://psftb.ryanhavoctaylor.com/design/naomi-atkinson/" target="blank">interview I transcribed</a> was with the lovely <a
href="http://naomiatkinson.com/" target="blank">Naomi Atkinson</a>. She talked about her career, clients, being a freelancer and expectations for the future of the web industry.</p><p>It was a fun experiment and a good experience to me to transcribe an interview in English, as I&#8217;m not a native speaker of the language. I had a great time doing it and hopefully, if my schedule allows it, I&#8217;ll do it again.</p><p>Check out this and other great interviews at <a
href="http://psftb.ryanhavoctaylor.com/" target="blank">Please start from the beginning&#8230;</a>.</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2011/02/please-start-from-the-beginning/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Photoshop: Quick Guide to Smart Object &amp; Smart Filters</title><link>http://jpedroribeiro.com/2011/01/photoshop-quick-guide-to-smart-object-smart-filters/</link> <comments>http://jpedroribeiro.com/2011/01/photoshop-quick-guide-to-smart-object-smart-filters/#comments</comments> <pubDate>Tue, 18 Jan 2011 00:04:35 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[web design]]></category> <category><![CDATA[photoshop]]></category> <category><![CDATA[smart objects]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=103</guid> <description><![CDATA[<em>Smart Object </em>and <em>Smart Filter</em> are two extremely useful features in <strong>Photoshop</strong> that will boost your design productivity. This is an easy to master technique that go hand in hand with any type of project. <a
href="http://jpedroribeiro.com/2011/01/photoshop-quick-guide-to-smart-object-smart-filters/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2011/01/photoshop-quick-guide-to-smart-object-smart-filters/"><img
title="Photoshop: Quick Guide to Smart Object &#038; Smart Filters" src="http://jpedroribeiro.com/wp-content/uploads/2011/01/smart-objects.jpg" border="0" alt="Photoshop: Quick Guide to Smart Object &#038; Smart Filters" /></a></p><p><em>Smart Object </em>and <em>Smart Filter</em> are two extremely useful features in <strong>Photoshop</strong> that will boost your design productivity. This is an easy to master technique that go hand in hand with any type of project.</p><h2>The Power of Vectors</h2><p>What Smart Objects do is basically treat any raster file like a vector. You can <strong>scale</strong> it down and scale it up again without losing resolution or pixelating your object. Scaling up is another business, you can only go as far as the original image. This resource is great for adding logos to <a
href="http://jpedroribeiro.com/portfolio/">web design</a> mockups for example. You can use only one instance throughout the whole project with different sizes.</p><h2><em>One Object to Rule Them All</em></h2><p>Another nice touch about the Smart Object is that when you do some changes to the object, all instances will be updated simultaneously. No more copying styles from layer to layer!</p><h2><em>Filters?</em></h2><p><strong>Smart Filters</strong> work in a similar way. After creating your smart object, any filter applied to it will be a smart filter automatically. The advantages are: you can edit the filter after you applied it, pretty much like <strong>Fireworks </strong>do it (or <em>Layer Styles</em> in <strong>Photoshop</strong>). You can also copy filter to other layers if you like.</p><h2><em>Creating Smart Objects and Smart Filters</em></h2><p>So now we understand how it works in theory, let&#8217;s see how can we take advantage of this features and apply it to our design projects.</p><p><strong>Smart Objects</strong></p><ol><li>First, select the layer containing the image you want to turn into a Smart Object;</li><li>Right-click and select Convert to Smart Object;</li><li><strong>Done!</strong> Now your layer has a small icon showing that it is now a Smart Object.<br
/> (Note: To turn your layer back into an raster object, double-click the layer and select Rasterize Layer)</li></ol><p><img
src="http://jpedroribeiro.com/wp-content/uploads/2011/01/smart-1.png" alt="Creating Smart Objects" width="434" height="615" /></p><p><strong>Smart Filters</strong></p><ol><li>Select a layer with your Smart Object;</li><li>Go to the Filter menu and select a filter of your choice;</li><li><strong>Done!</strong> Now your Smart Object has a filter that can be updated any time you want. Also, you can copy this filter to another Smart Object by holding the ALT key and dragging it.</ol><p><img
src="http://jpedroribeiro.com/wp-content/uploads/2011/01/smart-2.png" alt="Creating Smart Filters"  width="600" height="461" /></p><p>Play around with this feature and <a
href="http://jpedroribeiro.com/2011/01/photoshop-quick-guide-to-smart-object-smart-filters/#comments">let me know</a> if you got any question. Cheers!</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2011/01/photoshop-quick-guide-to-smart-object-smart-filters/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Cross Browser Testing Resources</title><link>http://jpedroribeiro.com/2010/06/cross-browser-testing-resources/</link> <comments>http://jpedroribeiro.com/2010/06/cross-browser-testing-resources/#comments</comments> <pubDate>Tue, 15 Jun 2010 16:32:49 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[Resources]]></category> <category><![CDATA[browser]]></category> <category><![CDATA[front-end development]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=97</guid> <description><![CDATA[Following up on my article about <a
href="http://jpedroribeiro.com/2009/10/why-should-i-care-about-ie6/">using or not IE6</a>, I've selected a few <strong>tools</strong> to help you test your website on different browsers. Most of them are free and very easy to use. <a
href="http://jpedroribeiro.com/2010/06/cross-browser-testing-resources/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2010/06/cross-browser-testing-resources/"><img
title="Cross Browser Testing Resources" src="http://jpedroribeiro.com/wp-content/uploads/2010/06/cross-browser-testing-resources.jpg" border="0" alt="Cross Browser Testing Resources" /></a></p><p>Following up on my article about <a
href="http://jpedroribeiro.com/2009/10/why-should-i-care-about-ie6/">using or not IE6</a>, I&#8217;ve selected a few <strong>tools</strong> to help you test your website on different browsers. Most of them are free and very easy to use.</p><p>As a <strong>front-end developer</strong>, your task is to make a <strong>design </strong>run smoothly on any kind of platform &#8211; In a perfect world maybe!<br
/> We know how most devices and softwares have limitations (or the project&#8217;s budget) so what we must is to assure we do our best to maintain a good user experience. Also, websites don&#8217;t need to look exactly the same in every browser, <a
href="http://dowebsitesneedtolookexactlythesameineverybrowser.com/" targer="blank">or do they</a>?</p><p>Since we can&#8217;t always install all <strong>browsers</strong> in all their versions we have to rely on third-party solutions to fill this gap. These tools are the ones I often use on my <strong>projects</strong>, so please feel free to suggest other resources or comment on these ones.</p><h2>IETester</h2><p><a
href="http://ietester.com/" target="blank"><img
src="http://jpedroribeiro.com/wp-content/uploads/2010/06/ietester.png" alt="IETester" title="IETester" width="381" height="94" border="0" vspace="2" /></a><br
/> This software simulates all version of Internet Explorer from 5.5+. The latest version is more stable and is a great resource to compare IE versions.<br
/> <strong>Pros:</strong> Lightweight software, replaces IE in most cases. Multiple IE versions. Since it&#8217;s a simulator, allows you to click and browser your site.<br
/> <strong>Cons:</strong> Not much to say here, but I an occasional javascript error and still crashes sometimes.</p><h2>Browsershots</h2><p><a
href="http://browsershots.org/" target="blank"><img
src="http://jpedroribeiro.com/wp-content/uploads/2010/06/browsershots.png" alt="Browsershots" title="Browsershots" width="381" height="94" border="0" vspace="2" /></a><br
/> This website has probably all browsers and platforms you will need. Type your url and their system will use a network of computers to take a screenshot of your website in the spec you requested.<br
/> <strong>Pros:</strong> Huge range of browser types and OS&#8217;s.<br
/> <strong>Cons:</strong> Takes time to load all and you have a limit on how many times you can submit your site per day (unless you go premium). Can&#8217;t &#8220;browse&#8221; your site since it&#8217;s only a screenshot.</p><h2>Adobe Browserlabs</h2><p><a
href="https://browserlab.adobe.com" target="blank"><img
src="http://jpedroribeiro.com/wp-content/uploads/2010/06/browserlabs.png" alt="Adobe Browserlabs" title="Adobe Browserlabs" width="381" height="94" border="0" vspace="2" /></a><br
/> Browserlabs was cool when it was free but now it&#8217;s part of CS5, although you can still use it as trial version for a few more time. Like Browsershots, it only takes screenshots of your websites but has a lot of extra resources like onion skin option.<br
/> <strong>Pros:</strong> Great interface and easy to use.<br
/> <strong>Cons:</strong> Not free. Only screenshots.</p><h2>Spoon Browser Sandbox</h2><p><a
href="http://spoon.net/browsers/" target="blank"><img
src="http://jpedroribeiro.com/wp-content/uploads/2010/06/spoon.png" alt="Spoon Browser Sandbox" title="Spoon Browser Sandbox" width="381" height="94" border="0" vspace="2" /></a><br
/> A plugin that runs on your browser and lets you to simulate several browsers, like IE6+, Chrome, Firefox, Safari and Opera.<br
/> <strong>Pros:</strong> Browsable resource.<br
/> <strong>Cons:</strong> Plugin sometimes takes a while to load.</p><p>Hope you enjoy these resources. Please leave a comment below!<br
/> Cheers!</p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2010/06/cross-browser-testing-resources/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>Book Review: Logo Design Love</title><link>http://jpedroribeiro.com/2010/03/book-review-logo-design-love/</link> <comments>http://jpedroribeiro.com/2010/03/book-review-logo-design-love/#comments</comments> <pubDate>Tue, 30 Mar 2010 17:33:11 +0000</pubDate> <dc:creator>J. Pedro Ribeiro</dc:creator> <category><![CDATA[Book Reviews]]></category> <category><![CDATA[books]]></category> <category><![CDATA[logos]]></category> <category><![CDATA[process]]></category><guid
isPermaLink="false">http://jpedroribeiro.com/?p=94</guid> <description><![CDATA[If you are into <strong>branding </strong>and <strong>logos </strong>then you probably know <a
href="http://www.davidairey.com/" target="blank">David Airey</a>. His knowledge in the graphic design field has generated two well known and <a
href="http://www.davidairey.com/" target="blank">popular</a> <a
href="http://www.logodesignlove.com/" target="blank">blogs</a>. In the book <strong>Logo Design Love</strong>, David covers brand indentity and logo design in an exciting and comprehensive way. <a
href="http://jpedroribeiro.com/2010/03/book-review-logo-design-love/">Continue reading <span
class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<p><a
href="http://jpedroribeiro.com/2010/03/book-review-logo-design-love/"><img
title="Book Review: Logo Design Love" src="http://jpedroribeiro.com/wp-content/uploads/2010/03/logo-design-love.jpg" border="0" alt="Book Review: Logo Design Love" /></a></p><p>If you are into <strong>branding </strong>and <strong>logos </strong>then you probably know <a
href="http://www.davidairey.com/" target="blank">David Airey</a>. His knowledge in the graphic design field has generated two well known and <a
href="http://www.davidairey.com/" target="blank">popular</a> <a
href="http://www.logodesignlove.com/" target="blank">blogs</a>. In the book <strong>Logo Design Love</strong>, David covers brand indentity and logo design in an exciting and comprehensive way.</p><h2>The Book</h2><p>The book is divided into 3 main groups: <strong>Brand Identity</strong>, <strong>Process of Design</strong> and <strong>Tips, Advices and Resources</strong>. The text is easy to read and is beautifully illustrated. Throughout the pages we see examples and showcases of logos designed by the author and other designers. All aligned and related to the content.</p><h2>The highlights</h2><p>If you are familiar with the work of <strong>David Airey</strong> and his style of writing you will feel at home reading this <a
href="http://jpedroribeiro.com/tag/books/">book</a>. Differently from other authors, who usually <em>just say</em> what you should be doing, David goes through the book content by sharing his own experiences, the good and the bad ones and everything in between. Personally, this is the <strong>highlight of the book</strong>.</p><h2>Observations</h2><p>On the other side, if you have read most of David&#8217;s posts and texts, you might find that some of the content is being <strong>repeated</strong>. Which is understandable &#8211; the book is aimed to a beginning / intermediate audience and there are some parts that you just cannot leave behind.</p><h2>Conclusion</h2><p>I definitely recommend <strong>Logo Design Love</strong>, no matter what level you consider yourself being. Knowing the creative process of another designer is always a good thing as it makes you think about your own.</p><p>You can get a free chapter by accessing the website: <a
href="http://www.logodesignlovebook.com/" target="blank">http://www.logodesignlovebook.com/</a></p> ]]></content:encoded> <wfw:commentRss>http://jpedroribeiro.com/2010/03/book-review-logo-design-love/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: basic (User agent is rejected)
Database Caching 10/17 queries in 0.008 seconds using disk: basic

Served from: jpedroribeiro.com @ 2012-02-23 00:20:05 -->
