CSS hearkens me back to teenaged life, up at 2am knee deep in my code on Geocities, pulling my hair out over browser incompatibilities, and trying (with great angst and frustration) to control all the stupid document elements.
So something about this post jived with me well -- and reminds me of just how much the world of web dev has changed dramatically these past couple of decades.
I kind of miss calling myself a webmistress.
So anyway, that punch-line is this.
[...] never be more explicit than you need to be. Web pages are responsive by default. Writing good CSS means leveraging that fact instead of overriding it. Use percentages or viewport units instead of a media query if possible. Use
widthwhere you can. Think in terms of rules, in terms of what you really mean to say, instead of just adding properties until things look right. Try to get a feel for how the browser resolves layout and sizing, and make your changes and additions on top of that judiciously. Work with CSS, instead of against it.
Another rule of thumb is to let either width or height be determined by content. In this case, that wasn't enough, but in most cases, it will be. Give things an avenue for expansion. When you're setting rules for how your elements get sized, especially if those elements will contain text content, think through the edge cases. "What if this content was pared down to a single character? What if this content expanded to be three paragraphs? It might not look great, but would my layout be totally broken?"