Search
Position Vertical Scrollbars on Opposite Side with CSS
23.7.2020
Fair warning: I can’t say I recommend this in general because it breaks a very strong expectation of where scrollbars are, which are useful for a lots of folks, not to mention, a core accessibility feature for many.
But it is a fascinating CSS trick and the web is a big place with...
How to Build a Chrome Extension
19.5.2020
I made a Chrome extension this weekend because I found I was doing the same task over and over and wanted to automate it. Plus, I’m a nerd during a pandemic, so I spend my weird pent-up energy building things. I’ve made five Chrome extensions with that energy, yet I still find it hard...
Equal Width Columns in CSS Grid are Kinda Weird
14.5.2020
Everything is flexible these days. If you write grid-template-columns: 200px 200px 200px;, sure, you’d have equal-width columns, but that’s a rare day. What you usually mean is three columns of equal fluid width.
We’ve got fractional units for that, like grid-template-columns:...
Can JavaScript Detect the Browser’s Zoom Level?
21.4.2020
No, not really.
My first guess was that this was intentionally not exposed in browsers because browsers intentionally don’t want us fighting it — or making well-intentioned but bad-outcome decisions based on that info. But I don’t see any evidence of that.
StackOverflow answers paint...
Wide Gamut Color in CSS with Display-P3
31.3.2020
Here’s something I’d never heard of before: Display-P3 support in CSS Color Module Level 4 spec. This is a new color profile supported by certain displays and it introduces a much wider range of colors that we can choose from.
Right now the syntax looks something like this in CSS:
header...
Auto-Growing Inputs & Textareas
25.3.2020
By default, <input> and <textarea> elements don't change size based on the content they contain. In fact, there isn't any simple HTML or CSS way to make them do that. Kinda funny, as that seems like a reasonable use-case. But of course, there are ways, my friend. There are always...
CSS2JS
20.3.2020
To add inline styles on an element in JSX, you have to do it in this object syntax, like:
<div style={{
fontSize: 16,
marginBottom: "1rem"
}}Content
</div
That might look a little weird to us folks who are so used to the CSS syntax, where it is font-size (not fontSize), margin-bottom...
When the Going Gets Weird, CoinDesk Readers Look for These Safe Havens
10.3.2020
We asked CoinDesk readers where they're putting their money in this weird financial period. The answers were surprising
Currying in CSS
6.3.2020
Funny timing on this I was just looking at the website for Utopia (which is a responsive type project which I hate to admit I don't fully understand) and I came across some CSS they show off that looked like this:
:root {
--fluid-max-negative: (1 / var(--fluid-max-ratio)...
Searching the Jamstack
22.1.2020
Here's Raymon Camden on adding site search functionality to a site that is statically hosted. A classic trick! Just shoot 'em to Google and scope the results to your site:
<form action="https://www.google.com/search" method="get"<input type="search" name="q"...
The Best Color Functions in CSS?
20.1.2020
I've said before that HSL is the best color format we have. Most of us aren't like David DeSandro, who can read hex codes. HSL(a) is Hue, Saturation, Lightness, and alpha, if we need it.
hsl(120, 100%, 40%)
Hue isn't intuitive, but it's not that weird. You take a trip around the color wheel from...
Meltem Demirors on Government Digital Currencies and Why ‘The Halvening’ Gets Weird
24.12.2019
Why the narrative of 2019 was the emergencies of Central Bank Digital Currencies and why the halvening won’t go as people expect
MARKETS DAILY: Weird News Out of Canada and a Predicted Bull Run
16.12.2019
Blockchain goes to court in China and we get expert predictions for 2020. It's CoinDesk's Markets Daily
Motion Paths – Past, Present and Future
6.12.2019
Cassie Evans has a great intro to motion paths. That is, being able to animate an element along a path. Not just up/down/left/right, but whatever curvy/wiggly/weird path you want.
It's an interesting subject because there are so many different technologies helping to do it over time. SMIL...
Techniques for Rendering Text with WebGL
6.12.2019
As is the rule in WebGL, anything that seems like it should be simple is actually quite complicated. Drawing lines, debugging shaders, text rendering… they are all damn hard to do well in WebGL.
Isn’t that weird? WebGL doesn't have a built-in function for rendering text. Although text seems like...
The Best Cocktail in Town
18.11.2019
I admit I've held in a lot of pent-up frustration about the direction web development has taken the past few years. There is the complexity. It requires a steep learning curve. It focuses more on more configuration than it does development.
That's not exactly great news for folks like me...
Oh Hey, Padding Percentage is Based on the Parent Element’s Width
13.11.2019
I learned something about percentage-based (%) padding today that I had totally wrong in my head! I always thought that percentage padding was based on the element itself. So if an element is 1,000 pixels wide with padding-top: 50%, that padding is 500 pixels. It's weird having top padding based...
A Super Weird CSS Bug That Affects Text Selection
12.11.2019
You know how you can style (to some degree) selected text with ::selection? Well, Jeff Starr uncovered a heck of a weird CSS bug.
If you:
Leave that selector empty
Link it from an external stylesheet (rather than <style> block)
Selecting text will have no style at all....
(Why) Some HTML is “optional”
16.9.2019
Remy Sharp digs into the history of the web and describes why the <p> tag doesn’t need to be closed like this:
<p>Paragraphs don’t need to be closed
<p>Pretty weird, huh?
Remy writes:
Pre-DOM, pre-browsers, the world's first browser was being written by Sir...
Some HTML is “Optional”
11.9.2019
There is a variety of HTML that you can just leave out of the source HTML and it's still valid markup.
Doesn't this look weird?
<p>Paragraph one.
<p>Paragraph two.
<p>Paragraph three.
It does to me, but the closing </p> tags are optional. The browser will detect...