The CSS Podcast
Technology

The CSS Podcast

作者: The CSS Podcast
最近更新: 2个月前
Cascading Style Sheets (CSS) is the web's core styling language. For web developers, It's one of the...

Recent Episodes

100: Season 6 wrap up

100: Season 6 wrap up

Una and Bramus recap the season! They share some new updates and re-visit some of their favorite tips and tricks.Season 6 covered inline if() statements and custom functions, scroll state queries, carousel APIs, view transitions updates, anchor positioning, command invokers and interest invokers, customizable select, and a whole bunch of other CSS functions! Resources: Same-document view transitions have become Baseline Newly available → https://goo.gle/4nCyFSe  Solved by CSS Scroll State Queries: hide a header when scrolling down, show it again when scrolling up (scrolled state query) → https://goo.gle/49uQMpN  css-extras – A collection of useful CSS custom functions → https://goo.gle/4qFjIS5  CSS Mixins Specification (ED): Defining Mixins → ​​ https://goo.gle/3JpX4MZ  Invoker Commands: Scroll Commands (OpenUI Meeting Notes) → https://goo.gle/47onsQB  Anchored queries → https://goo.gle/4oMCvJT  Customizable select → https://goo.gle/4r9Xsjv Una Kravets (co-host) Bluesky | Twitter | YouTube | WebsiteMaking the web more colorful @googlechrome  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website@GoogleChrome CSS DevRel; @CSSWG; Scuba Diver 🤿  

2个月前
17:00
99: More CSS functions

99: More CSS functions

In this episode of The CSS Podcast, Una and Bramus cover a bunch of CSS functions from comparison functions to tree counting functions, the random function, and more. Resources: min(), max(), and clamp() Web Dev article → https://goo.gle/4nvMthu  Article by Ahmad Shadeed → https://goo.gle/3JvPznI  Comparison functions → https://goo.gle/3JmbJsx  sibling-count() and sibling-index() → https://goo.gle/3JCj33i  attr() CSS attr() gets an upgrade → https://goo.gle/3JCj33i  New capabilities for attr() → https://goo.gle/47inI3p  light-dark() → https://goo.gle/3X703wQ  shape() Use shape() for responsive clipping → https://goo.gle/47zSHH0  Better CSS Shapes Using shape() → https://goo.gle/47OZMop  ident() Article introducing ident() → https://goo.gle/4oHdYW9  ident() in the CSS Values and Units Specification →  https://goo.gle/3LgN8pK  random() Rolling the Dice with CSS random() → https://goo.gle/4oijnTO  Generating Random Values → https://goo.gle/4hFwj3K  CSS paint API: Being predictably random → https://goo.gle/3JEReau  Una Kravets (co-host) Bluesky | Twitter | YouTube | Website Making the web more colorful @googlechrome  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website @GoogleChrome CSS DevRel; @CSSWG; Scuba Diver 🤿  

2个月前
36:42
97: Invokers and commands

97: Invokers and commands

In this episode of The CSS Podcast, we're diving into the power of invoker commands! Discover how the command and commandfor attributes allow you to declaratively open dialogs and show popovers. We'll explore standard commands and then jump into creating your own custom commands for more complex interactions. To close off, we're covering the concept of "interest invokers" and how the new CSS properties and selectors they bring. Resources: Introducing command and commandfor blogpost → https://goo.gle/4ozmEy4  Authors Cards (Interest Invokers Demo) → https://goo.gle/42LU3x2  Invoker Commands Explainer → https://goo.gle/4o0DC8n  Interest Invokers Explainer → https://goo.gle/4nfyZGi    Una Kravets (co-host) Bluesky | Twitter | YouTube | WebsiteMaking the web more colorful @googlechrome  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website

2个月前
13:23
96: CSS anchor positioning

96: CSS anchor positioning

Welcome back to The CSS Podcast! Una and Bramus dive into CSS anchor positioning, a powerful new API that revolutionizes how developers handle dynamic UI element placement. Learn how to create interactive tooltips, popovers, and menus directly in CSS, eliminating the need for complex JavaScript.   Resources: CSS anchor positioning → https://goo.gle/3KvYYeZ  Anchor position tool → https://goo.gle/4gOYooL  Follow-the-leader pattern with CSS anchor positioning → https://goo.gle/46s0kQD  Anchor queries - Reposition tether arrow  → https://goo.gle/42fXtI1    Una Kravets (co-host) Bluesky | Twitter | YouTube | WebsiteMaking the web more colorful @googlechrome  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website@GoogleChrome CSS DevRel; @CSSWG; Scuba Diver 🤿

2个月前
13:15
95: Updates to View Transitions

95: Updates to View Transitions

View Transitions have been around for a little while. This episode of The CSS Podcast covers some of the recent additions and changes since we last covered this in episode 89. Resources: What's new in view transitions (2025 update) → https://goo.gle/47k7RAb  Same-document view transitions have become Baseline Newly available → https://goo.gle/4otGpqx  Learn View Transitions → https://goo.gle/42dNH9l  View Transitions Demos → https://goo.gle/42dNH9l  Nested View Transition Groups → https://goo.gle/3KtoVfi  Scoped View Transitions → https://goo.gle/3VHdovd  Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website@GoogleChrome CSS DevRel; @CSSWG; Scuba Diver 🤿  

2个月前
17:46
93: State queries in 2025

93: State queries in 2025

Una and Bramus dive into the latest advancements in CSS with state-based container queries. Learn how to create responsive and dynamic user experiences by querying the scroll state of UI elements, including 'stuck,' 'snapped,' and 'scrollable' states. Discover practical examples and techniques to replace complex JavaScript with declarative CSS, making your web development more efficient and powerful. Resources: Scroll state queries → https://goo.gle/4mQDQ0M Scroll-state-container →  https://goo.gle/487y4nI Anchor queries → https://goo.gle/3IBDVaw Episode 59 → https://goo.gle/3KB7M3z  Una Kravets (co-host) Bluesky | Twitter | YouTube | WebsiteMaking the web more colorful @googlechrome  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website@GoogleChrome CSS DevRel; @CSSWG; Scuba Diver 🤿  

3个月前
17:53
92: CSS if() and custom functions

92: CSS if() and custom functions

Welcome back to the new season of the CSS Podcast, where Una and Bramus are your guides, your cohosts, and your CSS best friends. In this episode we dig into two very powerful new CSS features: inline conditionals  with the if() function, and custom functions. Resources: CSS if() function specification → https://goo.gle/3IBChWo Article on if() by Una → https://goo.gle/4nUxIp2 Article on if() by Lea Verou → https://goo.gle/4nt2UvS CSS mixins specification →  https://goo.gle/48H8SEH Article on @function by Una → https://goo.gle/48H99rd Article on @function and if() by Bramus → https://goo.gle/46qPbzy The CSS Space Toggle by Chris Coyier → https://goo.gle/4874qio  Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬  Bramus Van Damme (co-host) Bluesky | Mastodon | YouTube | Website@GoogleChrome CSS DevRel; @CSSWG; Scuba Diver 🤿

3个月前
25:49
090: Scroll-driven animations

090: Scroll-driven animations

In this episode our esteemed guest returns! This time to help us grok Scroll Driven Animation. Learn all about scroll(), view(), animation-timeline, timeline-scope, animation-range, and more. Power those animations with off-the-main-thread CSS scroll animation powers.   Resources: Bramus's Demos: All mentioned Demos + Tools + Video Course + DevTools Extension link → https://goo.gle/3Uw31up  Video Course direct link: https://goo.gle/learn-scroll-driven-animations   Adam's Demos: scroll() the hue wheel → https://goo.gle/4emb3NO  CSS scroll() feature time warp → https://goo.gle/4exH3yv  view() long bento list → https://goo.gle/4gtcCLx  view() scrolly telling → https://goo.gle/3TAq2vA  view() iOS-like app switcher → https://goo.gle/4etvCI6  view() variable font animation → https://goo.gle/4e8eJmd    Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬  Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘

2024/9/26
46:33
089: View transitions

089: View transitions

In this episode Una and Adam bring on an esteemed guest Bramus, who brings us deep knowledge on View Transitions. These are easy to get started with but difficult to master, but not with Bramus here to teach us. He'll be covering introductory to advanced API features and a big bag of examples and demos.  Resources: Developer Documentation → https://goo.gle/4aHY7zo  Quick intro to View Transitions (Google I/O 2023 video) → https://goo.gle/3ZieRLp  What's new in View Transitions? (Google I/O 2024 video) → https://goo.gle/3zeYNj3  Misconceptions about View Transitions → https://goo.gle/3Tpsu7O  Bramus's Demos: Collection of various demos, both SPA and MPA → https://goo.gle/3B4edY8  Accordion → https://goo.gle/3B4egDi     Adam's Demos: Grid gallery → https://goo.gle/4giz0XV  Always great grid → https://goo.gle/3MH68Lu  Flexbox visualizer → https://goo.gle/47kmJOB  Editable tabs → https://goo.gle/4ghNfMx  Dollar number input → https://goo.gle/4e0FsBf  Stateful morphing button → https://goo.gle/4ebBNR2  Drag and Drop → https://goo.gle/3XlP2Yn  Isotope recreation → https://goo.gle/4dVX5lN  Local development animated → https://goo.gle/3XHjm17    Una Kravets (co-host) Twitter → https://goo.gle/452aBRb YouTube → https://goo.gle/457oMnS Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face Host of Tools Today → https://goo.gle/4aI6JpC & Designing in the Browser 🎬  → https://goo.gle/4e4YTcM    Adam Argyle (co-host) Twitter → https://goo.gle/3yFnHYu Instagram → https://goo.gle/3wUb6QJ YouTube → https://goo.gle/4dZNKK7 @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘 CSSWG → https://goo.gle/4bFErxq VisBug → https://goo.gle/4bDcVQZ     The CSS Podcast  #CSSpodcast  

2024/9/19
41:51
088: State queries

088: State queries

In this episode, Una and Adam discuss a future web capability that builds on container queries: state queries. From CSS, this feature will be able to detect  if a container is overflowing, when an element is scroll snapped, and when an element is stuck from position: sticky. Resources: :stuck, :snapped, :on-screen, etc → https://goo.gle/3WVhSi6   state queries syntax → https://goo.gle/3T2gI33  explainer → https://goo.gle/3XevW7x  Intent To Prototype → https://goo.gle/3Au8rOY  Scroll Snap Events → https://goo.gle/47koXO1     Una Kravets (co-host) Twitter → https://goo.gle/452aBRb YouTube → https://goo.gle/457oMnS  Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face Host of Tools Today → https://goo.gle/4aI6JpC & Designing in the Browser 🎬  → https://goo.gle/4e4YTcM  Adam Argyle (co-host) Twitter → https://goo.gle/3yFnHYu Instagram → https://goo.gle/3wUb6QJ YouTube → https://goo.gle/4dZNKK7  @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘 CSSWG → https://goo.gle/4bFErxq VisBug → https://goo.gle/4bDcVQZ       The CSS Podcast #CSSpodcast   Watch more The CSS Podcast → https://goo.gle/CSSpodcast  Subscribe to Chrome for Developers → https://goo.gle/ChromeDevs  #CSSPodcast #ChromeForDevelopers #Chrome   Speaker: Una Kravets, Adam Argyle

2024/9/12
23:13
081: Trigonometric Functions

081: Trigonometric Functions

In this episode Una and Adam share practical use cases, syntax and strategies for all the new math functions in CSS. From trig to algebra, they'll help you get a good idea on where and how these fit into your UI toolbelt. Links Ana Tudor tests your browser for CSS math function support → https://goo.gle/4cmBm5r  Great guide and overview from Daniel Wilson → https://goo.gle/4enKgBe  layout pow() → https://goo.gle/3RlvAsI  Using Absolute Value, Sign, Rounding and Modulo in CSS Today → https://goo.gle/4aY3OJz  Time based animation → https://goo.gle/3x6Dm2K   CSS type casting to numeric: tan(atan2()) scalars by Jane Ori → https://goo.gle/4bZyrj2  Open Props v2 type ramp prototype with pow() as taught by Dan Wilson in their post → https://goo.gle/45uqikj  CSS physics for transitions and keyframes with these math functions → https://goo.gle/3VltDgX Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬  Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘

2024/6/20
43:04
80: Animating to and from top-layer

80: Animating to and from top-layer

In this episode Una and Adam continue talking about dialogs and popovers, but this time it's all about animating them into and out of the top layer.. We'll be introducing starting-style, a new mode for transitioning discrete properties, and the overlay property for smooth entry and exit animations.  Links: top-layer CSS spec → https://goo.gle/4c2elUW Four new CSS features for smooth entry and exit animations by Una → https://goo.gle/3KpyB7e Using @starting-style and transition-behavior for enter and exit stage effects → https://goo.gle/452FG7p Popover on MDN → https://goo.gle/453xfss :popover-open on MDN → https://goo.gle/3x5XLVl Dialog and popover animated → https://goo.gle/3Kn1Ck7 Popover animated with nesting → https://goo.gle/3wW3Qns What is the top layer? → https://goo.gle/457rUjQ overlay property on MDN → https://goo.gle/3yKNRsT MDN demos → https://goo.gle/4c2eIyO Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬  Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘

2024/6/13
31:23
79: Popover and Dialog

79: Popover and Dialog

The CSS Podcast is back, with an episode highlighting the popover API and dialog element! Learn what they can do, and when to use which when. Links Popover API lands in Baseline → https://goo.gle/3Vo2dIs Dialogs and popovers seem similar. How are they different? → https://goo.gle/3wXD1z5 Dialog dilemmas and modal mischief → https://goo.gle/3R9nmDE Semantics and the popover attribute → https://goo.gle/3Vl3NuM Building a dialog component GUI Challenges → https://goo.gle/4c0YFkK Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬  Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘

2024/6/6
19:55
78: Season 4 wrap!

78: Season 4 wrap!

I can't believe we're already at the end of season 4! This season, we've been focusing on CSS gotchas and resolving these common CSS pitfalls. And alas, on our last episode of the season, we're going to take a look back at all of those tips and tricks and pick some of our favorites to highlight in this recap episode.   Links: Why isn't percentage working → https://goo.gle/418EnBG  Why isn't my element stuck → https://goo.gle/3uSX7Jk  Why isn't my custom property the value I expect → https://goo.gle/47BcZPj  How do I center a div → https://goo.gle/3RiOBLA   Why isn't my animation glitching → https://goo.gle/4a5fzPh    Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬    Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘 Subscribe to Chrome for Developers → https://goo.gle/ChromeDevs

2023/12/6
19:58
77: Why isn't percentage working here?

77: Why isn't percentage working here?

In this episode, Una and Adam talk about percentage resolution for various properties like font-size, padding height and width. They break down and explain why percentages may not work or may not be what you expected.   Links → https://goo.gle/47XtWU1  Understanding CSS Percentage → https://goo.gle/3RhLJzG  CSS Box Sizing Module Level 3 → https://goo.gle/46FRF9T    Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬    Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘 Subscribe to Chrome for Developers → https://goo.gle/ChromeDevs

2023/11/28
15:05
76: Why isn't my element stuck where I wanted it to stick?

76: Why isn't my element stuck where I wanted it to stick?

In this episode Una and Adam help you uncover moments where a sticky element isn't sticking. There are a couple of gotcha around implementing a sticky element and by the end of the show you'll know what they are and a few ways to work around them.   Links: sticky stack - https://goo.gle/3QICxTz  sticky desperado - https://goo.gle/3sC3OPj   sticky slide - https://goo.gle/47bcRGb    Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬    Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘 Subscribe to Chrome for Developers YouTube → https://goo.gle/ChromeDevs

2023/11/15
09:52
75: Why isn't my custom property the value I expect?

75: Why isn't my custom property the value I expect?

In this episode, Una and Adam discuss common gotchas with custom properties, which often feel fully reactive during use, but their limits and implementation details can popup at unexpected times and create a headache. They'll cover these situations and their solutions!   Links: Value stages → https://goo.gle/3FDo7yA  How custom property values are computed →https://goo.gle/49cOUiQ  A complete guide to custom properties → https://goo.gle/40gtVb8  The big gotcha with custom properties → https://goo.gle/45VwUHe   CodePen → https://goo.gle/3SdMnyY     Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬    Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘   Catch more episodes → https://goo.gle/CSSpodcast  Subscribe to Chrome for Developers → https://goo.gle/ChromeDevs

2023/10/27
19:32
74: How do I center a div?

74: How do I center a div?

In this episode we tackle one of the most asked questions of all CSS history.. how do I center this div? We'll cover multiple strategies that each have tradeoffs and super powers over each other.    Links: Centering in CSS → https://goo.gle/3RRki02  Comparing grid and flex place-items and place-content → https://goo.gle/3ZE3NGM  Centering in CSS: A Complete Guide → https://goo.gle/46xudw7  Centering examples from Una → https://goo.gle/3rF7lvR    Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬    Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘   Catch more episodes → https://goo.gle/CSSpodcast   Subscribe to Google Chrome Developers → https://goo.gle/ChromeDevs

2023/10/11
17:01
72: Why does my gradient have muddy colors in the middle?

72: Why does my gradient have muddy colors in the middle?

In this episode, we tackle the issues around getting undesirable gradient results. Sometimes it's you, sometimes it's the color space. We'll help you identify, assess and remedy muddy gradients.   Links: HD color guide - https://goo.gle/3RhyvmP  various gradients in color spaces - https://goo.gle/3Pc02TV  modern css gradient tool - https://goo.gle/3P4KxNI  try color mix - https://goo.gle/3r2toML  color-mix() with white hover codepen - https://goo.gle/3Pw6mHm  interpolation visualizer - https://goo.gle/45GwS6t    Una Kravets (co-host) Twitter | Instagram | YouTube Making the web more colorful ✨🎨  Web DevRel @googlechrome Unicorn face host of @toolsday & Designing in the Browser 🎬    Adam Argyle (co-host) Twitter | Instagram | YouTube @GoogleChrome CSS DevRel; @CSSWG; VisBug maker; punk; CSS/JS/UX addict; 💀🤘   Catch more episodes → https://goo.gle/CSSpodcast  Subscribe to Google Chrome Developers → https://goo.gle/ChromeDevs    The CSS Podcast #CSSpodcast  

2023/9/8
16:11