<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><description>A tumblog about the browser engine built into Safari, Chrome, iOS, Android, and BlackBerry. Authored by the fanboys below, who have nothing to do with the official WebKit project.</description><title>WebKitbits</title><generator>Tumblr (3.0; @webkitbits)</generator><link>https://www.webkitbits.com/</link><item><title>WebKit for Developers</title><description>&lt;a href="http://paulirish.com/2013/webkit-for-developers/"&gt;WebKit for Developers&lt;/a&gt;: &lt;p&gt;&lt;a href="http://decodering.com/post/44223187030/webkit-for-developers" class="tumblr_blog"&gt;decodering&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Paul Irish educates us: &lt;i&gt;What is WebKit? What isn’t WebKit? How is WebKit used by WebKit-based browsers? Why are all WebKits not the same?&lt;/i&gt;&lt;/p&gt;&lt;/blockquote&gt;</description><link>https://www.webkitbits.com/post/44224701266</link><guid>https://www.webkitbits.com/post/44224701266</guid><pubDate>Thu, 28 Feb 2013 09:06:25 -0800</pubDate><dc:creator>9-bits</dc:creator></item><item><title>
  Ten years ago today, which was actually a Tuesday, Steve Jobs...</title><description>&lt;iframe width="400" height="225" src="http://www.youtube.com/embed/13n98rSaYp4?start=3290&amp;feature=oembed" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;
  &lt;p&gt;Ten years ago today, which was actually a Tuesday, Steve Jobs introduced Safari to the public at MacWorld in San Francisco.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://donmelton.com/2013/01/07/macworld-2003-keynote/"&gt;Don Melton&lt;/a&gt;&lt;/p&gt;</description><link>https://www.webkitbits.com/post/39939794780</link><guid>https://www.webkitbits.com/post/39939794780</guid><pubDate>Mon, 07 Jan 2013 10:18:49 -0800</pubDate><category>safari</category><category>mac</category><dc:creator>9-bits</dc:creator></item><item><title>Enabling new classes of applications with Pointer Lock</title><description>&lt;a href="http://blog.chromium.org/2012/09/enabling-new-classes-of-applications.html?utm_source=html5weekly&amp;utm_medium=email"&gt;Enabling new classes of applications with Pointer Lock&lt;/a&gt;: &lt;p&gt;The &lt;a href="http://www.html5rocks.com/en/tutorials/pointerlock/intro/"&gt;Pointer Lock API&lt;/a&gt; just landed in Chrome 22.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/32399402578</link><guid>https://www.webkitbits.com/post/32399402578</guid><pubDate>Thu, 27 Sep 2012 09:50:42 -0700</pubDate><category>chrome</category><dc:creator>9-bits</dc:creator></item><item><title>Adobe’s CSS Shaders Now an Official W3C Editor’s Draft</title><description>&lt;iframe width="400" height="225"  id="youtube_iframe" src="https://www.youtube.com/embed/NZRqnohI3m4?feature=oembed&amp;enablejsapi=1&amp;origin=https://safe.txmblr.com&amp;wmode=opaque" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen title="CSS Shaders"&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://www.webmonkey.com/2012/09/adobes-css-shaders-now-an-official-web-standard/"&gt;Adobe’s CSS Shaders Now an Official W3C Editor’s Draft&lt;/a&gt;&lt;/p&gt;</description><link>https://www.webkitbits.com/post/31002105353</link><guid>https://www.webkitbits.com/post/31002105353</guid><pubDate>Thu, 06 Sep 2012 10:39:43 -0700</pubDate><category>css</category><category>shaders</category><dc:creator>9-bits</dc:creator></item><item><title>Stick your landings! position: sticky lands in WebKit</title><description>&lt;a href="http://updates.html5rocks.com/2012/08/Stick-your-landings-position-sticky-lands-in-WebKit"&gt;Stick your landings! position: sticky lands in WebKit&lt;/a&gt;: &lt;p&gt;&lt;a href="http://updates.html5rocks.com/2012/08/Stick-your-landings-position-sticky-lands-in-WebKit"&gt;HTML5Rocks&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;code&gt;position: sticky&lt;/code&gt; is a new way to position elements and is conceptually similar to &lt;code&gt;position: fixed.&lt;/code&gt; The difference is that an element with &lt;code&gt;position: sticky&lt;/code&gt; behaves like &lt;code&gt;position: relative&lt;/code&gt; within its parent, until a given offset threshold is met in the viewport.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Great, native replacement for a simple scroll hack. Until this becomes an adopted standard, you may want to check out the &lt;a href="http://twitter.github.com/bootstrap/javascript.html#affix"&gt;Affix plugin in Twitter Bootstrap&lt;/a&gt;.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/31001528608</link><guid>https://www.webkitbits.com/post/31001528608</guid><pubDate>Thu, 06 Sep 2012 10:25:26 -0700</pubDate><category>css</category><category>position</category><category>sticky</category><dc:creator>9-bits</dc:creator></item><item><title>Google Chrome Grabs 1/3 Of Global Browser Market: StatCounter</title><description>&lt;img src="https://64.media.tumblr.com/tumblr_m8gbyoorQ11qzynf0o1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://thenextweb.com/google/2012/08/06/chrome-rises-google-browser-grabs-13-of-the-global-market-statcounter/"&gt;Google Chrome Grabs 1/3 Of Global Browser Market: StatCounter&lt;/a&gt;&lt;/p&gt;</description><link>https://www.webkitbits.com/post/28997362119</link><guid>https://www.webkitbits.com/post/28997362119</guid><pubDate>Wed, 08 Aug 2012 12:39:59 -0700</pubDate><category>chrome</category><category>google</category><dc:creator>9-bits</dc:creator></item><item><title>Google Chrome Blog: New senses for the web</title><description>&lt;a href="http://chrome.blogspot.com/2012/07/new-senses-for-web.html?utm_source=html5weekly&amp;utm_medium=email"&gt;Google Chrome Blog: New senses for the web&lt;/a&gt;: &lt;p&gt;Google releases &lt;a href="http://chrome.blogspot.com/2012/07/new-senses-for-web.html"&gt;a new stable version of Chrome&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Chrome now includes the getUserMedia API, which lets you grant web apps access to your camera and microphone without a plug-in. The getUserMedia API is the first step in WebRTC, a new real-time communications standard which aims to allow high-quality video and audio communication on the web.&lt;/p&gt;
&lt;/blockquote&gt;</description><link>https://www.webkitbits.com/post/28520638563</link><guid>https://www.webkitbits.com/post/28520638563</guid><pubDate>Wed, 01 Aug 2012 17:42:06 -0700</pubDate><category>chrome</category><category>google</category><category>getusermedia</category><dc:creator>9-bits</dc:creator></item><item><title>What’s New in Safari 6</title><description>&lt;a href="https://developer.apple.com/technologies/safari/whats-new.html"&gt;What’s New in Safari 6&lt;/a&gt;: &lt;p&gt;New docs are up at the Apple Developer site. Some of the most notable new features include the Web Audio API, CSS Filters (hooray!), and HTML5 Web Notifications.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/28500599433</link><guid>https://www.webkitbits.com/post/28500599433</guid><pubDate>Wed, 01 Aug 2012 12:41:28 -0700</pubDate><category>safari</category><category>webaudio</category><category>cssfilters</category><category>notifications</category><dc:creator>9-bits</dc:creator></item><item><title>Google I/O 2012 - The Web Can Do That!? Great presention by Eric...</title><description>&lt;iframe width="400" height="225"  id="youtube_iframe" src="https://www.youtube.com/embed/X_ek1wSe66o?feature=oembed&amp;enablejsapi=1&amp;origin=https://safe.txmblr.com&amp;wmode=opaque" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen title="Google I/O 2012 - The Web Can Do That!?"&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;strong&gt;Google I/O 2012 - The Web Can Do That!?&lt;/strong&gt; Great presention by &lt;a href="https://plus.google.com/118075919496626375791"&gt;Eric Bidelman&lt;/a&gt;, covering some of my favorite new features in CSS3, some super-interesting bits of HTML5 like &lt;code&gt;&lt;datalist&gt;&lt;/code&gt; and the &lt;code&gt;download&lt;/code&gt; attribute, and some amazing A/V demos at the end (&lt;code&gt;getUserMedia&lt;/code&gt; FTW). A fantastic preview of the next stage of web applications.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/26574146551</link><guid>https://www.webkitbits.com/post/26574146551</guid><pubDate>Thu, 05 Jul 2012 12:33:34 -0700</pubDate><category>css3</category><category>html5</category><category>audio</category><category>video</category><category>chrome</category><category>io</category><dc:creator>9-bits</dc:creator></item><item><title>What iOS 6 Mobile Safari Offers Front End Devs</title><description>&lt;a href="http://taitems.tumblr.com/post/24936855546/what-ios-6-mobile-safari-offers-front-end-devs"&gt;What iOS 6 Mobile Safari Offers Front End Devs&lt;/a&gt;: &lt;p&gt;&lt;a href="http://taitems.tumblr.com/post/24936855546/what-ios-6-mobile-safari-offers-front-end-devs" class="tumblr_blog"&gt;taitems&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here’s what we know about Mobile Safari in iOS 6 so far, and what it brings to the table for front end developers. I expect there’s more to come in future betas and as people experiment with the current beta more.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Great roundup of some serious improvements to Mobile Safari. I’m not breaking NDA if I just link to this stuff, right? RIGHT?!&lt;/p&gt;</description><link>https://www.webkitbits.com/post/24966324418</link><guid>https://www.webkitbits.com/post/24966324418</guid><pubDate>Tue, 12 Jun 2012 11:42:29 -0700</pubDate><category>ios</category><category>ios6</category><category>remote</category><category>audio</category><category>fileapi</category><category>raf</category><dc:creator>9-bits</dc:creator></item><item><title>"I would hate to think that we could be paving the way for countless errors just because img set is..."</title><description>“I would hate to think that we could be paving the way for countless errors just because img set is easier to implement in browsers. Implementation on the browser side takes place once; authoring will take place thousands of times.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;Mat Marquis in a &lt;a href="http://www.alistapart.com/articles/responsive-images-and-web-standards-at-the-turning-point/"&gt;special edition of A List Apart&lt;/a&gt;, discussing the two options emerging for responsive images and the recent collision between the WHATWG and the &lt;a href="http://www.w3.org/community/respimg"&gt;Responsive Images Community Group&lt;/a&gt;.&lt;/em&gt;</description><link>https://www.webkitbits.com/post/23248941384</link><guid>https://www.webkitbits.com/post/23248941384</guid><pubDate>Thu, 17 May 2012 14:38:56 -0700</pubDate><category>responsive</category><category>picture</category><category>whatwg</category><category>srcset</category><dc:creator>9-bits</dc:creator></item><item><title>WTFWG</title><description>&lt;a href="http://timkadlec.com/2012/05/wtfwg/"&gt;WTFWG&lt;/a&gt;: &lt;p&gt;Tim Kadlec does a great job at breaking down the process which has led to the recent community disappointment in the WHATWG over the &lt;code&gt;srcset&lt;/code&gt; attribute.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;What message does it send when developers try to contribute their time, energy and effort to help solve a problem only to have it so casually dismissed?&lt;/p&gt;
&lt;/blockquote&gt;</description><link>https://www.webkitbits.com/post/23248869936</link><guid>https://www.webkitbits.com/post/23248869936</guid><pubDate>Thu, 17 May 2012 14:37:52 -0700</pubDate><category>responsive</category><category>whatwg</category><category>w3c</category><category>srcset</category><category>picture</category><dc:creator>9-bits</dc:creator></item><item><title>Subpixel layout coming to WebKit</title><description>&lt;a href="http://bricss.net/post/22718920352/subpixel-layout-coming-to-webkit"&gt;Subpixel layout coming to WebKit&lt;/a&gt;: &lt;p&gt;&lt;a href="http://bricss.net/post/22718920352/subpixel-layout-coming-to-webkit" class="tumblr_blog"&gt;bricss&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you’ve ever tried to get precise em-based values of &lt;code&gt;letter-spacing&lt;/code&gt; to work in a WebKit browser, you’ve probably wondered why that isn’t really possible, while Firefox or Internet Explorer 10 for example do allow fine-grained control.&lt;/p&gt;&lt;/blockquote&gt;</description><link>https://www.webkitbits.com/post/23174992515</link><guid>https://www.webkitbits.com/post/23174992515</guid><pubDate>Wed, 16 May 2012 11:43:24 -0700</pubDate><category>subpixel</category><category>layout</category><dc:creator>9-bits</dc:creator></item><item><title>Chromium has added experimental support for the Web Intents API...</title><description>&lt;iframe width="400" height="225" src="http://www.youtube.com/embed/KLCQ3BxBWvU?fs=1&amp;feature=oembed" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Chromium has &lt;a href="http://blog.chromium.org/2012/05/connect-with-web-intents.html?m=1"&gt;added experimental support for the Web Intents API&lt;/a&gt; to Chrome stable.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/23172529582</link><guid>https://www.webkitbits.com/post/23172529582</guid><pubDate>Wed, 16 May 2012 10:43:55 -0700</pubDate><category>chrome</category><category>webintents</category><category>api</category><dc:creator>9-bits</dc:creator></item><item><title>Chrome DevTools Timeline has a new Frame Mode, making it even...</title><description>&lt;iframe width="400" height="300"  id="youtube_iframe" src="https://www.youtube.com/embed/Vp524yo0p44?feature=oembed&amp;enablejsapi=1&amp;origin=https://safe.txmblr.com&amp;wmode=opaque" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen title="Chrome DevTools Timeline's new Frame Mode"&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=Vp524yo0p44&amp;feature=player_embedded"&gt;Chrome DevTools Timeline has a new Frame Mode&lt;/a&gt;, making it even easier to see where your layout/rendering bottlenecks are. I look forward to even more improvements to this feature soon — it can be a bit vague at the moment, but it has incredibly useful information. Currently only available in Chrome under &lt;code&gt;about:flags&lt;/code&gt;.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/22459788035</link><guid>https://www.webkitbits.com/post/22459788035</guid><pubDate>Sat, 05 May 2012 11:23:00 -0700</pubDate><category>chrome</category><category>toolbox</category><category>devtools</category><category>css</category><category>performance</category><dc:creator>9-bits</dc:creator></item><item><title>WebKit is the most popular mobile browser in the world. I...</title><description>&lt;img src="https://64.media.tumblr.com/tumblr_m3f8rjKSny1qzynf0o1_r3_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;strong&gt;WebKit is the most popular mobile browser in the world.&lt;/strong&gt; I &lt;a href="http://www.webkitbits.com/post/22222538210/why-o-why"&gt;alluded to this&lt;/a&gt; a bit in my article yesterday, but here are several reasons I think the chart above is misleading:&lt;/p&gt;

&lt;h3&gt;The breakdown&lt;/h3&gt;

&lt;p&gt;The first, most obvious, reaction I have is: The iPod Touch and the iPhone have the exact same browser. So already, “Mobile Safari” is the most popular browser in the world – My friend Hans was even &lt;a href="https://twitter.com/hansv_com/status/197852329486188544"&gt;kind enough to demonstrate&lt;/a&gt;. And what about Android? Android’s default browser has been notorious for not being quite as smooth as the iPhone’s, but generally, the two are kept quite consistent. In fact, even BlackBerry, since BB6, has used WebKit, and even &lt;em&gt;that&lt;/em&gt; is pretty on par with the others. They all even use the same browser prefix, &lt;code&gt;-webkit-&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;But then what about Opera? It sure seem fortunate that there’s only one version of Opera out there, except…&lt;/p&gt;

&lt;!-- more --&gt;

&lt;h3&gt;Opera Mini&lt;/h3&gt;

&lt;p&gt;As an organization, Opera has done a great job at blurring the line between &lt;a href="http://www.opera.com/mobile/"&gt;Opera Mobile and Opera Mini&lt;/a&gt;. For those who don’t know, these are very different browsers (&lt;em&gt;much&lt;/em&gt; more different than, say, those found in iOS, Android, and BlackBerry). I have yet to see a chart showing geographic and traffic breakdowns between the two with real world numbers, so some of this is speculation, but I imagine Opera Mini makes up the vast majority of Opera’s userbase. Look at it this way: The only places where Opera has maintained a significant amount of traffic is &lt;a href="http://gs.statcounter.com/#mobile_browser-af-monthly-201104-201204"&gt;Africa&lt;/a&gt; (where it simply dominates the competition) and &lt;a href="http://gs.statcounter.com/#mobile_browser-af-monthly-201104-201204"&gt;Asia&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Opera Mini is the browser Opera installs on most feature phones, or, as I like to call them, “phone” phones. As Opera mentions, for many people, this is their only access to the internet. It uses a proxy system that basically creates an “image” of a website, server-side, sends that image down the wire, which is great, as it’s both faster and cheaper for feature phone users, especially on limited data plans. It is, essentially, the IE6 of the mobile web — A browser with an unfortunately high number of remaining users and a sadly minimal feature set.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Opera Mini does not support:&lt;/strong&gt; HTML5 Video, Audio, new form fields, drag and drop, Session history, app cache, geolocation, orientation (though feature phones are generally vertical), any local storage option, or, on the CSS side: border-image, any gradients, the content property, transitions, animations, transforms (2D or 3D), and most text controls like text-transform, text-align, and text-indent. Let’s not even get into what it supports in regard to interactive JavaScript.&lt;/p&gt;

&lt;p&gt;Interesting to note, that, if my theory is correct (“Mini” being more popular than “Mobile”), the &lt;a href="http://www.netmagazine.com/news/opera-confirms-webkit-prefix-usage-121923"&gt;prefix alias solution&lt;/a&gt; that they are recommending will only fix the CSS3 UX issues for the minority of their users.&lt;/p&gt;

&lt;h3&gt;Tablets matter (a lot)&lt;/h3&gt;

&lt;p&gt;The chart above also doesn’t take tablets into consideration. Now consider &lt;a href="http://www.comscore.com/Press_Events/Press_Releases/2011/10/Smartphones_and_Tablets_Drive_Nearly_7_Percent_of_Total_U.S._Digital_Traffic"&gt;this comScore report&lt;/a&gt; from last year:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;In August 2011, iPads delivered 97.2 percent of all tablet traffic in the U.S. iPads have also begun to account for a higher share of Internet traffic than iPhones (46.8 percent vs. 42.6 percent of all iOS device traffic).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In addition to the fact that &lt;strong&gt;over 97% of all tablet traffic is from the iPad&lt;/strong&gt;, it’s important to note that it’s also &lt;em&gt;higher&lt;/em&gt; than the iPhone when looking at iOS as a whole. You can practically just double the iPhone bar above.&lt;/p&gt;

&lt;h3&gt;But WebKit isn’t a browser!&lt;/h3&gt;

&lt;p&gt;And that’s not really crab in your maki roll. So what? It’s a rendering engine. It supports HTML5 and CSS3. Still, as noted above, it’s &lt;em&gt;far&lt;/em&gt; more consistent in its capabilities and features, in all the different versions of all the different browsers it’s used in, than something like Opera Mini compared to Opera Mobile.&lt;/p&gt;

&lt;h3&gt;Why is this important?&lt;/h3&gt;

&lt;p&gt;The point is this: Don’t let people tell you where your values should be.&lt;/p&gt;

&lt;p&gt;Most developers reading this post don’t care about how their sites look on Netscape Navigator 4 or Internet Explorer 3, or even half of the “still active” browsers &lt;a href="http://en.wikipedia.org/wiki/Comparison_of_web_browsers"&gt;listed here&lt;/a&gt;. Lots of services and apps are even moving away from IE6 (which, according to NetStats has just about marketshare as Opera on the desktop). How do we deal with all these browsers? We don’t. We pick a subset which represents the majority of our users, and usually spend a little extra time making sure the page looks extra spiffy for the modern ones (especially the modern ones with lots of users and amazing features). For older, but sadly still relevant, browsers like IE7 and IE8, we make sure our pages aren’t “broken.” For everyone else, we cross our fingers and hope this “web standards” kinda works like it said on the box.&lt;/p&gt;

&lt;p&gt;This is how I treat Opera Mobile/Mini. I do my best to be a responsible developer. I always craft CSS with all the vendor prefixes (thanks &lt;a href="http://compass-style.org/"&gt;Compass&lt;/a&gt;!), and I’m finally starting to get more and more into media queries.&lt;/p&gt;

&lt;p&gt;By no means do I think any browser should ever get a blank page or a “This browser is not supported” message. But does that mean I need to &lt;em&gt;test&lt;/em&gt; in every single browser? No. Does this mean I should spend time optimizing my sites for feature phones, which are most popular in Africa and Asia, and the minority of my web traffic? No. Would it be a terrible idea to build a &lt;strong&gt;progressive&lt;/strong&gt; horizontal carousel, for iOS and Android, when they make up over 98% of my mobile audience. Of course not.&lt;/p&gt;

&lt;p&gt;Work everywhere, absolutely — but don’t be afraid to go a step further for WebKit. It’s insanely powerful, fun to build with, and most likely represents a strong majority of your existing mobile web traffic.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/22327920784</link><guid>https://www.webkitbits.com/post/22327920784</guid><pubDate>Thu, 03 May 2012 10:45:00 -0700</pubDate><category>opera</category><category>mobile</category><category>prefixes</category><dc:creator>9-bits</dc:creator></item><item><title>CSS layout gets smarter with calc()</title><description>&lt;a href="http://updates.html5rocks.com/2012/03/CSS-layout-gets-smarter-with-calc"&gt;CSS layout gets smarter with calc()&lt;/a&gt;: &lt;p&gt;Didn’t even know about this feature, but it’s brilliant. A quick idea of what you can do:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;#bar {
  height: calc(10em + 3px); 
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;And regarding current support:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;The calc() property for lengths is available now in Chrome 19 (Dev channel build) by use of the ’-webkit-calc’ property, in Firefox since version 8 using the ’-moz-calc’ property and in Internet Explorer since version 9 unprefixed.&lt;/p&gt;
&lt;/blockquote&gt;</description><link>https://www.webkitbits.com/post/22263499449</link><guid>https://www.webkitbits.com/post/22263499449</guid><pubDate>Wed, 02 May 2012 10:54:43 -0700</pubDate><category>calc</category><category>css</category><category>chrome</category><dc:creator>9-bits</dc:creator></item><item><title>Why O, why? Thoughts on Opera's Implementation of WebKit's Prefixes</title><description>&lt;p&gt;For those new to the discussion, Opera &lt;a href="http://dev.opera.com/articles/view/opera-mobile-emulator-experimental-webkit-prefix-support/"&gt;recently implemented aliases for &lt;code&gt;-webkit-&lt;/code&gt; CSS prefixes&lt;/a&gt; in its mobile emulator, potentially with plans to follow on the desktop as well. This means that Opera will now treat &lt;code&gt;-webkit-&lt;/code&gt; prefixes the same way it treats &lt;code&gt;-o-&lt;/code&gt;. &lt;a href="https://twitter.com/#!/brucel"&gt;Bruce Lawson&lt;/a&gt;, an evangelist at Opera, &lt;a href="http://www.netmagazine.com/news/opera-confirms-webkit-prefix-usage-121923"&gt;told .Net magazine&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Opera, along with Microsoft and Mozilla, announced at &lt;a href="http://lists.w3.org/Archives/Public/www-style/2012Feb/0313.html"&gt;a CSS Working Group meeting&lt;/a&gt; that we would support some WebKit prefixes. This is because too many authors of mobile sites only use the WebKit-prefixed version, and not even the standard, unprefixed one, when it is available.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Microsoft actually followed up:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;A Microsoft spokesperson has provided a comment to .net on that company&amp;rsquo;s position: &amp;ldquo;A passing comment made in a working group meeting has clearly been misinterpreted. Microsoft won&amp;rsquo;t support –webkit prefixes in Internet Explorer.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I highly encourage you to read &lt;a href="http://lists.w3.org/Archives/Public/www-style/2012Feb/0313.html"&gt;the actual transcript&lt;/a&gt;, though. It&amp;rsquo;s important to note that the conversation is equally led by &lt;a href="https://twitter.com/#!/t"&gt;Tantek Çelik&lt;/a&gt;, from Mozilla, and the healthy conversation/debate that follows. It is clear that this move is part of a larger conversation about browser share and mobile usage.&lt;/p&gt;

&lt;!-- more --&gt;

&lt;h3&gt;A little context&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Here&amp;rsquo;s my thirty second rundown of the mobile web:&lt;/strong&gt; &lt;a href="http://gs.statcounter.com/#mobile_browser-ww-monthly-201005-201205"&gt;iOS and Android are killing it&lt;/a&gt; (Note, iPod Touch is a separate line), especially in &lt;a href="http://gs.statcounter.com/#mobile_browser-na-monthly-201005-2012051205"&gt;North America&lt;/a&gt;, &lt;a href="http://gs.statcounter.com/#mobile_browser-sa-monthly-201005-201205"&gt;South America&lt;/a&gt;, &lt;a href="http://gs.statcounter.com/#mobile_browser-eu-monthly-201005-2012051205"&gt;Europe&lt;/a&gt; and &lt;a href="http://gs.statcounter.com/#mobile_browser-AU-monthly-201005-2012051205"&gt;Australia&lt;/a&gt;. Opera maintains a strong presence in &lt;a href="http://gs.statcounter.com/#mobile_browser-af-monthly-201005-2012051205"&gt;Africa&lt;/a&gt; and &lt;a href="http://gs.statcounter.com/#mobile_browser-as-monthly-201005-2012051205"&gt;Asia&lt;/a&gt;, most likely thanks to Opera Mini, and even that dominance is &lt;a href="http://gs.statcounter.com/#mobile_browser-IN-monthly-201005-2012051205"&gt;starting to come under attack&lt;/a&gt;. BlackBerry use continues to generally decline, though locale plays a big role here. WebOS is dead. On the horizon, Microsoft seems to be on a decent path with IE in Windows Phone and similarly Mozilla has got some great stuff in the works — that said, neither has traffic even worth mentioning at the moment.&lt;/p&gt;

&lt;p&gt;To get specific, mobile WebKit currently accounts for about 50.58% of worldwide mobile traffic, with Opera in second at 20.93% (&lt;a href="http://gs.statcounter.com/#mobile_browser-ww-monthly-201005-2012051205"&gt;May 2012&lt;/a&gt;, &lt;em&gt;excluding tablets&lt;/em&gt;). So it&amp;rsquo;s easy to see why developers are using features they find in WebKit: The browser is becoming incredibly popular with consumers and has great features. This also hopefully illustrates why Opera was the first to implement this idea of aliasing WebKit&amp;rsquo;s prefixes — in a certain light, they are the only browser remaining that poses a threat to Mobile WebKit&amp;rsquo;s advance.&lt;/p&gt;

&lt;h2&gt;The stated problem&lt;/h2&gt;

&lt;p&gt;It&amp;rsquo;s clear that implementing another browser&amp;rsquo;s prefixes is a solution — but what problem is it solving, and for whom? The next line from Bruce Lawson&amp;rsquo;s quote:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;This leads to a reduced user experience on Opera, Mobile Firefox and Mobile IE, which don&amp;rsquo;t receive the same shiny effects, such as transitions, gradients and the like, even if the browser supports those effects.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Let&amp;rsquo;s break this down. In fact, even &lt;em&gt;if&lt;/em&gt; Opera pushes &lt;code&gt;-webkit-&lt;/code&gt; support into production, &lt;a href="https://twitter.com/miketaylr/status/197178320834662400"&gt;most features will still not be accommodated by Opera Mini&lt;/a&gt;, only Opera Mobile. So the web is slightly less &amp;ldquo;shiny&amp;rdquo; for some browsers — some browsers are getting flat, square buttons when they could have round, bevelled ones. Certainly, though, this is not a new concept to web developers or browser vendors, nor is it &amp;ldquo;broken&amp;rdquo; by most modern web developers&amp;rsquo; definition. There is a small exception to this, noted below.&lt;/p&gt;

&lt;h3&gt;The real problems&lt;/h3&gt;

&lt;p&gt;So what, then, are the real problems that aliasing WebKit&amp;rsquo;s properties solves?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Usability issues that arise from poorly implemented CSS3.&lt;/strong&gt; Really, the only case in which I see these effects &amp;ldquo;blocking content&amp;rdquo; is with gradients: &lt;a href="http://cache.gyazo.com/9b5c7ed5d75091f004aec014723a0161.png"&gt;When web developers fail to declare a backwards-capable &lt;code&gt;background-color&lt;/code&gt;&lt;/a&gt;. I would think this is rare, however it is a very real UX issue hitting users that vendors have an opportunity to fix.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Non-WebKit mobile browser vendors are losing mindshare, especially among developers.&lt;/strong&gt; Aside from &amp;ldquo;the gradient issue&amp;rdquo;, I don&amp;rsquo;t believe having a few fancier effects will help vendors here. It would appear that mobile mindshare, for both consumers or developers, is now heavily dictated by hardware, hardware integration with the browser, and platform (operating system).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Browser vendors are tired of &lt;a href="https://twitter.com/miketaylr/status/197180484164399104"&gt;answering support requests for features they know they support&lt;/a&gt;.&lt;/strong&gt; From this specific example, I don&amp;rsquo;t think Mike and I are on the same page about &amp;ldquo;regular users.&amp;rdquo; (I would imagine most don&amp;rsquo;t even know what border-radius means). Again, this is not a problem for users as much as it is for browser companies, nor is it a new problem in any way.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;My problem&lt;/h3&gt;

&lt;p&gt;So there you go. We have real problems, for both the browser vendors and the users.&lt;/p&gt;

&lt;p&gt;If it isn&amp;rsquo;t already clear, I&amp;rsquo;m not a fan of this solution, and we&amp;rsquo;ve finally arrived at the crux of why: &lt;strong&gt;It is a short-sighted solution, primarily for the benefit of browser vendors, which contradicts an existing standard.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For the first problem noted above, regarding usability and gradients, it acts as a Band-Aid. Though it will fix the usability for their own latest browsers, it does not educate users, sends the wrong message, and leaves the site broken in older browsers.&lt;/p&gt;

&lt;p&gt;This last FAQ from the announcement highlights what I mean:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;So I only need to use &lt;code&gt;-webkit-&lt;/code&gt; prefixes now? w00t!&lt;/strong&gt; Absolutely not. We&amp;rsquo;re doing this now to ensure that there is compatibility with the 13 features we&amp;rsquo;re aliasing. We hope we never need add any more and that we can drop support for these. It remains vitally important to make sure that you code for all browsers, even if they don&amp;rsquo;t have support for a certain feature while you&amp;rsquo;re coding.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is a bit of a, &amp;ldquo;Do as I say, not as I do,&amp;rdquo; type of answer. Performance-minded users will consider dropping &lt;code&gt;-o-&lt;/code&gt; prefixed rules in order to save precious bytes in their CSS, especially for stylesheets with a lot of rich gradients. This idea could gain popularity if other browsers follow suite (Mozilla is clearly interested, even if Microsoft is backing out). In essence, Opera is saying, &amp;ldquo;Code the same best practices that have always been around,&amp;rdquo; while gently pulling you aside to say, &amp;ldquo;But if you don&amp;rsquo;t, no worries, we got you covered… for now.&amp;rdquo;&lt;/p&gt;

&lt;p&gt;Faruk Ates &lt;a href="http://farukat.es/journal/2012/04/650-opera-confirms-webkit-prefix-usage"&gt;sums it up best:&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;What this results in, however, is that “lazy web devs” now have even less incentive to do the right thing and test their work in Opera, because the onus has now fallen to Opera entirely to make sure their browser is doing everything right.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The problem leads to a solution that reinforces the problem.&lt;/p&gt;

&lt;h4&gt;A small technical consideration&lt;/h4&gt;

&lt;p&gt;Most of my objection thus far has been conceptual. There is also one small issue with the implementation I should note, &lt;a href="http://dev.opera.com/articles/view/opera-mobile-emulator-experimental-webkit-prefix-support/"&gt;though it is fairly nuanced&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;In order to send a rule with different values to Opera, it must be after the &lt;code&gt;-webkit-&lt;/code&gt; rule in the cascade… We discussed having the &lt;code&gt;-o-&lt;/code&gt; prefixed version always trump a &lt;code&gt;-webkit-&lt;/code&gt; version, but that breaks the cascade mechanism of CSS, which make it much harder for authors to debug sites and could have many unforeseen consequences. Therefore, we ask you to make a once-only check.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Essentially, I do think that &lt;code&gt;-o-&lt;/code&gt; should always trump &lt;code&gt;-webkit-&lt;/code&gt; in Opera, for what I hope are fairly self evident reasons. Opera cites the &amp;ldquo;cascade&amp;rdquo; here, but the CSS cascade has never been applied to separate vendor prefixes like this — in fact, this seems counterintuitive as it runs the chance of &amp;ldquo;breaking&amp;rdquo; existing sites. If one is supplying separate versions to WebKit and Opera, they now have to check the order of these declarations across all of their stylesheets.&lt;/p&gt;

&lt;p&gt;Again, the aliases solution is a bit of a hack meant to improve UX for these browsers — I don&amp;rsquo;t believe it should mandate that browsers who implement multiple prefixes necessarily treat them &amp;ldquo;equally.&amp;rdquo;&lt;/p&gt;

&lt;h2&gt;Take a deep breath&lt;/h2&gt;

&lt;p&gt;I&amp;rsquo;ve had the pleasure of meeting several Opera employees at various conferences, and pretty much every one has been a good-hearted, uber-talented developer. The engineering team at Opera does an amazing job at implementing and, to some degree, leading web standards. I, personally, do not test on it enough — and subsequently silently carry my shame like most other &lt;a href="https://twitter.com/#!/girlie_mac/status/197165438671667202"&gt;US-based web devs I know&lt;/a&gt;. I&amp;rsquo;m sure they have done wonderful research leading up to which properties they chose to alias, and I am sure, to their word, they handle those properties just fine. No cities will explode and no kittens will be harmed.&lt;/p&gt;

&lt;p&gt;In fact, contrary to popular belief, it is my respect for Opera which has led to this post. For better or worse, the CSS WG, and Opera&amp;rsquo;s browser development, operate in the public. If this were a silent upgrade — and didn&amp;rsquo;t disturb current behavior as noted in the technical section above — none of us would know, let alone care. Unfortunately, though, all of this does happen in the public, and so the choices they make send a message.&lt;/p&gt;

&lt;p&gt;I simply believe that at best, this solution acts as a Band-Aid, and at worst, it adds new incompatibilities, sends the wrong message to developers, and sets a loose, subjective guideline for other browsers to follow suit.&lt;/p&gt;

&lt;h2&gt;Some other potential solutions&lt;/h2&gt;

&lt;p&gt;To avoid being accused of taking the easy road, I have compiled a list of other possible ways Opera could try to improve our situation:&lt;/p&gt;

&lt;h3&gt;Fix Vendor Prefixes&lt;/h3&gt;

&lt;p&gt;Revise the purpose and implementation of vendor prefixes. I understand the need for browsers to implement each others&amp;rsquo; prefixes, because we&amp;rsquo;ve made a bit of a mess — I just think we should do it in a more global, thought-out approach, with rules. One example: What if browsers could identify &lt;code&gt;-anything-&lt;/code&gt; in addition to the unprefixed rule, once it has been accepted as a &lt;a href="http://www.w3.org/TR/tr-status-stds"&gt;Candidate Recommendation&lt;/a&gt;? This is slightly similar to what Opera is doing, except they would have to leave out &lt;a href="http://www.w3.org/TR/css3-transitions/"&gt;Transitions&lt;/a&gt;, as it is still a draft.&lt;/p&gt;

&lt;p&gt;Also, let&amp;rsquo;s drop the &amp;ldquo;we hope we can one day remove this&amp;rdquo; from the messaging. Find a backwards compatible, permanent, solution and let&amp;rsquo;s move on.&lt;/p&gt;

&lt;h3&gt;Evangelize&lt;/h3&gt;

&lt;p&gt;Send an email to the CTOs and CMOs at Microsoft and Mozilla and use the subject line, &lt;em&gt;&amp;ldquo;APPLE N GOOGLE R GOIN DOWN!!!&amp;rdquo;&lt;/em&gt; That&amp;rsquo;s attention grabbing. Anyway, tell them you want to run a campaign to get web devs using all the CSS prefixes. Pool your money and hire some &lt;a href="http://nclud.com/"&gt;badass&lt;/a&gt; &lt;a href="http://www.f-i.com/"&gt;web&lt;/a&gt; &lt;a href="http://jasonsantamaria.com/"&gt;designers&lt;/a&gt;. Create demos that rock our faces — Except, on Mobile WebKit, create an interstitial: &amp;ldquo;We noticed you&amp;rsquo;re visiting on a WebKit browser.&amp;rdquo;&lt;/p&gt;

&lt;p&gt;Bam — immediately, this will bring up strong emotions from the dark days in most developers. &amp;ldquo;While this demo &lt;em&gt;also&lt;/em&gt; work in your browser, it looks equally fantastic in Opera Mobile, Firefox for Android, and Internet Explorer. This matters. There are currently XXX,XXX,XXX people who browse the mobile web every day, who don&amp;rsquo;t have iOS or Android. Learn more.&amp;rdquo; Then, in your learn more, explain why this matters, and link to resources like &lt;a href="http://caniuse.com/"&gt;Can I Use&lt;/a&gt;, &lt;a href="http://codepo8.github.com/prefix-the-web/"&gt;Prefix the web&lt;/a&gt;, and &lt;a href="http://cssprefixer.appspot.com/"&gt;CSS Prefixer&lt;/a&gt; and great tools like &lt;a href="http://sass-lang.com/"&gt;Sass&lt;/a&gt;/&lt;a href="http://compass-style.org/"&gt;Compass&lt;/a&gt;, &lt;a href="http://lesscss.org/"&gt;Less&lt;/a&gt;, and &lt;a href="http://learnboost.github.com/stylus"&gt;Stylus&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In short, continue evangelizing: It&amp;rsquo;s the most important part of making sure this issue is not just fixed in your latest browser, but across the web.&lt;/p&gt;

&lt;h3&gt;Realize you can&amp;rsquo;t win them all&lt;/h3&gt;

&lt;p&gt;Make a page on the internet that says, &amp;ldquo;Sorry, not all pages on the web look exactly the same.&amp;rdquo; Then, when someone emails you saying, &lt;a href="https://twitter.com/#!/miketaylr/status/197180484164399104"&gt;&amp;ldquo;Hey, this button looks more round on my laptop,&amp;rdquo;&lt;/a&gt; you can just reply with the link. Actually, &lt;a href="http://dowebsitesneedtolookexactlythesameineverybrowser.com/"&gt;it already exists!&lt;/a&gt; (thanks &lt;a href="https://twitter.com/jayrobinson/status/197467529533333506"&gt;Jay&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;If they send a more substantial error, like the gradient example above, say, &amp;ldquo;Sorry, this is a bug on the website&amp;rsquo;s part, you should contact them.&amp;rdquo;&lt;/p&gt;

&lt;h2&gt;And finally&lt;/h2&gt;

&lt;p&gt;If you&amp;rsquo;re a web developer, use CSS prefixes responsibly. They mean &amp;ldquo;experimental.&amp;rdquo; If we didn&amp;rsquo;t screw this stuff up so much, the browsers wouldn&amp;rsquo;t have to consider this hack. That said, if we are going to do something about it, let&amp;rsquo;s think it through to its logical conclusion: A global, backwards-compatible, change to the current implementation of vendor prefixes.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/22222538210</link><guid>https://www.webkitbits.com/post/22222538210</guid><pubDate>Tue, 01 May 2012 16:14:00 -0700</pubDate><category>firefox</category><category>ie</category><category>opera</category><category>prefixes</category><category>web</category><category>tech</category><dc:creator>9-bits</dc:creator></item><item><title>Adobe &amp; HTML

Adobe has released a new site to showcase all...</title><description>&lt;img src="https://64.media.tumblr.com/tumblr_m2zsa2xMuy1qzynf0o1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;h3&gt;&lt;a href="http://html.adobe.com/"&gt;Adobe &amp; HTML&lt;/a&gt;&lt;/h3&gt;

&lt;p&gt;Adobe has released a new site to showcase all of its recent work with HTML5, like &lt;a href="http://html.adobe.com/webstandards/cssregions/"&gt;CSS Regions&lt;/a&gt; and &lt;a href="http://html.adobe.com/webstandards/cssshaders/"&gt;Shaders&lt;/a&gt;. Definitely worth checking out.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/21719334720</link><guid>https://www.webkitbits.com/post/21719334720</guid><pubDate>Tue, 24 Apr 2012 09:25:00 -0700</pubDate><category>html5</category><category>css3</category><category>adobe</category><dc:creator>9-bits</dc:creator></item><item><title>Modern Web Development, Part 1 - The WebKit Inspector</title><description>&lt;a href="http://jtaby.com/2012/04/23/modern-web-development-part-1.html"&gt;Modern Web Development, Part 1 - The WebKit Inspector&lt;/a&gt;: &lt;p&gt;Amazing and thorough rundown of the features in the WebKit inspector, including some of the newer features in Chrome Canary.&lt;/p&gt;</description><link>https://www.webkitbits.com/post/21718972106</link><guid>https://www.webkitbits.com/post/21718972106</guid><pubDate>Tue, 24 Apr 2012 09:16:41 -0700</pubDate><category>chrome</category><category>safari</category><category>inspector</category><category>canary</category><dc:creator>9-bits</dc:creator></item></channel></rss>
