Frontend FYI
Frontend FYI
  • 71
  • 735 479
Tailwind is JUST CSS: Enhancing It By Adding Modern CSS Features
In last week's video we used three modern CSS features that are huge time savers. However, TailwindCSS doesn't support these properties out of the box yet. In today's video we will take a look at how we can extend Tailwind in such a way that we can use them today!
We will take last week's video as a starting point and start converting everything over to TailwindCSS.
The CSS features we will be taking a look at are @ starting-style, transition-behavior: allow-discrete, and popover.
LINKS:
Last weeks video (I explain all these properties): ua-cam.com/video/Iygwzh33Q1E/v-deo.html
MORE?
📈 If you want more content like this, become a Frontend FYI PRO and get access to my current and all future courses for a one-time purchase: fe.fyi/pro
📺 If you want to see more videos like these, check out my website: fe.fyi/videos
✉️ Subscribe to my newsletter: fe.fyi/newsletter
MY SOCIALS
🌍 My website - www.frontend.fyi
🐦 Twitter - JeroenReumkens
📸 Instagram - jeroenreumkens
💼 Linkedin - www.linkedin.com/in/jeroenreumkens
COLLAB
Want to work together on creating content? Feel free to reach out via jeroen [at] frontend.fyi
WHO AM I?
If you're new to this channel - Hey, my name is Jeroen. A frontend engineer with almost 15 years of professional experience, who in 2023 decided to stop teaching only his close collegeas to start teaching the whole world. What I teach some call Design Engineering, I like to call it the Craft of Frontend.
TIMESTAMPS:
00:00 - Intro
01:05 - Quick code recap
02:00 - Using :popover-open
04:31 - Styling the backdrop
05:15 - Adding transition plus allow-discrete
07:30 - Adding @ starting-style and fade-in animation
10:58 - Animating the child components
13:48 - End result & Outro
#tailwindcss #css #webdevelopment #frontend
Переглядів: 1 138

Відео

Cutting Edge CSS: What Took Hours And Lots Of Code Now Takes MINUTES!
Переглядів 7 тис.День тому
Today we explore three exciting new CSS features now available in all browsers that will make our lives so much easier! We will cover: - CSS Popover API: Learn how to create content overlays, perfect for tooltips and hamburger menus, with no JavaScript needed and only 3 attributes to add. - @starting-style: Discover how to add initial styles for elements as they are added to the document, enabl...
Making a Satisfying Foldable Map with Framer Motion
Переглядів 2,8 тис.21 день тому
In this video we'll be recreating a design I came across on Twitter where Sam created this beautiful folding map component. We'll be using Framer Motion to recreate the same result with very little effort! Make sure to check the live playground linked below to get the code and play around with the map yourself! LINKS: Code and live playground: www.frontend.fyi/v/making-a-foldable-map-with-frame...
Auto-hiding Sticky Navigation With Framer Motion In 10 Minutes
Переглядів 4,5 тис.Місяць тому
In today's video we'll be building an auto-hiding and revealing sticky navigation, with Framer Motion. It will show and hide based on your scroll direction, have a nice hover to show itself again if you hover it while it's collapsed, as well as make sure that the accessibility for it is on point too. 🤓 Check the code here: www.frontend.fyi/recipes/framer-motion/auto-hiding-sticky-navigation MOR...
Beautiful Interactive Frosted Glass Effect With CSS
Переглядів 2,2 тис.Місяць тому
🤓 Checkout the code and live playground here: frontend.fyi/v/frosted-glass-effect Lately I've seen quite a few tweets sharing these amazing frosty CSS effects. Last week I came across another tweet sharing one, and I decided I just had to make a video about it showing you how you can create these things yourself. They simply look too good! In this video we'll be recreating them with React and T...
10 Alternatives To Media Queries I Use A Lot
Переглядів 1,9 тис.2 місяці тому
Media queries are so easy to use, that we tend to use them for every situation we can think of. In today's video I want to talk you through ten alternative ways you can write your CSS, so you can skip on the media query. Don't get me wrong, there's nothing wrong with media queries! But I strongly believe knowing how to write styles that need less media queries, makes you a better frontend devel...
Rebuilding Apple's Crazy Scroll Animations With Framer Motion And TailwindCSS
Переглядів 13 тис.3 місяці тому
In today's video we'll be recreating this Apple TV page with Tailwind and Framer Motion. We'll start from zero and add components step by step, until we and up with an amazing website similar to Apple's. Let's dive in! LINKS Code and live playground of the rebuild: www.frontend.fyi/v/rebuilding-the-apple-tv-plus-website-with-framer-motion-and-tailwind Check out the Framer Motion Course: www.fro...
Tailwind CSS V4 is SO Good!
Переглядів 33 тис.4 місяці тому
✨ Become a Frontend FYI PRO today via www.frontend.fyi/pro - PRO is a single time purchase lifetime plan, giving you access to all courses and other paid content I will create! Right now the first parts of my Framer Motion course have already released! I just really love Tailwind, I know.. But did you know that with this alpha release Tailwind just became even more "Just CSS™"? Let me take you ...
How the PROS Use Tailwind
Переглядів 45 тис.4 місяці тому
I am a big fan of Tailwind - but not everyone is. And that is totally okay! But if you are a fan too, or are still doubting whether you are, this video is for you. I see many people use Tailwind in the 'default' way, and I don't understand why! Let me show you this simple trick that will make your Tailwind experience SO much better. On top of that it also makes all their linting and autocomplet...
I Made my Own Picture-in-Picture player
Переглядів 2,3 тис.4 місяці тому
I guess I'm not the only multitasker here, right? I use picture-in-picture so often while doing other things at the same time! So I HAD to implement this in my new course platform too. Unfortunately (or for the better..) you can only use the PIP web API as a trigger on a click. But I wanted this picture-in-picture to appear when the user scrolled away while still watching the video. The result ...
Launching My Framer Motion Course!
Переглядів 2,2 тис.5 місяців тому
Yes friends, you're not imagining this! I've just now released my very own frontend course platform. INCLUDING the first 3 modules of my Framer Motion course! I couldn't be more excited! Let me take you through what I've built, showing you all the platform's features as well as giving you a short intro about the Framer Motion course! All courses are part of Frontend FYI PRO. A one-time purchase...
Animated Noise With CSS-Only Shouldn’t Be Possible!
Переглядів 1,8 тис.5 місяців тому
This week I came across this tweet by Adam Argyle (devrel at Google). He shared this codepen where he created an animated noise gradient, with pure CSS! When I first saw it I was immediately curious how he built this. His approach was very fascinating to me! However, when you take a quick look at the code, it might not be immediately clear what is happening here. There's quite a few modern CSS ...
Modern CSS Techniques to Recreate Opal's Mind-blowing Scroll Animations
Переглядів 5 тис.5 місяців тому
Opal's webpage for their new Tadpole webcam has many great animations on it. When exploring it last week I realised this was an awesome candidate for this week's rebuild. We won't make it a simple rebuild though - we're gonna add a pinch of modern CSS to the mix by recreating all scroll animations with Scroll-driven Animations! Scroll-driven animations are absolutely one of the favorite recent ...
Recreating Vercel's Smooth Navigation Animation With CSS Only
Переглядів 10 тис.6 місяців тому
Recreating Vercel's Smooth Navigation Animation With CSS Only
What Google Does With ThreeJS, We Can Do With CSS ONLY!
Переглядів 4,2 тис.7 місяців тому
What Google Does With ThreeJS, We Can Do With CSS ONLY!
These Simple Tricks Will Make Debugging CSS So Much Easier
Переглядів 1,9 тис.7 місяців тому
These Simple Tricks Will Make Debugging CSS So Much Easier
Using CSS View Transitions For Something We Shouldn’t - Animating a Mega Menu
Переглядів 3,6 тис.7 місяців тому
Using CSS View Transitions For Something We Shouldn’t - Animating a Mega Menu
ONE YEAR on YouTube! It’s only the beginning!
Переглядів 6908 місяців тому
ONE YEAR on UA-cam! It’s only the beginning!
CSS Grid is SUCH a Timesaver
Переглядів 2,4 тис.8 місяців тому
CSS Grid is SUCH a Timesaver
Why you SHOULDN'T become a Full Stack Developer
Переглядів 4 тис.8 місяців тому
Why you SHOULDN'T become a Full Stack Developer
How a Small Oversight In GSAP’s New Website Has Such a Big Impact
Переглядів 8 тис.8 місяців тому
How a Small Oversight In GSAP’s New Website Has Such a Big Impact
CSS Card Hover Effect In Minutes: Using CSS Perspective
Переглядів 4,4 тис.8 місяців тому
CSS Card Hover Effect In Minutes: Using CSS Perspective
Master Staggered Text Animations with Framer Motion
Переглядів 30 тис.9 місяців тому
Master Staggered Text Animations with Framer Motion
Why is Radix Themes Built This Way - A Solution
Переглядів 5 тис.10 місяців тому
Why is Radix Themes Built This Way - A Solution
Still using !important? With this trick you NEVER have to anymore
Переглядів 2,6 тис.10 місяців тому
Still using !important? With this trick you NEVER have to anymore
I've Been Ignorant For Too Long: PNPM Is Really Great!
Переглядів 2 тис.10 місяців тому
I've Been Ignorant For Too Long: PNPM Is Really Great!
Why Scroll Driven Animations Are Such A Game Changer for CSS
Переглядів 7 тис.10 місяців тому
Why Scroll Driven Animations Are Such A Game Changer for CSS
Effortlessly Animating a Drag & Drop Kanban Board With View Transitions
Переглядів 9 тис.11 місяців тому
Effortlessly Animating a Drag & Drop Kanban Board With View Transitions
CSS Logical Properties: It is SO important we start using this
Переглядів 2,2 тис.11 місяців тому
CSS Logical Properties: It is SO important we start using this
Playing with CSS Masks and Framer Motion
Переглядів 7 тис.11 місяців тому
Playing with CSS Masks and Framer Motion

КОМЕНТАРІ

  • @blind1855
    @blind1855 10 годин тому

    this is genius what the hell, as a react frontend noob my eyes have been opened.

  • @franciscokloganb
    @franciscokloganb День тому

    I'd recommend using `tailwind-variant` package instead of `cva`. Straightout upgrade.

  • @alexpanteli3651
    @alexpanteli3651 2 дні тому

    Looks like an overkill. Is it not easier to just create a custom CSS for such a use case?

    • @frontendfyi
      @frontendfyi 2 дні тому

      It’s a delicate balance indeed. In last weeks video I made the same thing with vanilla css. You can definitely use this approach in tailwind too. But even though it’s quite few classnames, we’re also adding quite some logic now, which used to require adding JS too. So thinking of that it might not be too bad right?

  • @LawJolla
    @LawJolla 3 дні тому

    I'm a Tailwind wonk since before the RefactoringUI days. This is the first tutorial that made me think "ok, stop, we have actually found too much tailwind"

    • @frontendfyi
      @frontendfyi 3 дні тому

      I’m not sure if I completely get what you mean. You’re saying this pseudo language that tailwind is might be going slightly too far now?

    • @LawJolla
      @LawJolla 3 дні тому

      I know the point was to show the plugin API. Loved it! But it's the first time I thought styling was unreadable in Tailwind as opposed to CSS. I think it's the amount of stateful styling. But I'll probably sign up for your pro this week. Thanks for your hard work!

    • @frontendfyi
      @frontendfyi 2 дні тому

      @LawJolla thanks so much, appreciate it! And yeah sometimes tailwind definitely becomes unreadable because of the amount of classes you need. Although I also dislike to then switch back to vanilla css because all of sudden my styles are then split over 2 locations. Again thanks for your kind words!

    • @LawJolla
      @LawJolla 2 дні тому

      @@frontendfyi I completely get that concern and have faced it countless times too. Maybe my comment is better said “this is the first time I thought I would have split styles in this case”

  • @mihao-runs
    @mihao-runs 3 дні тому

    well explained. ty👏

    • @frontendfyi
      @frontendfyi 3 дні тому

      Glad you enjoyed it! Thanks for commenting!

  • @vasyaqwe2087
    @vasyaqwe2087 3 дні тому

    this is really cool. thank you!

  • @Noam-Bahar
    @Noam-Bahar 3 дні тому

    Neato

  • @adilsarfraz02
    @adilsarfraz02 3 дні тому

    🙌

  • @baxtables
    @baxtables 3 дні тому

    Hi boss, I admire your work and your calmness ..is there a video of you explaining how tailwind css works internally? If not, I kindly request you to make one, whenever possible. Thank you

    • @frontendfyi
      @frontendfyi 3 дні тому

      Thanks for your kind words! There’s no video by me explaining that topic unfortunately. I’ll think about it whether I can make such a video 🙏

  • @soniamaklouf1178
    @soniamaklouf1178 3 дні тому

    Thanks for this video could you make a video on CSS trig functions I've seen ana tudor doing great things on codepen like her " No SVG, no image, CSS-only fluid slider with input"

  • @geekthegeek730
    @geekthegeek730 4 дні тому

    wowww!

  • @feelsthevibes1662
    @feelsthevibes1662 4 дні тому

    Which theme?

    • @frontendfyi
      @frontendfyi 4 дні тому

      It's called Arc, from the Bearded Theme collection: github.com/BeardedBear/bearded-theme The font is called Recursive Mono Casual Static

  • @MonarchofSouls
    @MonarchofSouls 6 днів тому

    What a great video!

  • @fAlekr1
    @fAlekr1 7 днів тому

    Great! Very helpful video! Cheers from Brasil! \o/

    • @frontendfyi
      @frontendfyi 6 днів тому

      Thanks! Glad you liked it 🙏

  • @meylis_so2
    @meylis_so2 7 днів тому

    bro something lol i found when u write this : popover=" " i didnt an : /// <reference types="react/canary" /> but i use it anyways cause i can make some error

  • @meylis_so2
    @meylis_so2 7 днів тому

    bro bro make a video about :has() :is() and so on. come on bro u re the best

  • @PlayerRPG85
    @PlayerRPG85 8 днів тому

    Liked and subscribed!!!

  • @sajadsalamian6953
    @sajadsalamian6953 8 днів тому

    Can somebody name his font????????

    • @frontendfyi
      @frontendfyi 8 днів тому

      The font is called Recursive Mono Casual Static

  • @ThaufiqSirajShaik
    @ThaufiqSirajShaik 8 днів тому

    What theme are you using for vs code?

    • @frontendfyi
      @frontendfyi 8 днів тому

      It's called Arc, from the Bearded Theme collection: github.com/BeardedBear/bearded-theme The font is called Recursive Mono Casual Static

  • @Tapadar.Monsur
    @Tapadar.Monsur 8 днів тому

    What VSCode theme are you using, Jeroen?

    • @frontendfyi
      @frontendfyi 8 днів тому

      It's called Arc, from the Bearded Theme collection: github.com/BeardedBear/bearded-theme The font is called Recursive Mono Casual Static

  • @bramvandinteren
    @bramvandinteren 8 днів тому

    Ahhhh yesss, eindelijk transitions van display:none naar flex! Neem aan dat dit altijd gebruikt moet worden i.p.v. opacity:0; visibility:hidden toch?

    • @frontendfyi
      @frontendfyi 8 днів тому

      In dit geval combineer je het met bijv opacity 0 om een fade-in te krijgen. Display none en block hebben zelf geen waardes waartussen ze geanimeerd kunnen worden. Dus als je animeert naar display none, zal de browser op het laatste moment de property naar none zetten. Om dan een animatie te zien moet je zelf nog opacity animeren.

  • @abhishekkadam2999
    @abhishekkadam2999 9 днів тому

    Is there a difference from the dialog element, other than being pure css.

    • @frontendfyi
      @frontendfyi 8 днів тому

      The specs make a distinction which they call “modal” or”non-modal”. A dialog is a modal pop-up, which means that in order to dismiss that, the user _has_ to make an important choice in the dialog before it can be dismissed. The popover is non-dialog, meaning it does not have that restriction. This is also why for example the popover auto closes when you click the backdrop vs a dialog which you need to run a JS method for this to happen. There’s a lot of overlap between the two elements and you can definitely create a non modal with a dialog too. But this is what the docs say is their intended behavior. See here too: developer.mozilla.org/en-US/docs/Web/API/Popover_API#concepts_and_usage

  • @mouadt-b8042
    @mouadt-b8042 9 днів тому

    this is just amazing thanks bro

  • @buildervision7082
    @buildervision7082 9 днів тому

    This is so great I've been looking for a developer UA-camr who also teaches accessibility

    • @frontendfyi
      @frontendfyi 9 днів тому

      Nice!! Happy you like my content 🙏 Always feel free to share ideas for topic you’d like to see content of.

  • @alexpanteli3651
    @alexpanteli3651 9 днів тому

    Eventually we will get rid of all these UI libraries. Hopefully. Thanks for the great content😊

    • @frontendfyi
      @frontendfyi 9 днів тому

      I love the direction css is heading into. Doing these things with plain css definitely is the way! Glad you like the content 😌

  • @ravvikumar1216
    @ravvikumar1216 9 днів тому

    what doea Usps stands for.....?

    • @frontendfyi
      @frontendfyi 9 днів тому

      It stands for “unique selling points”. It’s a term often used to describe the best features of a product.

    • @ravvikumar1216
      @ravvikumar1216 9 днів тому

      @@frontendfyi thanks, and nice video

  • @uiuxaidesign
    @uiuxaidesign 9 днів тому

    yes, I love TailwindCSS!

  • @ilan117
    @ilan117 9 днів тому

    I ❤ this channel … thank you so much for sharing and teaching us ✌️

    • @frontendfyi
      @frontendfyi 9 днів тому

      Glad you enjoy it! Thanks for sharing this with me too! ❤️

  • @akinbobolaemmanuel3319
    @akinbobolaemmanuel3319 10 днів тому

    What vscode theme are you using? I like the font also. I would like to change mine :)

    • @frontendfyi
      @frontendfyi 9 днів тому

      It's called Arc, from the Bearded Theme collection: github.com/BeardedBear/bearded-theme The font is called Recursive Mono Casual Static

    • @akinbobolaemmanuel3319
      @akinbobolaemmanuel3319 9 днів тому

      @@frontendfyi thank you 😊💃

  • @benve7151
    @benve7151 10 днів тому

    10/10

  • @InSaneRoGer112003
    @InSaneRoGer112003 10 днів тому

    @starting-style is a game changer wooo thanks for making a vid on this

    • @frontendfyi
      @frontendfyi 10 днів тому

      Thanks for commenting! Glad you liked the video!

  • @MyGeorge1964
    @MyGeorge1964 10 днів тому

    Nice!

  • @Mempler
    @Mempler 10 днів тому

    It's such a simple but awesome feature. It's always such a pain to implement this in jsx especially if you want animations

    • @frontendfyi
      @frontendfyi 10 днів тому

      I really like it! And that fact that is so new but we can use it everywhere already is even more amazing. I love the direction CSS is heading into!

  • @Madflows
    @Madflows 13 днів тому

  • @DavidsKanal
    @DavidsKanal 15 днів тому

    I am now wasting my time building native dialogs instead 💪

    • @frontendfyi
      @frontendfyi 15 днів тому

      Hahaha. It’s so fun though! If you liked this you’ll probably love the video that drops next week too!

  • @geekthegeek730
    @geekthegeek730 18 днів тому

    FONT ?????????

    • @frontendfyi
      @frontendfyi 9 днів тому

      The font is called Recursive Mono Casual Static

  • @ROL4NDFPV
    @ROL4NDFPV 19 днів тому

    If you are in a grid parent there is no need for position relative to use the z-index ;)

    • @frontendfyi
      @frontendfyi 19 днів тому

      Ooooh! You’re right! It’s such an old habit to automatically grab for position relative, haha. Thanks for telling me!

  • @w3mw
    @w3mw 19 днів тому

    Hi I’m interested in your pro course, but when I buy it is it from your company or is it from you personally? 😄

    • @frontendfyi
      @frontendfyi 19 днів тому

      Thanks for wanting to buy the course 🙏 Frontend.fyi is my company, so pretty much both is the answer, haha. You do get a company invoice if that is what you're asking! Sent through Stripe. Let me know if I misunderstood your question!

    • @w3mw
      @w3mw 19 днів тому

      @@frontendfyi perfect, no it was that. I will buy it today! Love your UA-cam!

    • @frontendfyi
      @frontendfyi 19 днів тому

      Thank you so much, really appreciate it! Just shoot me a message in case you'd like anything changed with the invoice! jeroen [at] frontend.fyi, or via Discord which you get access to as a pro member.

  • @81NARY
    @81NARY 20 днів тому

    Never knew about _dragX, really cool vid!

  • @guillermo.avalos
    @guillermo.avalos 20 днів тому

    Great code, but the fold is completely unrealistic. A Triptych wouldn’t unfold like this.

    • @frontendfyi
      @frontendfyi 20 днів тому

      I don't look at it as a Triptych though, I'd more see this as a 'Z' that folds in and out. I think it makes more sense then right? In either case I hope you still learned something!

  • @v.demchenko
    @v.demchenko 20 днів тому

    🎉🎉

  • @kevinat71
    @kevinat71 20 днів тому

    amazing!

  • @danaharley3565
    @danaharley3565 20 днів тому

    Speechless 😂

  • @netbug94
    @netbug94 20 днів тому

    men I've been trying to figure this out for the last two weeks, you the goat my friend

  • @pulpml
    @pulpml 21 день тому

    Wow! Thank you for making this