Email or username:

Password:

Forgot your password?
115 posts total
Vadim Makeev

I'm happy so many people liked my first article!

Now I wrote about why focus outlines deserve better treatment in web design, and how to make them both beautiful and accessible ✍️

medienbaecker.com/articles/foc

#accessibility #webdev #webdesign #indieweb

Anke

@medienbaecker Ha so cool! Just wat i am focussing on for clients a lot now. Great examples!

Mathias Gmeiner

@medienbaecker thanks a lot for this article! Well written, easy to follow and just in time for our next project!

McNeely

@medienbaecker great article! Love the animations and different background info

Vadim Makeev

With another wave of seasonal migration between social networks, let me remind you that I cross-post pretty much everywhere I can to stay in touch with scattered friends. I’m mostly active on Mastodon, but feel free to pick the one that works for you:

bsky.app/profile/pepelsbey.dev

threads.net/@pepelsbey

x.com/pepelsbey_dev

t.me/pepelsbey_dev

linkedin.com/in/pepelsbey/

facebook.com/pepelsbey

Also, occasional photos and videos from gigs:

instagram.com/pepelsbey

With another wave of seasonal migration between social networks, let me remind you that I cross-post pretty much everywhere I can to stay in touch with scattered friends. I’m mostly active on Mastodon, but feel free to pick the one that works for you:

bsky.app/profile/pepelsbey.dev

threads.net/@pepelsbey

Vadim Makeev

Have you seen any good articles or projects using Cascade Layers for CSS architecture? Modern CSS seems capable of something similar to BEM without complex tooling, but I’m struggling to make it work. You know, 15-year-old habits won’t let you go easy.

I’ll start:

miriamsuzanne.com/2022/09/06/l by @mia

daverupert.com/2022/08/modern- by @davatron5000

moderncss.dev/modern-css-for-d by @5t3ph

Mia

@pepelsbey I think this one from @keithamus is a pretty good "naming things" companion to the posts you listed: keithcirkel.co.uk/css-classes-

It also might help to break BEM into parts, as…

- A way of thinking about elements that belong to blocks, and the modifiers for each. That could still be a useful way to think?
- Strict single-class selectors with dashes and underscores. This feels outdated?

Vadim Makeev

Performance is a key aspect of the user experience 🥲

Web performance landing page on web.dev. The lead text goes: Performance is a key aspect of the user experience. How fast pages load and how quickly they respond to user input can have a significant impact on how users perceive your site, and can make the difference between whether users stay on your website or abandon it. On this page, you'll find a wealth of information on various web performance topics that will help you make your website fast and keep it fast.
PageSpeed Insights mobile results page for the Web performance landing page. Scores: performance 43 (red), accessibility  93 (green), best practices 79 (orange), SEO 85 (orange). Core web vitals: FCP 3.8s (red), LCP 3.8s (orange), TBT 1010ms (red), CLS 0.296 (red), Speed Index 3.8s (orange).
Vadim Makeev

🚀 Good morning, everyone. I made a game called Mundango, it's about noticing the small things in life.

mundango.daverupert.com/

Jim Nielsen

@davatron5000 where's the checkbox for noticing this website? it is also one of the small joys of life. great work dave!

Vadim Makeev

Any idea who’s right? It would be nice to be able to position a popover right next to the button that triggers it. Firefox and Safari both make it easy. Chrome’s behavior makes me sad.

codepen.io/pepelsbey/pen/PoMQE

CodePen demo in Chrome: popover is positioned in the top left corner of the page for both buttons.
CodePen demo in Firefox: popover is positioned right under the button that triggered it.
CodePen demo in Safari: popover is positioned right under the button that triggered it.
Corpses Will rots 🎃

@pepelsbey
I don't know what Firefox and Safari's justification is for their choice; it's like they pretending the div has `position: relative`.

Though if you do add that to the div, it doesn't change what Chrome does, like elements in the top layer are not just out of the document flow but totally disconnected from it. Maybe they're rushing to anchor positioning being *the* way to do it.

Vadim Makeev

@hdv Now that I found your article¹ on the topic, what do you think about Firefox’s and Safari’s behavior² that lets you anchor popovers to a button?

1 hidde.blog/positioning-anchore
2 mastodon.social/@pepelsbey/113

Vadim Makeev

TIL: Firefox has a machine translation system built into `about:translations`. This also works on mobile.

Screenshot of Firefox Translations, at url `about:translations`. It shows a familar and simple UI with two side-by-side text boxes, the left one has a combobox saying “Detect language (French)”, and contains French text: “Je viens de découvrir que Firefox a un système de traduction automatique intégré dans `about:translations`”. The right one has a combobox saying “English”, and contains the translation of that text: “I just found out that Firefox has a machine translation system built into 'about:translations'.”
Show previous comments
Amelia Bellamy-Royds

@shtrom Excellent. I was trying to find out if this existed recently but couldn't figure out the URL — it's not yet listed in about:about !

The old Firefox translations extension had a pop-up widget on the toolbar, but that disappeared when translations were integrated in the core browser. And this is much easier to use, anyway. Limited languages so far, but once it has downloaded the language models, it runs offline.

Kiran Castellino :he_him:

@shtrom See, I knew that Firefox could translate websites, but I didn't realise it also had a front-end for translating whatever I wanted!

Vadim Makeev

Yesterday, I gave a talk about MathML, and I heard that some people thought “ML” stood for “machine learning.” “Math Machine Learning” even makes some sense. To their disappointment, I was talking about markup language instead.

It got me thinking… With all the hype around AI, maybe next time I pitch an HTML talk, I should throw in “Hypertext Machine Learning” somewhere in the description, just to improve my odds 🤔

Patrick H. Lauke

@pepelsbey "HTMLML - the future of web development" ... tickets selling fast

Stuart Langridge

@pepelsbey "Reaching more people using HypertextML". Guaranteed keynote at any corporate conference. Then show them performance graphs for pure HTML pages and say that the web is the world's biggest distributed computer, and we'll have every big company making nice web pages by the end of next year.

bkardell

@pepelsbey where'd you give it? I'd love to see it

Vadim Makeev

proposed a #CSS `scroll-state` query for easily knowing which direction the user is scrolling

want it?
have additional use cases?

**give it a vote or comment!**

github.com/w3c/csswg-drafts/is

Vadim Makeev

Hey! CSS developers! I want to hear from you.

I'm improving the way line clamping works in Chrome and in the specs. The existing -webkit-line-clamp property is a mess, because it will only do something if you have other properties (which are legacy versions of flexbox properties), and we can't fix that because of web compat. But we can add a new line-clamp property without those issues!

But right now I'm dealing with what should happen if you have both properties set on the same element:

display: block;
line-clamp: 3;
-webkit-line-clamp: 4;

(Note that if we remove line-clamp: 3, this wouldn't clamp, because display: block prevents -webkit-line-clamp from working.)

So what do you think should happen?

#css #CSSWG

Hey! CSS developers! I want to hear from you.

I'm improving the way line clamping works in Chrome and in the specs. The existing -webkit-line-clamp property is a mess, because it will only do something if you have other properties (which are legacy versions of flexbox properties), and we can't fix that because of web compat. But we can add a new line-clamp property without those issues!

Anonymous poll

Poll

Clamps to 3 lines
35
85.4%
Clamps to 4 lines
4
9.8%
Doesn't clamp
2
4.9%
41 people voted.
Voting ended 30 October at 8:09.
Show previous comments
O Óscar

@andreu
Due line-clamp and -webkit-line-clamp are not 1:1 properties, I'd treat them differently.

```
display: block;
line-clamp: 3;
-webkit-line-clamp: 4;
```
Clamps to 3 lines becasue line-clamp is not valid here

```
display: -webkit-box;
line-clamp: 3;
-webkit-line-clamp: 4;
```
Clamps to 4 lines because the prefixed version works and override the previous one.

```
display: -webkit-box;
-webkit-line-clamp: 4;
line-clamp: 3;
```
Clamps to 3 lines because the unprefixed version wins.

@andreu
Due line-clamp and -webkit-line-clamp are not 1:1 properties, I'd treat them differently.

```
display: block;
line-clamp: 3;
-webkit-line-clamp: 4;
```
Clamps to 3 lines becasue line-clamp is not valid here

```
display: -webkit-box;
line-clamp: 3;
-webkit-line-clamp: 4;
```
Clamps to 4 lines because the prefixed version works and override the previous one.

Vadim Makeev

@andreu I know most people vote for the “clamp 3 lines” option, but it’s the basic principle of CSS cascade we’re about to break here. I’d rather rename the property than introduce this special case. Have you considered renaming it to something else since it’s more of a new property than the unprefixed version of an old one?

Fogrew :verified: 🖖🏽

@andreu I voted for 3 because you just explained that the prefixed version will work only with the old flexbox properties. This voting looks more like a test for IQ than a test of our CSS knowledge unfortunately. And of course we all are smart, ya 😂

Vadim Makeev

@bramus Any idea when Chrome started to support box alignment for absolutely positioned elements? @mia suggested it’s somehow related to anchor positioning. Trying to add a BCD entry for this feature and document it on MDN as well.

codepen.io/pepelsbey/pen/xxvLB

Bramus

@pepelsbey I don’t know TBH.

You could try and work your way back using “Chrome for Testing” to try and manually find out.

```
npx @puppeteer/browsers install chrome@116
```

Bundyo

@pepelsbey @bramus @mia

Most probably with anchor positioning, as [align/justify/place]-self are used there for aligning the target to anchor, when the other dimension is set with anchor(something).

Vadim Makeev

I wrote a new article: “Possible Future CSS: Tree-Counting Functions and Random Values”

kizu.dev/tree-counting-and-ran

Many exciting things were added to #CSS specs over the years, but some have yet to be implemented by browser engines.

In this article, I spotlight two features from Level 5 of the CSS Values and Units Working Draft, describe how we can prototype them with what we have in CSS today, and provide several interactive demos of their use cases.

Roma Komarov

Note: currently, it might not work in mobile Safari. I spent a few hours trying things, the latest dev deploy of my site worked, but the prod one does not.

If you cannot open it by the link about in Safari, a workaround that works for me (but still slow) is to go to kizu.dev directly and then go to the article.

Will investigate later again, but oh well. Sorry.

Roma Komarov

As usual, the credits:

- @argyleink, Jonathan Neal, Giorgio Pretto, Sebastian Malton & Oriol Brufau for CSSWG issues related to `sibling-index()` and `sibling-count()`.

- @tabatkins & Benjamin De Cock for CSSWG issues related to `random()`.

- Michal Čaplygin for an issue about tree-counting functions in Open Props.

- @heydon, @leaverou & @me for Quantity Queries.

- @leaverou and Alex Walker for the articles on cicada principle.

- @kevinpowell for his talk at CSS day.

[1/2]

Vadim Makeev

🚨 New Price Alert!

I’ve dropped the price of my book from $39 to just $19.99 to make it accessible to a wider audience! 🎉

Level up your CSS debugging skills 🔍 and get your copy today.

www.debuggingcss.com

Vadim Makeev

JS in your web app slowing load times and impacting user interactions? 🐌

Debugbear explains these bottlenecks and how you can address them:
📜 Long tasks
📦 Large JS bundles
🚿 Hydration issues

See how you can tackle them 👇
developer.mozilla.org/en-US/bl

Vadim Makeev

Last week, I successfully broke free from the vendor-locked and rather limited Apple smart home ecosystem and jumped straight into the rabbit hole of Home Assistant, running on a VM inside of my NAS with Zigbee and Bluetooth dongles sticking out of it. If you know what the hell I’m talking about, give me a sad like and share some of your favorite Home Assistant tricks and resources 🤓

labria

@pepelsbey you have my sad like, but I have enough moody computers at work to allow this to proliferate at home ;)

gullevek ☢️

@pepelsbey @matuzo I have manual switches on the wall. I don’t need no automation. Manual switches will not do stupid shit when I don’t need it.

Maxi :coffeebeans: :comfyblobcat:

@pepelsbey if you're looking for an even bigger rabbit hole than just homeassistant, The Home Assistant Community Store has all sorts of extra integrations that didn't make it into homeassistants itself

A good first thing to install is the spook integration - while lots of its features are designed for power users (and thus probably overkill for someone who's just getting started), I found that its most useful feature is the "repairs" it raises when you're misconfiguring things on accident - things like using non-existing entities in dashboards or automations.

Have fun!

@pepelsbey if you're looking for an even bigger rabbit hole than just homeassistant, The Home Assistant Community Store has all sorts of extra integrations that didn't make it into homeassistants itself

A good first thing to install is the spook integration - while lots of its features are designed for power users (and thus probably overkill for someone who's just getting started), I found that its most useful feature is the "repairs" it raises when you're misconfiguring things on accident - things...

Vadim Makeev

Time to meet up for #html and #webstandards :) we created a #meetup event for the upcoming #hamburg #html meetup:

Simultaneously, there will also be a LinkedIn event published soon.

We also still have the meetup account which is run by @agalliat, we additionally published it over there to make sure people don't miss it:)

meetup.com/de-DE/hhhtml/events

Hamburg HTML Meetup

Also, we still run the website, in order to be kind of independent from those propietary event websites :)

hhtml.de

There, you will also find information on how to submit a proposal.

Vadim Makeev

I have documented the new CSS calc-size() function (developer.mozilla.org/en-US/do) and interpolate-size property (developer.mozilla.org/en-US/do) on MDN. These enable animation to/from and calculations involving intrinsic size values. Thanks to @estelle for the review!

Vadim Makeev

The wait is over. HTML for People is OUT NOW!

I feel strongly that anyone should be able to make a website with HTML if they want. This web book will teach you how to do just that. It doesn’t require any previous experience making websites or coding. I will cover everything you need to know to get started in an approachable and friendly way.

And it’s free for all. 🚀

htmlforpeople.com

Show previous comments
katherine

@bw reading through it now and it's so fun!! i can't wait to share it 🥹

Granny Art (Shrimp) (Joni)

@bw Oh, is this like the Barebones HTML guide?

Kevin

@bw Thanks Blake! I'm going to use this to teach my kid how to build a web site. Great resource.

Vadim Makeev

Do you want a deeper understanding of #CSS? Not just the individual properties, but how they work together? From cascading, to custom properties, layout, and organization?

I have a workshop coming up with @smashingconf, that covers exactly that:

5 online sessions, October 14–28
Reserve your seat now!

smashingconf.com/online-worksh

Bobbing for Apples Annie 👻

@mia @smashingconf I'm very excited to be able to join this!

Quick question for you: there's a possibility that I may have an interruption on the last day. I forgot I have an HVAC maintenance person coming. Will that be a critical day? I realize I'll have access to the sessions after the fact as well.

Go Up