Grow your CSS skills. Land your dream job.

Article Archives

Mixing Responsive Design and Mobile Templates

You need a mobile strategy for your site. You have to pick Responsive Design or a dedicated mobile site, right? Maybe not. Maybe you can mix and match a variety of strategies.

Me and the team are working hard on …

March 4, 201335 comments

More CSS Secrets

How could I not link to this CSS trick saturated talk by Lea? Great follow up to the original. …

February 27, 2013

Uniqlo Stripe Hovers

For the larger promotional boxes in the design of, they use animated stripes that reveal on hover. It's kind of awesome, if you ask me. Perhaps because they wanted to share the awesome with as many different browsers …

February 27, 201354 comments

Search with Filters Responsive Design Pattern

Some design patterns have been explored fairly thoroughly as we've moved into an era of responsive design. Others not so much. There are plenty of complex patterns that are still worth exploring, like this one.
February 25, 201313 comments

[W3Conf] Eric Meyer: “The Era of Intentional Layout”

Eric Meyer (@meyerweb) is a CSS champion, author, and co-founder of the An Event Apart conferences. He talked about the end of an era of layout (and the beginning of a new one).

These are my notes …

February 22, 201311 comments

[W3Conf] Nicolas Gallagher: “The purification of web development”

Nicolas Gallagher (@necolas) is a front end developer at Twitter and has worked on big projects like HTML5 Boilerplate and Normalize.css. Nicolas talked about questioning old assumptions about front end web development.

These are my notes from …

February 22, 201319 comments

[W3Conf] Tomomi Imura: “Mobile Web: Real Life Examples of HTML5 for Mobile”

Tomomi Imura (@girlie_mac) works on the Open Web at Nokia and talked about real life use cases for HTML5 on mobile devices.

These are my notes from her presentation at W3Conf in San Francisco as part of this

February 22, 20136 comments

[W3Conf] Luz Caballero: “Device (dis)orientation?”

Luz Caballero (@gerbille) used to be Dev Relations at Opera and talked about the mathematical world of device orientation on mobile devices.

These are my notes from her presentation at W3Conf in San Francisco as part of this

February 22, 20130 comments

[W3Conf] Ariya Hidayat: “Fluid User Interface with Hardware Acceleration”

Ariya Hidayat (@ariyahidayat) works at Sencha and created PhantomJS and Esprima. He talked about front end web performance.

These are my notes from his presentation at W3Conf in San Francisco as part of this live blog series

February 22, 20134 comments

[W3Conf] Brad Hill: “HTML5 Security Realities”

Brad Hill (@hillbrad) works at PayPal work works with the W3C on security issues.

These are my notes from his presentation at W3Conf in San Francisco as part of this live blog series.

You can't read anything …

February 22, 20131 comment

[W3Conf] Léonie Watson: “Design like you give a damn: Practical accessibility for web professionals”

Léonie Watson (@leoniewatson) is a digital accessibility consultant from Bristol, UK. She believes in the importance of accessibility and also that it's not a hinderance to creativity.

These are my notes from his presentation at W3Conf in San …

February 22, 20131 comment

[W3Conf] Joshua Davis: “Beyond Play: the Art of Creative Coding”

Joshua Davis is an artist who sees the web as a creative canvas. He uses computers to make art, but isn't limited to that as a tool.

These are my notes from his presentation at W3Conf in San Francisco as …

February 22, 20132 comments

Setting a Performance Budget

I read this Tim Kadlec article a while ago but the more I think about it the more I like it.

If you are going to take performance seriously (instead of just paying lip service to it or chipping away …

February 21, 2013

Using WAI-ARIA Landmarks

I need to do a better job at at using the role attribute. It's so easy and has so many benefits. Important note: all content should be within a landmark role. Steve Faulkner shows the way.…

February 18, 2013

Using Flexbox: Mixing Old and New for the Best Browser Support

Flexbox is pretty awesome and is certainly part of the future of layout. The syntax has changed quite a bit over the past few years, hence the "Old" and "New" syntax. But if we weave together the old, new, and …

February 18, 201358 comments

Notes from My Workshop at Webstock ’13

I thought my trip to New Zealand for Webstock warranted a special workshop. In honor of their unique national bird, I created a little one-pager website The Kiwis of New Zealand. The site started life as a simple Photoshop …

February 17, 201322 comments

The Amazing Web Interview

Martin Wolf interviews yours truly on his blog, which is a very good mostly-link-blog-with-commentary you should subscribe to.…

February 11, 2013

Group Advice: Working on an Anti-RWD Team

A reader (let's leave them anonymous) writes in:

The agency where I work has never produced a responsive design. As a developer I'm handed fixed-width designs in the form of static PSD comps. I'm then expected to slice these up, …

February 11, 201380 comments

REMux: An Experimental Approach to Responsive Web Design

In which Dirk Lüth shows an experimental RWD technique where layouts (and just about everything) is controlled with rem units and the base font size is adjusted based on screen width available.
February 10, 201366 comments

Dig Deep Into CSS Gradients

Ana Tudor with some fantastic visualizations to help understand how CSS gradients are rendered.…

February 7, 2013

Wrapup of Navigation in Lists

The recent post about marking up navigation in lists (or not) generated nearly 200 comments of mostly-great discussion on this topic. I thought it would be of benefit to wrap up up the important points.

"Against" navigation in lists
  • At
February 4, 201357 comments

New Poll: alt Text Usage

Alt text has come up a bunch of times for me recently. One reader wrote to me asking if people really use them anymore. He does and said "I feel alone in carrying out the good fight." ALA posted a …

February 1, 201382 comments

Poll Results: Version Control Usage

The latest poll on CSS-Tricks was all about version control usage. People voted on how much they use version control, from never to using it on every single project. Here's the breakdown:

And now a few paragraphs worth of …

January 31, 201330 comments

Credit Card Info in One Field

Credit card numbers, expiration dates, and CVV's are all numbers, so why not collect them all in one field and leave the number keypad open the whole time? Good idea, Zachary Forrest. via Luke.

Related: if you use Stripe, …

January 29, 2013

Navigation in Lists: To Be or Not To Be

If you Google around on whether or not you should use lists as the markup for navigation on websites, you'll find no debate. Every article suggest that yes you should. The vast majority of tutorials you read will use lists …

January 29, 2013218 comments

2013 CSS Wishlist

In which we look at some things that I think would be pretty nice to have in CSS. And also some things that are actually likely to happen. And why that's probably better.
January 24, 2013142 comments

Smashing Mag CSS Q&A: Final Edition

Maybe not the last one ever ever, but the last one for now in this series of five or so we did in this round. Includes questions about CSS performance, choosing class names, getting the right line numbers in the …

January 22, 2013

Don’t Stop The Music: Links on Pages Playing Audio

Over at ShopTalk, we've gotten a number of requests from folks that wished links in our show notes would open in a new tab. They've gotten burned by clicking a link on the page while listening to a podcast …

January 22, 201326 comments

Lingering Misconceptions on CSS Preprocessors

I recently received this email from a reader who is just getting started as as front end developer and wanted to get into CSS preprocessing. It has a few common misconceptions in it that I hear quite often. So, blog …

January 21, 201364 comments

CSS for Babies: A Critical Analysis

The following is a super duper serious critical review of the book CSS for Babies. Super. Duper. Serious.

I'm afraid even the title of the book is an invalid CSS style declaration.

Are we capitalizing tag selectors now? That's…
January 20, 201354 comments

CSS-Tricks Chronicle X

Recent forthcomings are forthcame upon the page in deepest regard to the events of the fortnight and even beyond.
January 18, 201311 comments

Understand the Favicon

Jonathan T. Neal digs in. The low down: most browsers can deal with PNG, but if you specify an ICO, it will use that anyway. IE (even 10) don't support PNG, so you need ICO. So, use ICO. Apparently this

January 18, 2013

Media Fragments URI – Spatial Dimension

Fabrice Weinberg shows us a future web technology in which you can use just a part of a bit of media. In this case, a part of an image. The ability to do this will open up some new possibilities for designers.
January 17, 201314 comments

Internet Users Demand Less Interactivity

“Every time I type a web address into my browser, I don’t need to be taken to a fully immersive, cross-platform, interactive viewing experience,” said San Diego office manager Keith Boscone. “I don’t want to take a moment to provide …

January 16, 2013

An Advanced Guide to HTML & CSS

Shay Howe has started a new learning series on HTML & CSS, this time moving beyond the basics into the real nitty-gritty stuff you need to know as a front end developer. 3/10 are done, with a new one coming …

January 16, 2013

Zooming Squishes

Responsive designs can squish content inward when zooming, breaking a decent layout after just a few zooms. One reader writes in who really dislikes this on CSS-Tricks. But it's (mostly) fixable! Just make those media queries EM-based instead of pixel-based.
January 16, 201351 comments

The Accessibility Project

Dave Rupert heads up a new project:

For many web developers, accessibility is complex and somewhat difficult. [The Accessibility Project] understands that and we want to help to make web accessibility easier for front end developers to implement.…

January 15, 2013

I'm not hugely into wireframing, but I can see the value in some workflows. This tool for it is deliciously simple. I like the UI touch where if you resize the "browser" window small enough it turns into a phone.…

January 15, 2013

HTML5 Drag and Drop Avatar Changer with Resizing and Cropping

In any app that has user avatars, users should be able to change those avatars. Anything to make that easier is desirable. Many apps start with a user's Twitter avatar, Facebook avatar, or Gravatar. That's a smart move. Avatars …

January 14, 201320 comments

How Do You Structure JavaScript? The Module Pattern Edition

JavaScript is interesting in that it enforces no particular structure upon you. "Bring Your Own Organization", if you will. As I write more and more JavaScript in web app sites, this becomes more and more interesting. How you structure your …

January 10, 201395 comments

Interview with Ian Hickson

Bruce Lawson interviews the editor of the HTML spec. A candid look into how the web evolves and its future by someone who has a lot more power in shaping it than we do. You know it's going to be …

January 8, 2013

Rethinking Dynamic Page Replacing Content

Jesse Shawl takes an old(ish) CSS-Tricks demo and updates it for today's world. Using the HTML5 history API he changes the URL and content of a page when navigation items are clicked, without refreshing the page.
January 8, 201372 comments

Workshop Notes from InControl Hawaii

In which I go over many of the important parts of a workshop I did for a small room of folks in Honolulu, Hawaii. Includes the Photoshop file we worked from (kinda) and a GitHub repo of where we ended up.
January 7, 20136 comments

“Never Having to Leave DevTools”

Speaking of workflow stuff, check out this short video by Remy Sharp showing us how you can use Chrome DevTools as a code editor. Literally edit JavaScript and save it back to disk without ever leaving the browser.…

January 5, 2013

How to Create Retina-Caliber Favicons

John Gruber shows us tools and steps for creating retina ready favicons.

When I looked into this a few months ago only Safari was even supporting them, but it appears as if Chrome is now too, so I'd say it's …

January 5, 2013

ShopTalk Episode 49

This week Dave and I were joined by David Walsh, a long time fellow blogger and now Mozilla employee. We talk about em-everywhere, analytics discrepancies, tendonitis, and more! Thanks to In Control and for sponsoring. …

January 5, 2013

PPK on Gradients

The problem with gradients is that they are a syntactic nightmare. The gradient spec writers and browser makers changed their mind not once but twice. Thus we have three sets of syntax, and all three occasionally crop up even today. …

January 4, 2013

Style Injection is for Winners

By "style injection", I mean being able to see styling changes immediately after authoring them without having to manually refresh your browser window. This isn't a brand new concept, I just mention it now because it's so awesome that if …

January 4, 201361 comments

In Search of the Perfect Radius

A bunch of research from Rakesh on the correct values for nested border radii. The conventional wisdom is Inner Radius = Outer Radius – Border Width. This holds true here, but what if that yield a negative value. Also see …

January 3, 2013

All You Need to Know About CSS Transitions

Alex Maccaw with a bunchload of up to date information on CSS transitions. Includes some clever stuff like a trick to avoid transitioning width (not very performant) by instead moving the element and exposing more of it underneath.

I also …

January 3, 2013

*May or may not contain any actual "CSS" or "Tricks".