Art-Directing SVG Images With The viewBox Attribute: How-To, Notes, Tips and...
The SVG viewBox attribute is easily one of SVG's most powerful features. Mastering this attribute can take your SVG skills to the next level, especially considering that a couple of the main SVG...
View ArticleThe State of SVG Animation
The state of SVG animation is changing. CSS, SMIL and JavaScript can be used to animate SVGs. However, SMIL is soon to be deprecated and was never supported in Internet Explorer. CSS animations on SVG...
View ArticleArt-Directing an SVG Embedded Using
I have recently finished a front-end development project for Provata Health— a US-based health and wellness company specializing in health promotion and behavior change science. As part of their...
View ArticleStyling the Contents of SVG with CSS
An in-depth article on how to style the contents of the SVG <use> element and overcome some challenges it brings. We get into where the contents are cloned (the shadow DOM!), what limitations...
View ArticleChapter 4, Smashing Book 5
The new Smashing Book is out! It’s packed with a lot of time-saving, practical techniques for crafting fast, maintainable and scalable responsive websites. I wrote a chapter in the book—Chapter 4:...
View ArticleCSS vs. SVG: Graphical Text Effects
This post is the first in a series of posts exploring techniques and examples that can be achieved using both CSS and SVG, and compares them both. Since I am biased to SVG, this series is really...
View ArticleBuilding A Circular Navigation with CSS Clip Paths
The CSS clip-path property is one of the most underused and yet most interesting properties in CSS. It can be used in conjunction with CSS Shapes to create interesting layouts, and can be taken to the...
View ArticleCSS vs SVG: Styling Checkboxes and Radio Buttons
This post is the second in the series of posts exploring techniques and examples that can be achieved using both CSS and SVG, and compares them both. In this article, we’re going to look into ways to...
View ArticleCSS vs. SVG: Shapes and Arbitrarily-Shaped UI Components
This post is the third in the series of posts exploring techniques and examples that can be achieved using both CSS and SVG, and compares them both.In this article, we are going to go over techniques...
View ArticleCSS vs. SVG: The Final Round(up)
This is the last article in the series of article comparing common CSS techniques to their SVG counterparts. This article is a roundup of several CSS and SVG solutions, as opposed to being an article...
View ArticleDeveloper of the Year 2015 net Award
Last Friday, I gave my first keynote in the UK at Generate Conf. That same day, the net awards were announced. On Saturday, I came back home with an award: the Developer of the Year award. This is a...
View ArticleTips for Creating and Exporting Better SVGs for the Web
Working with SVG in a RWD workflow usually involves a design phase and a development phase. The design phase is usually handled by designers who may or may not know how to code. And because of the...
View ArticleAnimated SVG vs GIF [CAGEMATCH]
SVG can do much more than display static images. Its animation capabilities are one of its most powerful features, giving it a distinctive advantage over all other image formats. They are one of many...
View Article2015 In Review
Happy new year!🌟 OK, I felt awkward starting a blog post that way—I confess. ☺️ But this is also an unusual post—not an article about CSS or SVG, and not a lengthy tutorial about web development. It is...
View ArticleSVG Style Inheritance and the ‘Flash Of Unstyled SVG’
There are too few things not to like about SVG, and I don’t mean the things that browsers cause by incomplete or lack of certain features or buggy implementations. Yet you might sometimes get some...
View ArticleMaking the Switch Away from Icon Fonts to SVG: Converting Font Icons to SVG
If you’re reading this article, then I can probably assume you’ve already decided to switch from using fonts for icons to an SVG icon system. Or maybe you're pondering the idea and want to get an...
View ArticleMimic Relative Positioning Inside an SVG with Nested SVGs
Positioning elements inside an SVG image is very similar—if not identical—to positioning elements absolutely in HTML. Every element in SVG is positioned "absolutely" relative to the SVG viewport, and...
View ArticleBuilding a fully-accessible help tooltip
Today is one of those days that started out with a Google search for yet another accessibility question/concern. I’m working on a new project for my client Provata and part of that project is to build...
View ArticleMigrating from Jekyll+Github Pages to Hugo+Netlify
During the last 18 months, working on my Web site became a daunting task—be that for developing, redesigning it, writing a blog post, or making updates to my speaking and workshop pages. My then...
View ArticleAuto-Sizing Columns in CSS Grid: auto-fill vs auto-fit
In this article I explain the subtle but important difference between auto-fill and auto-fit for sizing columns in CSS Grid. Each of them exhibits a responsive behavior once compbined with repeat()...
View ArticleCropping & Scaling Images Using SVG Documents
I’m always interested in and thinking about ways to use SVG in my client projects to solve common UI challenges — uses that go beyond simple icon display and animated illustrations. I’m also always...
View ArticleCase Study: Optimizing SVG Text & Image Delivery with Inline SVG
I love when I’m pushed to think of creative techniques when tackling design and dev challenges on my client projects. And it so happens that the new Smashing Magazine design released this year was one...
View ArticleGoing Offline
Earlier this month I rolled out a new and long overdue feature on this Web site: offline viewing. In other words, from now on, after your first visit, you can re-visit my Web site even when you’re not...
View ArticleA new Smashing talk. A smashing new experience.
I’m currently in Toronto, Canada, where I ran a workshop two days ago and gave a talk today at yet another SmashingConf event. Like all previous SmashingConfs, it was… well… smashing! But this one...
View ArticleOn Designing and Building Toggle Switches
Yesterday I was working on creating the slides and accompanying demos for my upcoming Web Directions Code talk next week. One of the demos I’m creating is a basic proof of concept for a simple switch...
View ArticleInterview: net Magazine September 2018 Issue #310
The September 2018 issue of net Magazine came out today, featuring a six-page interview with yours truly, discussing all things front-end development and UX ahead of my upcoming workshop at Generate...
View ArticleSVG Filters: The Crash Course
I always try to customize in-house client workshops to my client’s needs. That sometimes also means that if my client’s design and dev team is interested in learning something that is not covered in my...
View ArticleOn Switching from HEX & RGB to HSL
A couple of weeks ago I tweeted about a feature that I didn’t know existed in VS Code: the visual color editor that pops up when you hover over color values in a style sheet. Sorry, your browser...
View ArticleHow do you mark up an accordion?
I made a poll on Twitter the other day asking the #lazyweb how they would mark up an FAQ section — or a list of questions and their corresponding answers. I specifically asked for markup suggestions....
View ArticleNested Links Without Nesting Links
Chris Coyier started a thought exercise thread last week asking the community how they would approach building nested links. I had the same requirement a couple of years ago when I was building the...
View ArticleThe Refactoring UI Book
I’ve never taken or had any design classes in school or university. Most of my (humble) design knowledge I’ve picked up online from random articles here and there, and from breaking down and building...
View ArticleThe SVG Filters Series
SVG Filters 101 The first article in a series on SVG filters. This guide will help you understand what they are and show you how to use them to create your own visual effects. SVG Filter Effects –...
View ArticleAccessible Icon Buttons
An icon button is an icon that triggers some sort of action on the page. More accurately, technically speaking, an icon button is a button that contains an icon and no (visible) accompanying text....
View ArticleCase Study: Implementing Accessible Data Charts for the Khan Academy 2018...
A few months ago I teamed up with SuperFriendly to create an accessible micro-site for the Khan Academy 2018 Annual Report. The site is a very beautiful visual representation of Khan’s real-life...
View ArticleWhat a Year of Learning and Teaching Accessibility Taught Me
(This article was originally published on 24accessibility). A few years ago I didn't know what the term "accessibility" meant. I built Web sites that were partially inaccessible because I didn't know...
View ArticleGlobal and Component Style Settings with CSS Variables
Ever since I learned about CSS Variables a few years back, my absolute favorite feature has been the ability to scope variables to components. But to be honest, I haven't been putting this feature to...
View ArticleOptimizing keyboard navigation using tabindex and ARIA
The faster the user can navigate your UI the better. The faster they can get to the content they need, the better. Therefore, the less steps they have to go through, the more efficient their overall...
View ArticleInclusively Hiding & Styling Checkboxes and Radio Buttons
Checkboxes and radio buttons are two common examples of interactive form elements that we desperately want to have full control over styling but we don’t. So we’ve been hacking our way around styling...
View ArticleHow I set up Glyphhanger on macOS for optimizing and converting font files...
I can't count the number of times I've tried installing a command line tool on my machine, only to find myself going down a black hole of node modules & dependencies, and a seemingly non-ending...
View ArticleAccessible Text Labels For All
My talk Applied Accessibility: Practical Tips for Creating more Accessible Front-Ends is now available to watch online. This blog post is an extended transcript for a section of the talk, in which I...
View ArticleNot Your Typical Horizontal Rules
The HTML <hr> element adds a horizontal rule (or line) wherever you place it. A horizontal rule is used to provide a visual break and divide content. Like other HTML elements, horizontal rules...
View ArticleComponent-level art direction with CSS Container Queries
Container Queries (CQ) allow us to change the styles of a component so it responds to the size of its nearest container. With CQ, we can change how an element looks based on where on a page it is...
View ArticleDesign for reading: tips for optimizing content for Reader modes and reading...
Our content will not always look the way we expect it or want it to. Many apps, tools, and environments that people use to browse the Web strip our content of our CSS and apply their own styles to it....
View ArticleA couple of ways to highlight code syntax in Apple Keynote slides
Apple Keynote doesn’t come with code syntax highlighting built in. I really wish it did, and hope that Apple would at some point add this feature, especially considering how many developers and...
View ArticleI’m curating the programme for an upcoming accessibility-focussed conference ✨
I’m speaking, MC’ing and curating the programme for Access All Areas— an upcoming accessibility-focussed conference. Here’s all about the event, and how you can join us to learn more about...
View ArticleIn Quest of Search
There’s been a recent discussion on Twitter about the idea of adding a new element in HTML that represents a search interface. A search form, basically.The idea is to create a semantic HTML element for...
View ArticleThe CSS prefers-color-scheme user query and order of preference
I spent some time in Reeder app this morning, catching up with RSS and the latest articles published by my favorite blogs. I was reading Scott O’Hara’s article about using JavaScript to detect high...
View ArticleSetting up a screen reader testing environment on your computer
When you’re designing and developing for accessibility, performing manual testing using a screen reader is important to catch and fix accessibility and usability issues that cannot be caught by...
View ArticleA guide to designing accessible, WCAG-conformant focus indicators
figure { margin: 3em 0; } figure img { margin: 0 auto; } Imagine you visit a website and you want to browse it for some content. You want to buy something; or maybe book a flight somewhere. And as you...
View ArticleArticle 0
Imagine you visit a website and you want to browse it for some content. You want to buy something; or maybe book a flight somewhere. And as you move your cursor onto the page, it suddenly disappears....
View Article
More Pages to Explore .....