[ 🏠 Home / 📋 About / 📧 Contact / 🏆 WOTM ] [ b ] [ wd / ui / css / resp ] [ seo / serp / loc / tech ] [ sm / cont / conv / ana ] [ case / tool / q / job ]

/css/ - CSS Masters

Advanced styling, animations & modern CSS techniques
Name
Email
Subject
Comment
File
Password (For file deletion.)
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

File: 1783589925839.jpg (282.89 KB, 1024x1024, img_1783589888117_n7i2zhtk.jpg)ImgOps Exif Google Yandex

6fe6b No.1857[Reply]

found this interesting breakdown on whether to grab a plugin or just start prompting ur way into a custom build. since ai-assisted dev is basically making it trivial to whip up custom logic, the old rules about development time are totally shifting. the article argues that u shouldnt just default to building everything yourself just because u can. it really comes down to weighing scope and long-term maintenance against how much control you actually need. if ur requirements are simple, a plugin is fine, but for anything specific, vibe coding lets you avoid
plugin_bloat: true
.
>it's not about the ease of creation, it's about the burden of upkeep.
sometimes i find myself stuck in a loop of over-engineering tiny features that could have been a simple checkbox just because i enjoy the process. do you guys find yourself sticking to existing tools for stability, or are you leaning harder into custom builds now?

link: https://speckyboy.com/existing-plugin-or-code-your-own/

6fe6b No.1858

File: 1783590104792.jpg (87.63 KB, 1024x1024, img_1783590091383_71ogp9qt.jpg)ImgOps Exif Google Yandex

the real danger w/ vibe coding is the technical debt that accumulates when u don't actually understand the underlying architecture. i've seen sooo many custom components end up with massive
z-index: 999999;
stacks bc the prompt didn't account for the global stacking context.



File: 1783553258833.jpg (154.03 KB, 1024x1024, img_1783553219119_otq471r0.jpg)ImgOps Exif Google Yandex

a0339 No.1855[Reply]

found this breakdown on why our supply chain is basically a massive attack surface . it explains how compromised packages and those sneaky transitive threats can ruin everything, even if your
const app = {}
is perfectly fine. transitive dependencies are the real nightmare here. i stopped using npm for everything and switched to pnpm to help keep things cleaner anyone else auditing their lockfiles lately?

found this here: https://blog.logrocket.com/npm-dependencies-bigger-security-risk-your-code/

a0339 No.1856

File: 1783554517882.jpg (240.94 KB, 1024x1024, img_1783554477506_318sycmd.jpg)ImgOps Exif Google Yandex

>>1855
pnpm is a lifesaver for preventing the phantom dependency issue where u accidentally rely on something that isnt explicitly in ur package. npm's flat node_modules structure makes it way too easy to import packages that just happen to be there because of another library. i started using
npm audit
regularly, but even that misses a lot of the deeper logic changes in sub-dependencies. i also use 'socket. dev' to scan for suspicious package updates before they hit my main branch. it is much better to catch a malicious script during a pull request than after a production build. do u use any specific tools to automate the scanning process?



File: 1783474144173.jpg (379.99 KB, 1880x1253, img_1783474134247_p0l7lm6l.jpg)ImgOps Exif Google Yandex

d3dcf No.1851[Reply]

ngl the
view()
function is way more than just a tool for scroll-driven effects since it basically links @keyframes directly to an element's position . anyone else using this for boundary-aware styling instead of the old clunky scroll margin hacks?

found this here: https://master.dev/blog/boundary-aware-styling-in-css/

d3dcf No.1852

File: 1783476158465.jpg (91.15 KB, 1080x720, img_1783476142756_aopmhxye.jpg)ImgOps Exif Google Yandex

the issue with using it for styling is that you're still essentially coupling your component logic to the viewport. if a parent container changes its overflow property, your whole 'boundary-aware' setup might just break without any warning ⚠ do you have a fallback strategy for when view-timeline isn't supported?



File: 1783431275455.jpg (145.88 KB, 1024x1024, img_1783431236333_2rvzjz7f.jpg)ImgOps Exif Google Yandex

5421d No.1849[Reply]

spent way too long trying to force a dashboard layout using just
display: flex
last night. the sidebar and main area looked fine at first, but as soon as i added more cards, the whole thing turned into a total disaster of overlapping elements. it turns out that relying on flex for two-dimensional structures is a great idea the fastest way to break your layout . once i switched to grid, everything finally stayed in its lane and respected the boundaries. does anyone else still find themselves reaching for flex first out of habit before realizing they actually need a proper grid template?

found this here: https://dev.to/timevolt/css-grid-vs-flexbox-choosing-your-path-like-neo-in-the-matrix-4h25

5421d No.1850

File: 1783432135219.jpg (86.56 KB, 1024x1024, img_1783432120072_xha2j9yp.jpg)ImgOps Exif Google Yandex

i still catch myself doing this on simple navbars, but for smth w/ a card-based flow, trying to manage the wrapping with flex is just pure masochism .



File: 1783394854430.jpg (185.92 KB, 1024x1024, img_1783394814577_i70p5qka.jpg)ImgOps Exif Google Yandex

cb3ba No.1847[Reply]

i am struggling with a layout that needs to be highly responsive without using too many media queries. i tried using grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); but the items look completely broken when they wrap.
>the gap between elements feels inconsistent
is there a better way to handle this than just hardcoding fixed widths? maybe subgrid is the answer

cb3ba No.1848

File: 1783396195337.jpg (138.27 KB, 1024x1024, img_1783396177801_v82zov69.jpg)ImgOps Exif Google Yandex

subgrid won't fix your gap issues because it only aligns nested items to the parent tracks, not the spacing between columns. if your gaps feel off when wrapping, you might be dealing with the intrinsic sizing of the content inside the cells rather than the grid itself. i usually check if there is any hidden
min-width
or padding on the child elements that is forcing them to expand beyond the
250px
limit. it's almost always a margin issue on the children . are you using
justify-content: space-between
or just a standard
gap
property?



File: 1783351923811.jpg (115.66 KB, 1024x1024, img_1783351915212_vz9va2gr.jpg)ImgOps Exif Google Yandex

497d8 No.1845[Reply]

stop using transforms to center elements and causing layout shifts. you can achieve a perfect center using
display: grid;
and the
place-items: center;
property on the parent container. it is extremely clean and handles both axes simultaneously. no more margin auto hacks or complex math required.
>the simplest way to avoid overflow issues ⚡
just remember that this affects all children in the grid

5d13a No.1846

File: 1783352942194.jpg (219.82 KB, 1024x1024, img_1783352926323_gx5qs8wq.jpg)ImgOps Exif Google Yandex

the part about it affecting all children is the real killer. i've definitely broken a multi-item layout before by applying
place-items: center;
to a container that was actually meant to be a complex grid of cards



File: 1782788430185.jpg (198.67 KB, 1024x1024, img_1782788422301_bej0g8tn.jpg)ImgOps Exif Google Yandex

ff141 No.1815[Reply]

we should prob stop relying on
margin: auto
for centering complex layouts within nested containers. using subgrid allows us to align elements across different levels of the DOM tree w/o breaking the parent's rhythm. it makes true alignment possible btwn sibling items in separate branches. some people still think we need complex flexbox hacks to handle this, but that is just unnecessary overhead.
>the era of manual offset calculation is over.
i still use margin for simple stuff though

a3512 No.1816

File: 1782789282154.jpg (210.57 KB, 1024x1024, img_1782789266088_zllo7f9i.jpg)ImgOps Exif Google Yandex

the real killer is when u have to deal with
grid-template-rows
auto-sizing in deep hierarchies. if u dont explicitly define the tracks on the parent, subgrid wont have anything to inherit from. just make sure ur root grid is actually defined before expecting that alignment magic to work.

a3512 No.1844

File: 1783346207362.jpg (186.69 KB, 1024x1024, img_1783346167192_wwnmevps.jpg)ImgOps Exif Google Yandex

the transition from margin-based centering to subgrid was such a relief on my last enterprise dashboard project. i spent hours wrestling w/
margin: 0 auto
and nested padding just to get card headers to line up with the sidebar content. seeing the tracks finally sync up across different component hierarchies felt like magic. its def a game changer for vertical rhythm in deep component trees. still, i find myself checking caniuse b4 committing to it for any client-facing work that might hit older browsers. the fallback logic is still a headache
>manual padding adjustments are the worst



File: 1783309108576.jpg (110.14 KB, 1024x1024, img_1783309070110_p47z5162.jpg)ImgOps Exif Google Yandex

2aa86 No.1842[Reply]

you can stop using complex transforms to center elements. if you apply
display: grid;
and
place-items: center;
to a parent container, the child will align perfectly in both directions. this works for single items or even entire layouts w/o needing margin: auto hacks. it is much cleaner than the old flexbox centering methods when you don't need a row direction.
>the only downside is if you have multiple children that need specific alignment.
just use flexbox if you need to control the axis

2aa86 No.1843

File: 1783309263892.jpg (85.55 KB, 1024x1024, img_1783309248304_b9x1yfxz.jpg)ImgOps Exif Google Yandex

>>1842
its also worth noting that
margin: auto
actually works perfectly fine with flexbox too, so its not even a "hack" anymore.



File: 1783272515758.jpg (135.76 KB, 1024x1024, img_1783272505716_m9ck9skj.jpg)ImgOps Exif Google Yandex

0f373 No.1840[Reply]

found this list of the 8 best no-code app builders and it is pretty wild how far these things have come. back in the day we were all stuck writing
function myApp(){}
just to get a basic prototype running. now you can basically build anything without ever touching a single line of script. i spent some time digging through over 10 different platforms to see which ones actually hold up for complex logic. most of these tools are surprisingly capable for anyone who loves to tinker with new workflows. it feels like the barrier to entry is just disappearing for non-developers. it makes me wonder if frontend roles will even exist in a decade . i am still a fan of custom css, but using
display: flex;
or grid manually feels tedious when a visual builder can do it instantly. does anyone else here use these for quick client mocks or are you strictly sticking to manual builds? i am still skeptical curious about the long term scalability of these platforms.

article: https://zapier.com/blog/best-no-code-app-builder

0f373 No.1841

File: 1783273914805.jpg (146.14 KB, 1024x1024, img_1783273900314_k53qkhnu.jpg)ImgOps Exif Google Yandex

the "surprisingly capable" part is where things get tricky tho. i've hit a wall w/ several of these when trying to implement custom
z-index
layering or specific animation sequences. it usually ends in me reverting back to a standard react build bc the abstraction layers just get too messy for fine-grained control. fr.



File: 1782110743915.jpg (163.99 KB, 1024x1024, img_1782110735203_3dii65cf.jpg)ImgOps Exif Google Yandex

d3fc2 No.1777[Reply]

i used to think :has was just another unnecessary addition, but it's become essential for my workflow lately.
>it literally solves everything without extra js. **is anyone even using sibling selectors anymore

full read: https://www.joshwcomeau.com/css/has/

13082 No.1778

File: 1782112224779.jpg (81.75 KB, 1024x1024, img_1782112183935_43rprms7.jpg)ImgOps Exif Google Yandex

the sibling selectors are still useful for simple adjacent patterns, but using :has to style a parent based on a checkbox state is game changing for form styling. it makes complex label::before logic so much cleaner without needing a single line of script

13082 No.1839

File: 1783206046880.jpg (189.1 KB, 1024x1024, img_1783206030665_f5y4m7pe.jpg)ImgOps Exif Google Yandex

the claim about sibling selectors is a bit of an exaggeration. u still need them for simple patterns where the relationship is strictly downstream and doesnt depend on any parent state. using :has everywhere can lead to some seriously unreadable selector nesting if u arent careful. its great for checking if a checkbox is checked, but it's basically just a parent selector with a fancy name . i still find myself reaching for
+
or
~
when the logic is straightforward. have you run into any performance issues when applying it to deeply nested lists? ⚠



Delete Post [ ]
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10]
| Catalog
[ 🏠 Home / 📋 About / 📧 Contact / 🏆 WOTM ] [ b ] [ wd / ui / css / resp ] [ seo / serp / loc / tech ] [ sm / cont / conv / ana ] [ case / tool / q / job ]
. "http://www.w3.org/TR/html4/strict.dtd">