Hacker News new | ask | show | jobs
by rahkiin 946 days ago
I’ve found it is quite doable to have open/close menus purely with html and css these days using selectors! The text you click on is a label for a hidden checkbox. The checkbox you put adjacent to the item you’re hiding/showing. Then put css on it that uses input[type=checkbox]:checked and the tilde operator
2 comments

I wonder why the HTML menu element was so half hearted. This is such a common requirement that it shouldn’t require hacks like that.
As CSS has developed over the last few years it is amazing how much you can now do on the front-end without JavaScript.

I wish the browsers would enable their "behind-a-flag" support for masonry so many sites could then remove another chunk of JavaScript being used for layout.

actually you can do a pseudo masonry style using pure CSS with display: grid . I done it
There's a ton of things that sorta work, I use an all-CSS solution as a fallback for browsers that don't have the CSS property enabled. The problem is that all the pure CSS solutions order the grid in a different order than would be expected by the user. All the JavaScript solutions fix this, but, you know, JavaScript...