Category: XHTML / HTML

  • Scope donuts

    Note: This article is esoteric-could-be-should-be wishing for future browsers. If you only like to hear about what you can use right now, you won’t like this. You’ve been warned. 😉 At first, when the HTML5 working group added the scope attribute I was skeptical. I thought, “oh dear, this is going to be another way…

  • Don’t Style Headings Using HTML5 Sections

    Styling headings is either a deceptively complex problem, or maybe the design of CSS made it appear complex when it need not have done. When styling headings (or really anything) we want three big goals to be met: DRY – Do not repeat yourself. We want to set headings once and never (ok, rarely!) repeat…

  • Our (CSS) Best Practices Are Killing US

    Our (CSS) Best Practices Are Killing US

    I was prepping to speak at Webstock this year when I realized I didn’t want to give the talk I had proposed. I didn’t want to talk about the Mistakes of Massive CSS, because I realized it went deeper than that. In fact, in most cases, the things we considered best practices were leading to…

  • Performance Double Whammy Hits New Zealand at Webstock

    Interested in Performance and scaling sites to a large number of visitors or pages? I just realized both Steve Souders and I will be giving talks at Webstock next week! This is a pretty amazing opportunity to massively increase your Performance mojo in one go. 🙂 I’m going to be hosting a workshop in which…

  • Grids improve site performance

    CSS grids can improve performance? How so? The Importance of Page Weight The weightier your page the slower the user experience. There are a few notable ways you can ease this correlation, but for the most part keeping your pages snappy is about being absolutely relentless when reducing and optimizing code. CSS is no exception.…

  • Guest on The Big Web Show

    This week I had the good fortune to spend an hour talking with Jeffrey Zeldman and Dan Benjamin about all things CSS on The Big Web Show. It was lively and fun despite my cell phone making weird noises during the podcast. (Ooops, sorry!) We talked about progressive enhancement, carpentry, testing, rounded corners, oocss, performance,…

  • Top 5 Mistakes of Massive CSS

    Last week, Stoyan Stefanov and I spoke at Velocity Conference about optimizing massive CSS. We talked about our experiences optimizing large-scale sites like Facebook and Yahoo!, and we discussed our findings regarding the CSS efficiency of the Alexa Top 1000 websites. Velocity was kind enough to share videos of the session. What is the state…

  • The media object saves hundreds of lines of code

    What is the internet made of? At least the UI layer is mainly composed of media blocks. I talked about the Facebook stream story before, and all the tiny objects of which it is composed. For the most part, the stream story is made up of the media object repeated over and over. The media…

  • CSS Variables Specification

    I don’t want CSS to become a programming language, but I do want it to be a better declarative language. I would like to see variables added to the CSS Specification. People have been begging for Variables or Constants in various incarnations forever. Variables will help us do more with less code. It is time…

  • How to create CSS objects? Get the granularity right!

    In my previous post, I said: Shoehorning CSS and HTML into PHP abstractions prevents the code from being DRY and ultimately leads to code bloat, because, the CSS and HTML require a far more granular object structure than the PHP. And then I didn’t expand on it, or give proper context. Ooops, sorry! In the…