Search

Nalezeno "Op Ed Article": 3106

Winamp Skin Museum


65,000 skins, they say. That’s extraordinary, especially considering how creative and well done many of them are. MySpace was an even bigger creative explosion of customization. What’s the next product that will inspire this kind of user ownership through theming? Allowing...

Interaction Media Features and Their Potential (for Incorrect Assumptions)


The Media Queries Level 4 Interaction Media Features — pointer, hover, any-pointer and any-hover — are meant to allow sites to implement different styles and functionality (either CSS-specific interactivity like :hover, or JavaScript behaviors, when queried using window.matchMedia), depending...

Read Me!


A fancy experiential essay from the team at Readymag, which is a tool for building… fancy experiential essays, about fancy experiential essays: With all the technology addressing readability issues, it’s still design basics that distinguish a readable text from one that isn’t. Here are some...

Using a brightness() filter to generically highlight content


Rick Strahl: I can’t tell you how many times over the years I’ve implemented a custom ‘button’ like CSS implementation. Over the years I’ve used images, backgrounds, gradients, and opacity to effectively ‘highlight’ a control. All that works of course,...

How to Get Handwriting Animation With Irregular SVG Strokes


I wanted to do a handwriting animation for calligraphy fonts — the kind where the words animate like they are being written by an invisible pen. Because calligraphy fonts have uneven stroke widths (they actually aren’t even strokes in terms of SVG), it was near impossible to do this sort of thing...

Defining “View Source”


Last time there was a little flurry of activity around the concept of “View Source,” I did get the sense that not everyone was on the same page about what that even means. Jim Nielsen: First, when we talk about “View Source” what precisely are we talking about? I think this is...

Modifying Specific Letters with CSS and JavaScript


Changing specific characters can be a challenge in CSS. Often, we’re forced to implement our desired changes one-by-one in HTML, perhaps using the span element. But, in a few specific cases, a CSS-focused solution may still be possible. In this article, we’ll start by looking at some CSS-first...

Setting up and Customizing the Ant Design System in a Nuxt App


I don’t typically work with UI libraries because they can be cumbersome and hard to override, which can contribute to a bloated. However, Ant Design has recently gained some some of my affection because it’s easy to use, has extensible defaults, and features a delicate design. Nuxt and...

How CSS Perspective Works


As someone who loves creating CSS animations, one of the more powerful tools I use is perspective. While the perspective property is not capable of 3D effects all by itself (since basic shapes can’t have depth), you can use the transform property to move and rotate objects in a 3D space (with...

AVIF has landed


Everybody is talking about AVIF today because of Jake’s blog post. As the say, I was today years old when I learned AVIF was a thing. But thanks to web technology being ahead of the game for once, we can already take advantage of it. This will be easier if you’ve abstracted your...

One Action, Multiple Terminal Windows Running Stuff


Many development environments require running things in a terminal window. npm run start, or whatever. I know my biggest project requires me to be running a big fancy Docker-based thing in one terminal, Ruby on Rails in another, and webpack in another. I’ve worked on other projects that...

Menu Reveal By Page Rotate Animation


There are many different approaches to menus on websites. Some menus are persistent, always in view and display all the options. Other menus are hidden by design and need to be opened to view the options. And there are even additional approaches on how hidden menus reveal their menu items. Some...

All the Ways to Make a Web Component


This is a neat page that compares a ton of different libraries with web components. One of the things I learned after posting “A Bit on Web Components Libraries” is that the web platform APIs were designed for libraries to be built around them. Interesting, right? This page makes...

Import Non-ESM libraries in ES Modules, with Client-Side Vanilla JS


We’re living through a weird era where there are tons of JavaScript libraries that were meant to be used as <script> tags that expose available globals. AND there are tons of JavaScript libraries that are meant to be used through module loaders. AND there are tons of JavaScript...

Working with JavaScript Media Queries


What’s the first thing that comes to mind when you think of media queries? Maybe something in a CSS file that looks like this: body {   background-color: plum; } 
 @media (min-width: 768px) {   body {     background-color: tomato;   } } CSS media queries are a core ingredient in any responsive...

Using max() for an inner-element max-width


I go into all this in The “Inside” Problem. The gist: you want an edge-to-edge container, but the content inside to have a limited width. I think there is absolutely no problem using a nested element inside, but it’s also fun to look at the possibilities of making that work on...

Beyond Media Queries: Using Newer HTML & CSS Features for Responsive Designs


Beyond using media queries and modern CSS layouts, like flexbox and grid, to create responsive websites, there are certain overlooked things we can do well to make responsive sites. In this article, we’ll dig into a number tools (revolving around HTML and CSS) we have at the ready, from responsive...

Supercharging Number Inputs


Speaking of number scrubbing (i.e. adding mouse UX to number inputs), you can also add better keyboard commands to number inputs. Kilian Valkhof explains how he added up and down arrows to a number input, as well as modifier keys to change how much the keys increment the value, like Emmet does....

Nahoru
Tento web používá k poskytování služeb a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tímto souhlasíte. Další informace