Skip to content

Dan Q

    • Articles
    • Everything
    • Notes
    • Reposts (shares)
    • Checkins (geo*)
    • Videos
    • Reviews
    • Comics
    • Tags
    • Stats
    • Subscribe
    • Blogroll
  • About
    • Hide posts of type:
    • Choose how Dan's dressed:
    • Hair
    • T-Shirt
  • Contact
  • Podcast

Tag: web development

  • Here's a neat trick. I've got a web page with many HTML popovers, styled as modals to create a no-JS gallery/lightbox. But LCP suffers because the browser tries to reserve space for the images within (even though they're within not-yet-shown popovers).

    This CSS one-liner saved the day. It basically says "skip over not-yet open popovers on initial page render" -

    [popover]:not(:popover-open) {
      content-visibility: hidden;
    }

    I appreciate that Lighthouse isn't the last word in performance metrics, of course. But this change alone bumped an affected page's score from 76 to 100, so it's not nothing either!

    • Note
    • posted 25 September, 2026
  • Composite screenshot showing the HTTP Toolkit app running on an emulated Android device, on top of the desktop application which is capturing packet data from the emulated device.

    Your 'App' Could Have Been a Webpage (so I fixed it for you...)

    I was asked to install a mobile app to get access to the itinerary of a trip to Disneyland I'm taking with the kids. Fuck that noise: couldn't it have just been a Web page? An hour of reverse-engineering later, it is, and it's superior in virtually every way to the "app" that it replaces.

    Read more - about 5 minutes (1171 words)

    • Article
    • 156 comments
    • posted 9 July, 2026
  • Setting the width of selects to the width of the selected option

    Sometimes a new CSS feature comes along and I immediately "get it". Like: that's a cool new feature, I can already see how it'll save me time, or make things simpler, or improve accessibility, or allow me to do something new. Other times...

    Read more (122 words)

    • Repost
    • of this original
    • posted 22 June, 2026
  • Screenshot showing VSCode running in a web browser, being used to edit a static HTML website.

    A Selfhosted Static Site Editor

    Inspired by the way that Nekoweb's editor 'Nekode' works, I came up with a low-effort way to let my eldest get started with HTML and CSS editing, right from her browser, with the results selfhosted directly from the household NAS.

    Read more - about 3 minutes (535 words)

    • Article
    • 8 comments
    • posted 22 May, 2026
  • CSS or BS game in progress. The player is asked to declare whether 'view-timeline-name' is a real CSS property or made-up.

    CSS or BS

    Keith Cirkel's made a game where you have to identify if something is a CSS property or a convincing fake. How's your CSS knowledge?

    Read more (85 words)

    • Repost
    • of this original
    • posted 14 May, 2026
  • Caddy webserver logs, with a highlighted section showing a DNS-01 challenge for *.static.duckling.danq.me repeatedly fail and then eventually succeed, then a certificate chain being installed.

    Dynamically-Deployed Static Site Subdomains on Caddy

    Continuing my effort to find a way to serve my various static sites that meets my need for ease-of-use and low-maintenance, I configured a wildcard Caddy server with webhook-based monitoring of a GitHub repository. Here's how it works...

    Read more - about 5 minutes (1067 words)

    • Article
    • posted 8 May, 2026
  • A collection of badly-drawn horses run across a gradient background.

    gradient.horse

    Michail Rybakov's gradient.horse might be the second most-amusing use of a .horse domain name I've yet seen. Draw a horse and let it run wild and free with its friends in the gradient plains of your browser window!

    Read more (123 words)

    • Repost
    • of this original
    • 4 comments
    • posted 18 January, 2026
  • 88ร—31 animated button with text 'MAKE A BTN' over a glitchy holographic starfield.

    88x31 Button Creator

    Dan of ritual.sh has produced an absolutely epic 88ร—31 button generator; well worth playing with if you're into that kind of thing.

    Read more (102 words)

    • Repost
    • of this original
    • 2 comments
    • posted 15 January, 2026
  • Death to the shadow DOM!

    I usually agree with Chris Ferdinandi, but he and I aren't entirely in accord about the Shadow DOM. He thinks it's useless. But I think it's MOSTLY useless.

    Read more (321 words)

    • Repost
    • of this original
    • posted 23 December, 2025
  • Screenshot from a future version of the DanQ.me homepage, showing a cartoon drawing of Dan waving, alongside a drop-down menu with options to customise his hair and t-shirt colour.

    For anyone who :has :not yet seen the magic of modern CSS

    CSS is all grown-up, and the combination of nested selectors, variables, :not, and :has unlocks a wealth of potential for interactivity and customisation without resorting to (the slower and brittler approach of) JavaScript. Let me show you two examples from my recent editor history.

    Read more - about 3 minutes (684 words)

    • Article
    • 1 comment
    • posted 17 December, 2025
  • Image of owls on a webpage, with a 'zoom in' cursor superimposed over the image, and a 'pointer' cursor over the 'alt' button in the corner.

    CSS Lightbox with Alt Text Viewer

    Off the back of my details/summary-based semantic HTML+CSS lightbox, I've come up with a way to add Mastodon-like 'show alt text' widgets in the same way, and I'll be applying both to images on my blog's new theme, in the New Year.

    Read more (418 words)

    • Article
    • 1 comment
    • posted 11 December, 2025
  • Dan sits at a cluttered desk reading a copy of DOCTYPE, a magazine with an aggressively 'cyberspace circa 1990' graphic design cover.

    DOCTYPE

    I received my copy of DOCTYPE magazine, a genuine 'type this program in and run it'-style programming magazine but for a modern world, and enjoyed writing, debugging, playing, and then considering refining Stuart Langridge's puzzle The Nine Pyramids.

    Read more (390 words)

    • Article
    • posted 25 November, 2025
  • Invoice from DreamHost to Dan Q dated 30 June 2007, showing an annual renewal of New.McLargeHuge for $239.40 partially-offset by six referral payments for $0.99 each.

    I guess I'm never paying DreamHost back

    About 17 years ago, I stopped using DreamHost. They later decided I owed them money. I disagreed, but enjoyed watching them incredibly-slowly claw it back via the 'refer and earn' program, from all the people I ever recommended them to. But now, only a few months from the (alleged) debt being settled... they've killed the program, depriving me of the opportunity for... a more-humorous blog post, I guess?

    Read more - about 3 minutes (520 words)

    • Article
    • 2 comments
    • posted 18 November, 2025
  • Close-up photo of a computer with reset and turbo buttons.

    Beige Buttons

    When was the last time you saw a computer with a reset AND a turbo button? Bet it's been a while. But now, thanks to a stupid web component I made, you can see one on my website... or your own. What does it do? Nobody knows!

    Read more (307 words)

    • Article
    • 3 comments
    • posted 17 November, 2025
  • Screenshot from Layoutit! Terra showing an isometric view of a gridded temperate landscape alongside controls to tweak the amount of land, terrain type, etc.

    Layitout! Terra is a CSS-only implementation of a customisable Transport Tycoon-like terrain generator, and it's left me impressed and confused!

    Read more (255 words)

    • Repost
    • of this original
    • posted 27 October, 2025

Posts navigation

Older posts

Get in Touch

I'd love to hear from you! Why not...

  • email me on blog@danq.me?
    (my spam filter is aggressive, so use a good subject line, i.e. not just "hello"; encrypt your email if you like)
  • say hi on Mastodon, where I'm @dan@danq.me?
  • send a letter or postcard to
    Dan Q, Unit 159610, PO Box 7169, Poole, BH15 9EL, UK
  • reach out some other way?
  • ยฉ Dan Q 1998-2026
  • Creative CommonsAttributionNon-Commercial except where stated (how to use)
  • powered by BloqClassicPressHTML5CSS3
  • privacy
  • Read articles, checkins, notes, reposts, and more...
  • @dan@danq.me
  • contact
  • subscribe
  • Dan Q
  • Creative Commons Attribution Non-Commercial license
  • ClassicPress
  • CSS is awesome
  • Created by a human, not by AI
  • LGBTQ+ pride flag (2018 progress variant)
  • Polyamory flag
  • Say no to Web3
  • Mastodon (it's like email... no, come back!)
  • Tested on Firefox
  • Best viewed on the Internet
  • PHP
  • Ruby
  • Debian
  • Caddy (webserver)
  • Find me on Melonland
  • Check out my GitHub
  • Three Rings - by volunteers, for volunteers, since 2002
  • I'm a fucking webmaster
  • Looks best at: any resolution!