<?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>Webmonkey &#187; stylesheets</title>
    <atom:link href="http://www.webmonkey.com/tag/stylesheets/feed/" rel="self" type="application/rss+xml" />
    <link>http://www.webmonkey.com</link>
    <description>The Web Developer&#039;s Resource</description>
    <lastBuildDate>Mon, 06 May 2013 17:29:19 +0000</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <generator>http://wordpress.org/?v=3.4.2</generator>
    
    <item>
        <title>Why Percentage-Based Designs Don&#8217;t Work in Every Browser</title>
        <link>http://www.webmonkey.com/2010/12/why-percentage-based-designs-dont-work-in-every-browser/</link>
        <comments>http://www.webmonkey.com/2010/12/why-percentage-based-designs-dont-work-in-every-browser/#comments</comments>
        <pubDate>Fri, 03 Dec 2010 23:30:01 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=49257</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[stylesheets]]></category>
        <description><![CDATA[Here&#8217;s a rule any web designer can live by: Your designs don&#8217;t need to look exactly the same in every browser, they just need to look good in every browser. It&#8217;s a maxim that will spare you many a hair-pulling hour. That said, there some things you would expect to be the same across browsers [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><img src="http://www.wired.com/images/productreviews/reviews/pr_ipad_3G_large_wide.jpg" /></p>
<p>Here&#8217;s a rule any web designer can live by: Your designs don&#8217;t need to look exactly the same in every browser, they just need to look good in every browser.</p>
<p>It&#8217;s a maxim that will spare you many a hair-pulling hour. That said, there some things you would expect to be the same across browsers that aren&#8217;t. One such problem that&#8217;s likely to crop up more often as designers jump on the <a href="http://www.webmonkey.com/2010/09/make-a-big-splash-on-small-screens-with-media-queries/">responsive, flexible-width bandwagon</a> is percentage-width CSS rules.</p>
<p>According to the spec, browsers, given a percentage width, would simply render the width of the page based on the size of the container element. And, in fact, that&#8217;s what browsers do, but <em>how</em> they do it varies quite a bit. As a result, percentage-based widths are often displayed quite differently across web browsers.</p>
<p>Developer Steffan Williams <a href="http://steff.me/journal/fluid-inconsistencies">recently ran into this problem</a> when trying to create a percentage-based version of his <a href="http://gridinator.com/">Gridinator CSS framework</a>. Williams created a container <code>&lt;div></code> with a width of 940 pixels and then wanted to create a 12 column grid within that container. Do the math and you end up with columns set to a width of 6.38298 percent.</p>
<p>Pull that up in Firefox or Internet Explorer 6/7 and you&#8217;ll see what you expect to see. In Safari, Chrome and Opera, however, you&#8217;ll see something different. IE 8 and 9 are also slightly off. </p>
<p>The problem is not a new one; developer John Resig <a href="http://ejohn.org/blog/sub-pixel-problems-in-css/">pointed this out years ago</a>. But as Williams notes, it&#8217;s odd that browser behavior when rendering percentage-width grids is still so inconsistent across vendors, especially given how much today&#8217;s browsers tout their CSS 3 support.</p>
<p>The problem isn&#8217;t necessarily a simple case of Firefox and IE being right and the others wrong. As Opera CTO and CSS creator Håkon Wium Lie tells Webmonkey, the problem is &#8220;the CSS specification does not require a certain level of precision for floating point numbers.&#8221; </p>
<p>This means browsers are free to round your carefully computed percentages up or down as they see fit. According to Lie, Opera considers the result of Williams&#8217; experiment to be a bug. Same with the WebKit project, the engine that handles rendering in both Safari and Chrome, though in Webkit&#8217;s case <a href="https://lists.webkit.org/pipermail/webkit-unassigned/2006-January/002684.html">the bug has been unassigned since 2006</a>. But really, there is no right or wrong here, just different ways of rounding. </p>
<p><span id="more-49257"></span></p>
<p>Fortunately, for most of your stylesheets, the differences in each browsers&#8217; floating point precision will not result in visible differences on the screens of various devices. However, as Williams&#8217; experiment shows, it&#8217;s easy to write a page where those very small differences in rounding become visible when compounded &#8212; like a grid-based layout.</p>
<p>What irks Williams and others is that these problems are old and well-known, and yet most browser vendors have still made no move to fix them. Instead, they focus on supporting the shiny new features in CSS 3.</p>
<p>We certainly wouldn&#8217;t want to suggest that browsers should stop innovating and supporting the latest and greatest standards-based tools, but sometimes it&#8217;s worth postponing playtime with the newest toys to make sure the foundations are solid. In this case, Opera, Safari and Chrome have some cracks showing, and it&#8217;s high time they fix them.</p>
<p>Until they do, we suggest you learn to live with the slightly different rendering behaviors in those browsers. After all, pixel-perfect cross-browser support is never going to happen. Given that the web of the future will have even more mobile phones, tablets, and small screen laptops, responsive designs and fluid grids are a trend we expect to grow. </p>
<p>There are also some workarounds. For example, you can use <strong>ems</strong> instead of percentages, which render much more consistently across browsers. Opera&#8217;s Lie also points out that the CSS Working Group has several specifications in draft to address the need for grid-based design, including <a href="http://www.w3.org/TR/css3-multicol/">multi-column text</a> and the <a href="http://www.w3.org/TR/2009/WD-css3-layout-20090402/">CSS Template Layout Module</a>, though neither are widely supported at the moment.</p>
<p><em>iPad photo by Jim Merithew/Wired</em></p>
<p><strong>See Also:</strong><br/></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/09/make-a-big-splash-on-small-screens-with-media-queries/">Make a Big Splash on Tiny Screens With Media Queries</a></li>
<li><a href="">Slide Show Time: Rethinking the Mobile Webhttp://www.webmonkey.com/2010/09/slide-show-time-rethinking-the-mobile-web/</a></li>
<li><a href="http://www.webmonkey.com/2010/09/a-guide-to-internet-explorer-9s-html5css-3-support/">A Guide to Internet Explorer 9&#8242;s HTML5/CSS 3 Support</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/12/why-percentage-based-designs-dont-work-in-every-browser/feed/</wfw:commentRss>
        <slash:comments>12</slash:comments>

        
    </item>
    
    <item>
        <title>How to Speed Up Your Site With YSlow and Page Speed</title>
        <link>http://www.webmonkey.com/2010/09/how-to-speed-up-your-site-with-yslow-and-page-speed/</link>
        <comments>http://www.webmonkey.com/2010/09/how-to-speed-up-your-site-with-yslow-and-page-speed/#comments</comments>
        <pubDate>Wed, 01 Sep 2010 19:00:42 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=48553</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Web Basics]]></category>
		<category><![CDATA[Optimization]]></category>
		<category><![CDATA[Page Speed]]></category>
		<category><![CDATA[stylesheets]]></category>
		<category><![CDATA[YSlow]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2010/09/johnny_automatic_speeding_car.png" type="image/png" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2010/09/johnny_automatic_speeding_car.png" alt="How to Speed Up Your Site With YSlow and Page Speed" /></div>We all want our websites to load faster, but speeding things up can be tricky. There are numerous tried and true tricks we all use to keep page load times down, but once you&#8217;ve done a few rounds of optimization, you tend to hit a plateau where it&#8217;s tough to squeeze any more speed out [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><a href="http://www.webmonkey.com/wp-content/uploads/2010/09/johnny_automatic_speeding_car.png"><img src="http://www.webmonkey.com/wp-content/uploads/2010/09/johnny_automatic_speeding_car-300x138.png" alt="" title="johnny_automatic_speeding_car" width="300" height="138" class="alignright size-medium wp-image-48565" /></a>
<p>We all want our websites to load faster, but speeding things up can be tricky. There are numerous tried and true tricks we all use to keep page load times down, but once you&#8217;ve done a few rounds of optimization, you tend to hit a plateau where it&#8217;s tough to squeeze any more speed out of your code.</p>
<p>Most web developers are familiar with tools like <a href="http://yslow.org/">YSlow</a> and Google&#8217;s <a href="http://code.google.com/speed/page-speed/">Page Speed</a>. If you haven&#8217;t ever used them, go install both right now &#8212; they&#8217;re available as add-ons for Firefox. Both tools are designed to help you speed up your site&#8217;s page load times by showing you exactly what&#8217;s slowing them down, and used in tandem, they can alert you to some optimizations you never knew existed.</p>
<p>I recently sat down and tried, as best I could, to do everything that YSlow and PageSpeed recommended and I managed to shave my page load time roughly in half. When I started, my homepage took between four and six seconds to load. Now, it loads in one to three seconds on average.</p>
<p>To compare load times I used both YSlow and PageSpeed, as well as <a href="http://www.webpagetest.org/">WebPageTest</a>. Those numbers aren&#8217;t exactly benchmarks, since there&#8217;s some speed variation depending on what&#8217;s loaded in the cache, but a performance increase of about 30-40 percent is what you can expect if you haven&#8217;t yet explored these methods.</p>
<p>Some of what YSlow and Page Speed will tell you should be obvious &#8212; <a href="http://developer.yahoo.com/performance/rules.html#num_http">limit your HTTP requests</a>, <a href="http://developer.yahoo.com/performance/rules.html#minify">minimize</a>, compress and combine your JavaScript and CSS files, <a href="http://www.alistapart.com/articles/sprites">use CSS Sprites</a>, put your script tags at the bottom of the page and compress your images.</p>
<p>However, some of the more obscure and less-used (judging by viewing source code around the web) techniques these tools point out can make a surprising difference.</p>
<p>Before we get to the &#8220;how to&#8221; part, keep in mind the old saying &#8220;premature optimization is the root of all evil.&#8221; What I did with YSlow and its ilk was the last bit of optimization I did. In other words, be sure you&#8217;ve taken care of the big problems before you try to stamp out the smaller ones.</p>
<p>That said, I was surprised by how much of a difference some very small changes made.</p>
<p><span id="more-48553"></span></p>
<h3>The Good</h3>
<p>Long before I turned to YSlow, I optimized my backend code to minimize database hits, installed <a href="http://memcached.org/">Memcached</a> to further reduce the database load, and set up a separate domain to serve static files. The later change made a huge difference since the main instance of my site is running Apache and the static files are now served by a much lighter-weight, faster <a href="http://nginx.org/">Nginx</a> server.</p>
<p>The site I set out to test YSlow and Page Speed on is my <a href="http://luxagraf.net/">travel blog</a>, which is somewhat image-heavy. So, the first thing I did was run all my images through <a href="http://developer.yahoo.com/yslow/smushit/">SmushIt</a>, Yahoo&#8217;s lossless image compression tool that&#8217;s part of YSlow. </p>
<p>All of the images on the site were already compressed using Photoshop&#8217;s &#8220;Save for Web&#8221; exporter, but I still managed to shave an additional 2-5kb off my images without any loss of quality using SmushIt. When you&#8217;re loading ten or more images per page, that&#8217;s a significant savings.</p>
<p>In fact, I could compress my images quite a bit more if I were willing to make some trade-offs in image quality. I&#8217;m not in this case, but you might be able to. The best approach in my experience is to see what your overall image size is, run everything through SmushIt and, if you still aren&#8217;t happy with the results, go back to your image editor and see if you can compress things even more using lossy techniques.</p>
<h3>The Bad</h3>
<p>While I managed to squeeze down my images somewhat, for the most part I was already following the more obvious best practices &#8212; loading JavaScript last, using multiple domains and so on.</p>
<p>It wasn&#8217;t until I turned to my style sheets that I saw where I had really gone wrong.</p>
<p>Perhaps the most overlooked thing you can do to speed up your page is reduce the complexity of your style sheets. Wherever possible, use classes to group similar elements and make sure you take advantage of the cascade. If all your body text is going to be Georgia, define that rule once under the body tag rather than littering it throughout your style sheet.</p>
<p>Another thing you may notice Page Speed telling you to do is &#8220;<a href="http://code.google.com/speed/page-speed/docs/rendering.html#UseEfficientCSSSelectors">Use efficient CSS selectors</a>.&#8221; Browsers read CSS from right to left, so the more specific your selectors, the less time it takes the browser to figure out what to do with that element. The less specific the selector, the greater the number of nodes the browser needs to evaluate.</p>
<p>Consider this HTML, a fairly typical HTMl5 navigation menu:</p>
<p>
<pre class="brush: js">
&lt;nav id="top">
    &lt;ul>
        &lt;li>
            &lt;a href="/" title="My homepage">Home&lt;/a>
        &lt;/li>
        &lt;li>
            &lt;a href="/" title="My Blog">Blog&lt;/a>
        &lt;/li>
        &lt;li>
            &lt;a href="/" title="My Photos">Photos&lt;/a>
        &lt;/li>
    &lt;/ul>
&lt;/nav>
</pre>
<p>Now suppose you want to style the actual link element. The most inefficient way to do this would be something like this:</p>
<p>
<pre class="brush: js">
nav#top ul li a { color: red; }
</pre>
</p>
<p>In order to figure out which a you&#8217;re talking about, the browser needs to traverse four tags. Let&#8217;s redo that with something much more efficient:</p>
<p>
<pre class="brush: js">
&lt;h1>top a { color: red; }&lt;/h1>
</pre>
<p>Now there are just two tags to traverse. And note that we got rid of the <code>nav</code> selector with the ID, and the ID is already unique. There&#8217;s no need to add the tag as well.</p>
<p>If we wanted to be even more efficient, we could add a class called &#8220;red&#8221; to each of our <code>a</code> tags and simply do this:</p>
<p>
<pre class="brush: js">
.red {color: red;}
</pre>
<p>So how much does this gain you? In my case, re-writing my CSS &#8212; which had grown pretty sloppy over the years &#8212; dropped a full second from my page load time. That may not sound like much (and it isn&#8217;t if you have inefficient database queries or other, bigger problems), but when it comes to this stage of optimization, every little bit helps.</p>
<h3>The Ugly</h3>
<p>A few of YSlow and Page Speed&#8217;s suggestions aren&#8217;t possible in some cases, mine included. One big thing that could speed up my static content would be to use a CDN. Unfortunately CDN&#8217;s are expensive and outside the price range of small blogs like mine. Also, a shared server is cheaper than a dedicated server, but can be slower.</p>
<p>Other unfixable problems are due to my hosting setup. I can&#8217;t set the expires headers for my static files because my Nginx server is global for all shared hosts on that server. Luckily, with Nginx, the first load is pretty fast. The browser may not cache images and static files as aggressively as I&#8217;d like, but for now it works well enough. I could compile my own instance of Nginx, and thus set the expires headers myself, but I haven&#8217;t tried that yet.</p>
<p>Another problem that Google&#8217;s Page Speed tool likes to nag you about is using cookie-less domains for static images. In my case, I serve my static files from the subdomains <code>media</code> and <code>images</code>. Because my top-level domain needs cookies, the subdomains inherit them as well. This is why big sites like Yahoo use an entirely separate domain for static files (usually some subdomain of yimg.com in Yahoo&#8217;s case). </p>
<p>There are some other areas that didn&#8217;t apply in my case, but may be slowing down your site. One big culprit is third-party content. If you&#8217;re loading JavaScript from other sites &#8212; to add social networking or bookmarking buttons, for example &#8212; pay close attention to how fast those scripts load. They are notorious for slowing your page down.</p>
<p>Another easy way to speed up your pages is to make sure your CSS and JavaScript files are served using GZip compression. Good web hosts should offer a way to do this. If yours doesn&#8217;t, consider jumping ship for one that does.</p>
<p>As with any kind of optimization, there are trade-offs involved with nearly everything that YSlow and Page Speed will suggest. For example, to make your CSS selectors more efficient, you may be tempted to litter your HTML with IDs, which is a no-no if you&#8217;re trying to maintain good semantic code. Likewise, compressing images is all good and well, but turn them into a pixelated mess and you&#8217;ll turn people off no matter how fast your site is.</p>
<p>The secret to good optimization is to find a balance. Provide quality content and wrap it in well-written code, but also make sure what you create loads as fast as possible. Don&#8217;t sacrifice too much quality in the name of speed, and vice versa.</p>
<p><em>Illustration from &#8220;Physics for Entertainment&#8221; by Yakov Isidorovich Perelman from <a href="http://www.archive.org/details/physicsforentert035428mbp">Archive.org</a></em></p>
<p><strong>See Also:</strong><br/></p>
<ul>
<li><a href="http://www.webmonkey.com/2009/12/new_google_tools_help_speed_up_your_website/">New Google Tools Help Speed Up Your Website</a></li>
<li><a href="http://www.webmonkey.com/2008/03/tips_for_turning_your_sluggish_website_into_a_speed_demon/">Tips For Turning Your Sluggish Website Into a Speed Demon</a></li>
<li><a href="http://www.webmonkey.com/2010/02/Site_Optimization_Tutorial/">Site Optimization Tutorial</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/09/how-to-speed-up-your-site-with-yslow-and-page-speed/feed/</wfw:commentRss>
        <slash:comments>3</slash:comments>

        
    </item>
    
    <item>
        <title>Dealing With Browser Differences in CSS 3</title>
        <link>http://www.webmonkey.com/2010/06/dealing-with-browser-differences-in-css-3/</link>
        <comments>http://www.webmonkey.com/2010/06/dealing-with-browser-differences-in-css-3/#comments</comments>
        <pubDate>Tue, 22 Jun 2010 20:45:39 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=47772</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[CSS 3]]></category>
		<category><![CDATA[stylesheets]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2010/06/CSS_sheep.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2010/06/CSS_sheep.jpg" alt="Dealing With Browser Differences in CSS 3" /></div>Cutting edge web technologies never come without a cost. Sometimes it means limited browser support for emerging standards, and other times it means having to go back and rewrite your code when draft standards change. When it comes to the still-in-progress CSS 3 spec, not only does browser support vary widely, but most browsers have [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_47784" class="wp-caption alignleft" style="width: 167px"><a href="http://www.webmonkey.com/wp-content/uploads/2010/06/CSS_sheep.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2010/06/CSS_sheep.jpg" alt="" title="CSS_sheep" width="157" height="192" class="size-full wp-image-47784" /></a><p class="wp-caption-text">Woolly, the CSS sheep.</p></div>
<p>Cutting edge web technologies never come without a cost.</p>
<p>Sometimes it means limited browser support for emerging standards, and other times it means having to go back and rewrite your code when draft standards change.</p>
<p>When it comes to the <a href="http://www.w3.org/TR/css3-content/">still-in-progress CSS 3 spec</a>, not only does browser support vary widely, but most browsers have implemented what are know as vendor-specific prefixes. The prefixes complicate things, and they require more work to drop them into your code, but they do serve a purpose.</p>
<p>For example, if you want rounded corners in CSS 3, you&#8217;d use <code>border-radius</code> to define them. But because border-radius is still being finalized, browsers only support their own versions of the rule. So, <code>-moz-border-radius</code> will target Firefox, <code>-webkit-border-radius</code> targets Safari and Chrome. For Opera, it&#8217;s <code>-o-border-radius</code>.</p>
<p>None of the special prefixes will validate, which is less than ideal. There&#8217;s a suggestion floating around that CSS validators should change their behavior regarding vendor prefixes by issuing a warning instead of an error. Regardless, if you want absolute standards conformance in your CSS code, you&#8217;ll need to stay away from vendor prefixes.</p>
<p>However, if you want to play with CSS 3&#8242;s new toys, you&#8217;ll see there are some very good reasons why vendor-specific prefixes exist, and why you should use them (for now) in addition to the actual proposed rules of CSS 3.</p>
<p>To stick with the border-radius example, consider what happens when you want to target just one corner of an object. The spec was in flux in when the WebKit project decided to use <code>-webkit-border-top-right-radius</code> and Mozilla went with <code>-moz-border-radius-topright</code>. Without the prefix, you&#8217;d have to deal with two different CSS rules, potentially forever, with one of them eventually being depricated, but still out there in older versions of that browser.</p>
<p>Both prefixes are technically &#8220;wrong&#8221; and that&#8217;s a good thing. Eventually, the final spec will be published and only one rule will be standardized, with all browsers implementing that rule. At that point, you can simply go into your code and delete all of your prefix rules. The vendor names make them easy to find and zap.</p>
<p>One thing you should definitely not do is target only one browser&#8217;s prefixes. As <a href="http://www.webmonkey.com/2010/06/apples-html5-showcase-less-about-web-standards-more-about-apple/">Apple&#8217;s disingenuous &#8220;HTML5&#8243; showcase</a> recently highlighted, optimizing for a single browser is never a good idea.</p>
<p>If the idea of vendor-specific prefixes strewn about your otherwise standard CSS makes you uneasy, there is another possibility &#8212; offloading all the prefixing stuff to JavaScript.</p>
<p>Developer Arron Gustafson has written a <a href="http://www.alistapart.com/articles/stop-forking-with-css3/">critical  article for A List Apart</a> where he derides vendor-specific prefixes and offers a JavaScript alternative for those who feel the same way he does.</p>
<p>Gustafson refers to vendor prefixes as &#8220;forking&#8221; CSS. While we agree with his point, the word &#8220;forking&#8221; is problematic if only because there is nothing wrong with forking code. In fact, it&#8217;s the norm in the open source world. (You are using Git or Mercurial right?). And vendor prefixes are not forks, they&#8217;re hacks &#8212; temporary ways to push the boundaries of the web while standards bodies catch up.</p>
<p>Terminology aside, Gustafson&#8217;s point is valid &#8212; ignoring standards and littering your CSS with browser-specific code are both bad ideas.</p>
<p>Gustafson&#8217;s little JavaScript library can help you avoid vendor prefixes in your CSS. But, impressive as the script is, all it really does is offload the prefixing to JavaScript. The approach has some downsides &#8212; it means additional page load times and it neglects users who have JavaScript disabled. </p>
<p>If you want to start using CSS 3&#8242;s features now, you&#8217;re not going to avoid vendor prefixing, but at least you can choose how to handle it. Whether that means using the prefixes in your stylesheet, putting your vendor-specific code into separate stylesheets, or using a JavaScript solution like Gustafson&#8217;s is up to you.</p>
<p><strong>See Also:</strong><br/></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/06/apples-html5-showcase-less-about-web-standards-more-about-apple/">Apple’s HTML5 Showcase Less About Web Standards, More About Apple</a></li>
<li><a href="http://www.webmonkey.com/2010/05/where-on-the-web-is-html5/">Where on the Web Is HTML5?</a></li>
<li><a href="http://www.webmonkey.com/2010/02/get_started_with_css_3/">Get Started With CSS 3</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/06/dealing-with-browser-differences-in-css-3/feed/</wfw:commentRss>
        <slash:comments>2</slash:comments>

        
    </item>
    </channel>
</rss>
