Grow your CSS skills. Land your dream job.

Article Archives

The Script Tag

I got a great question from reader Josh Kreis:

I've noticed that on a <script> tag, there are all kinds of variations that all seem to work cross-browser. What is necessary and what isn't?

<script> //some javascript here </script> <script
November 30, 201150 comments

Play Music on Your Site with the Grooveshark Streaming API

Grooveshark is a web app for listening to music. You can search for any play just about any song there is. With an account you favorite stuff, build playlists, do social stuff, you know the drill. Perhaps less known is …

November 28, 201117 comments

New Navigation / New Primary Sponsor

I just pushed out a new main navigation on the site. The reasons were twofold.

One, I needed to add a few new sections to the site. Go check em out! I added a gallery section where I can post …

November 26, 201167 comments

Simple Styles for Horizontal Rules

That is, the <hr> element. With the help of a few contributors, I put together this page of very simple styles for them. You could get a lot fancier with an element like a <div> that can hold content, but …

November 22, 201150 comments

Reader Question about Hosting

A reader (who wishes to remain anonymous) wrote in asking me about web hosting. They had a bunch of requirements:

  1. Wishes to resell hosting to clients and charge them monthly (currently charges $50/year).
  2. Clients need access to their own hosting,
November 21, 201190 comments


Kevin Dees interviewed me. We talked about all kinds of front-endy stuff, this site, and other fun stuff. (video) …

November 19, 2011

Using Fonts for Icons… a good idea, I'm telling you.

I've created this page to attempt to convince you. It shows examples and lists six reasons why it's a good idea and three common arguments against them (some of which I refute).

Don't …

November 18, 201172 comments


I just added "The Big Three" sharing buttons to articles on this site: Twitter, Google Plus, and Facebook. I've shared my thoughts on sharing buttons like this in the past. I essentially decided that I didn't like them for this …

November 17, 201149 comments

Bubble Point Tooltips with CSS3 & jQuery

I needed some tooltips for a thing. In looking around for a little inspiration, I didn't have to go further than my dock:

The inspiration: contextual menus from OS X dock

This is where I ended up:

View Demo  …
November 17, 201173 comments

Vendor Prefixes, yadda yadda yadda, strong opinions

Henri Sivonen:

I think vendor prefixes are hurting the Web. They are hurting Web authors. They are hurting users of browsers. They are hurting competition in the Web browser space.

I'm tempted to raise my fist in disagreement, but you …

November 15, 2011

Blue Beanie of Thankfulness

November 30th, 2011 is Blue Beanie Day. It's a (quite literal) hat tip to Jeffrey Zeldman, his book Designing with Web Standards, and a show of support for web standards.

I regret to say that I've never …

November 15, 201116 comments

Five Questions with Tab Atkins

Tab Atkins (Twitter) is a member of the CSS working group and contributor to several other working groups in the W3C. He works for Google on the Google Chrome Team. Browsers and specs are the bones and blood …

November 14, 20118 comments

Yes/No Ipsum!

I've heard a number of people make statements lately like: "If you're using Lorem Ipsum text, just stop it." Or similar. That argument, expanded, goes something like this. Design exists to serve content. Lorem ipsum is fake content. If you're …

November 9, 2011113 comments

The Future, Glassy?

Bret Victor:

Now, take out your favorite Magical And Revolutionary Technology Device. Use it for a bit.

What did you feel? Did it feel glassy? Did it have no connection whatsoever with the task you were performing?…

November 8, 2011

CSS3 Secrets

I bet there is a couple things in this slide deck from Lea Verou that you didn't know about CSS3.…

November 7, 2011


Mac users, this is really worth checking out. As you work on local projects, you have your HTML and CSS open in your text editor of choice, and the web page open in a browser. With LiveReload, as soon as …

November 3, 2011

jQuery 1.7 Released

You'll probably start seeing .on() and .off() on tutorial sites so just a heads up, that's new syntax for event binding in jQuery (although all the old methods still work too).…

November 3, 2011

Columns and the Greatest Common Divisor

I was recently putting together some CSS for columns. There was a few pre-determined widths that the columns needed to accommodate. For whatever reason (maybe because every grid framework in the world is this way) my mind went right to …

November 3, 201125 comments

Five Questions with Lea Verou

Lea is a front end web developer from Greece. You have likely heard of her, as ever since she started blogging in English (read more about that below), she's had quite a boom in popularity. Or perhaps you've seen some …

November 1, 201134 comments

A Call for ::nth-everything

We already have ::first-letter and ::first-line which are useful. Why not expand those out into a full set of selectors that follow the same pattern of the ::nth-child family? I attempt to make the case here.
October 31, 201174 comments

Centering in the Unknown

When it comes to centering things in web design, the more information you have about the element being centered and its parent element, the easier it is. So what if you don't know anything? It's still kinda doable.

Not too…
October 29, 201186 comments

Lots of Ipsum

There is just too many awesome Lorem Ipsum (placeholder) text generators going around lately not to round them up.

Cupcake Ipsum

Dragée soufflé sweet roll gummi bears. Tiramisu chocolate macaroon jelly chocolate bar jujubes icing. Faworki bear claw brownie pudding …

October 28, 201145 comments

Five Questions with Paul Irish

Paul probably doesn't need an introduction around here. He's this smart successful front end developer dude who's work fuels our inner critic. So instead of a lengthy intro, I'm just going to drop a bunch of links so we …

October 26, 201129 comments

Results of Group Design Project on Rating Three Candy Bars

Last week I proposed a little design challenge: design a small part of an interface which allowed a user to rate three candy bars in order of how much they liked them. Quite a few folks took a stab …

October 25, 201119 comments

How CSS Animations Work on Sales Page for iPhone 4S

Impressed by the CSS animations on the Apple 4S sales page? I am. John B. Hall makes it clear by showing a miniaturized version where we can see all the off-screen elements.…

October 25, 2011

HTML5 for Web Designers Website

The content of HTML5 for Web Designers, the first A Book Apart book by Jeremy Keith, is online. Under the hood, the title bar at the top of the page is actually the <title> element, unhidden and styled up. …

October 24, 2011

What We Don’t Know

There is an awful lot we don't know about a user visiting our website. For example, almost everything. And we know less and less every day as the web gets bigger and its users more diverse. Let's accommodate those unknowns.
October 23, 201147 comments

Abbr’s for Web Nerd Acronyms

I'm really lazy about using <abbr> tags for acronyms. Most people who read a techy blog like this probably understand them, but surely there are some visitors who don't where a simple tooltip explanation would be beneficial. Maybe with this …

October 19, 201172 comments

Group Design Project: Rate Three Candy Bars In Order

Last time we did a group design project, we did a list with functions and we got lots of interesting ideas. Then the other day I linked to a video of Ryan Singer, a tiny part of which …

October 17, 2011201 comments

CSS Shaders

A bunch of crazy awesome affects you can apply via CSS through the filter property: blur, drop-shadow, gamma, grayscale, hue-rotate, invert, opacity, saturate, sepia, and sharpen. Adobe has been doing some great stuff with CSS lately. Their last amazing demo

October 14, 2011


It's a new language the runs in the browser and servers. A lot of it is over my head, but I always celebrate new thinking especially when it has a bunch of smart people behind it. The obvious point is …

October 14, 2011

New Poll: Ideal Page Weight

What do you think is reasonable page size to try and stay under for a modern web design?
October 13, 201162 comments

New Poll: The Case of the Giant Background Image

Let's say you've designed a web page and it makes use of a full page background image. You really like the way the site looks with this background image. It looks amazing. But the image is 350k. You've …

October 13, 201132 comments

Poll Results: Your Favorite Page Title Separator

THE PEOPLE HAVE SPOKEN. The pipe character "|" is by far the most popular page title separator with 47% of the vote and being up against 15 other choices. Example:

Article | Category | Site Title

The dash and en-dash …

October 12, 201110 comments

Making SublimeVideo Fluid Width

SublimeVideo is a nice HTML5 video polyfill service, but it hasn't allow for fluid width video. Until now.
October 11, 201117 comments

Writing Better HTML & CSS (Slides from FOWA London)

I'm just back from London where I spoke at the Future of Web Apps. My talk was titled, rather generically, Writing Better HTML & CSS. Slides pale in comparison to real talks, but I still like posting them in case …

October 10, 201138 comments

Building a Starburst with CSS

If there's one thing I love most about what I do it's building out the challenges that a designer throws my way. There's almost always a way to reproduce a design in code, and I love figuring out how to …

October 6, 201143 comments

Semantic Animation

Animations are inherently visual. But can we give a similar experience to everyone by getting a bit more semantic?
October 4, 201135 comments

Amazon Silk

Listen to the engineers behind Amazon's new "Silk" web browser talk about how it uses the cloud to take the load off mobile devices.

Sounds like it does all the asset-requesting for you from the cloud, optimizes it, then sends …

September 28, 2011

Scalable and Modular Architecture for CSS

Jonathan Snook has released an "evolving guide to CSS architecture for sites small and large." My favorite is the "Depth of Applicability" section:

Each rule set that we add to our style sheet creates an ever increasing connection between the …

September 28, 2011

Better Linkable Tabs

Linking to specific tabs is often done with hash links. I think doing it with a URL parameter can accomplish the same goal without some of the problems that hash links can cause.
September 26, 201127 comments

In Praise of the Forums

Jane Wells of Automattic lays out four reasons why someone may not use forums for a question they have. Then she disputes all four of them while sharing an example of where a forum post get a lot more done …

September 26, 2011

Sencha Looks at IE 10

Michael Mullany:

...the IE10 HTML5 experience is one of the best we’ve seen on any platform to date.

I've heard from a number of folks that IE 10 will be the most advanced browser to date (support the most standards …

September 23, 2011

Upcoming Speaking Engagements

I'll have a little string of events I'll be giving talks at.

I'll …

September 22, 201120 comments

Radio Buttons with 2-Way Exclusivity

Let's say you were tasked with creating a UI in which users can rate three candy bars from their most to least favorite. A grid of radio buttons isn't a terrible way to go about this.

A (small) grid of…
September 20, 201128 comments

New Poll: What’s Your Favorite Page Title Separator?

Just for silly kicks, let's keep on with the page title polls, this time with perhaps the most trivial of all choices. The poll is embedded on the site in the sidebar. Let everyone know what your favorite page title …

September 19, 2011124 comments

Poll Results: Favorite Page Title Structure

This was an interesting poll because there is no clear consensus on "the best way" for sites to handle page titles. It varies quite a bit even among similar websites. To keep things more focused, I put forth a very …

September 19, 201110 comments

Watch Ryan Singer Think Through a Design Problem

High quality video training marketplace PeepCode has a series of screencasts called Play by Play where they record masters of their trade doing their thing.

In this one, we get to watch a user experience designer think through a design …

September 18, 2011

Default Tab UI of the Current Desktop Browser Landscape

I opened up the same 6 tabs in current versions of all the desktop browsers, then took screenshots of the UI of just the tabs themselves. These are from a Mac running OS X Lion.

Firefox 6

Chrome 15

September 17, 201135 comments

Fancy Scrolling Sites

In the last year or so, there's been enough sites that do fancy things when you scroll down that it's kind of a trend. I thought I'd blog it, you know, for the sake of history.

By "fancy things" I …

September 14, 201194 comments

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