Slide 1

Slide 1 text

CSS polyfill とその未来

Slide 2

Slide 2 text

ブラウザの標準化まわりを追うのが趣味 最近はReactを使ったアプリケーションを書いています。 ユーザーインターフェイスやブラウザが好き。 https://github.com/ken7253 https://zenn.dev/ken7253 https://bsky.app/profile/ken7253.bsky.social https://dairoku-studio.com ken7253 Frontend developer

Slide 3

Slide 3 text

CSSの新機能 プロダクションで 使えていますか?

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

Baseline Widely available :is() / :where() width: fit-content / min-content; @layer display: block flex; (display Multi-keyword values) clamp() / min() / max()

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

構文のトランスパイル typescript / babel 組み込みオブジェクトのサポート core-js / promise-polyfill 利用できないAPIの制限 @eslint/compat / typescript(lib option)

Slide 8

Slide 8 text

構文のトランスパイル post-css plugins / Sass プロパティのサポート ❌️ => polyfillが必要 利用できないAPIの制限 stylelint-browser-compat

Slide 9

Slide 9 text

なぜCSSのPolyfillは実現が難しいのか

Slide 10

Slide 10 text

new-feater という新しいプロパティのpolyfillを作ることを考えます。 なぜCSSのPolyfillは実現が難しいのか new-feater: inherit; :root { display: block flex; }

Slide 11

Slide 11 text

string CSSOM string DOM CSS CSS parser Layout tree HTML HTML parser Painting なぜCSSのPolyfillは実現が難しいのか

Slide 12

Slide 12 text

string string CSSOM CSSOM string DOM CSS CSS parser Custom parser Layout tree HTML HTML parser Painting 特定の keyword や selector /一部の at-rule の拡張が可能になりそう。 ただこれだけではLayoutなどには関与できない。 なぜCSSのPolyfillは実現が難しいのか

Slide 13

Slide 13 text

string string CSSOM string DOM DOM CSS CSS parser Custom parser Layout tree HTML HTML parser Custom Painting? Painting なぜCSSのPolyfillは実現が難しいのか

Slide 14

Slide 14 text

No content