惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cloudbric
Cloudbric
T
Threat Research - Cisco Blogs
Simon Willison's Weblog
Simon Willison's Weblog
AWS News Blog
AWS News Blog
P
Privacy & Cybersecurity Law Blog
H
Help Net Security
云风的 BLOG
云风的 BLOG
G
GRAHAM CLULEY
Spread Privacy
Spread Privacy
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
A
Arctic Wolf
Project Zero
Project Zero
Engineering at Meta
Engineering at Meta
P
Privacy International News Feed
Blog — PlanetScale
Blog — PlanetScale
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
The Register - Security
The Register - Security
Recorded Future
Recorded Future
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
C
Cisco Blogs
PCI Perspectives
PCI Perspectives
Recent Announcements
Recent Announcements
Martin Fowler
Martin Fowler
A
About on SuperTechFans
W
WeLiveSecurity
GbyAI
GbyAI
V
Vulnerabilities – Threatpost
The GitHub Blog
The GitHub Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
Check Point Blog
Y
Y Combinator Blog
月光博客
月光博客
Scott Helme
Scott Helme
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
F
Fortinet All Blogs
U
Unit 42
G
Google Developers Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Threatpost
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Google Online Security Blog
Google Online Security Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cisco Talos Blog
Cisco Talos Blog
博客园 - 三生石上(FineUI控件)
Hugging Face - Blog
Hugging Face - Blog
MongoDB | Blog
MongoDB | Blog
博客园 - 司徒正美

Recent Commits to css-houdini-drafts:main

[css-properties-values-api] Use relevant global realm, not current. A… Remove leftover merge conflict marker (#1173) · w3c/css-houdini-drafts@bfc9454 Update all api.csswg.org/bikeshed URLs to reference spec-generator (#… · w3c/css-houdini-drafts@15d0412 Reflect master=>main branch renaming in internal hyperlinks Add versioned URL aliases and legacy redirects · w3c/css-houdini-drafts@acae9ee Fix build failure when no Overview.html files exist (#1166) · w3c/css-houdini-drafts@86359e0 Add GitHub Pages autopublishing workflow (#1165) [font-metrics-api-1][editorial] Fixed Bikeshed issues · w3c/css-houdini-drafts@0b7adca [css-properties-values-api-1][editorial] Fixed Bikeshed issues · w3c/css-houdini-drafts@a1eb191 Added .vscode to .gitignore · w3c/css-houdini-drafts@090cd24 [box-tree-api-1][editorial] Fixed Bikeshed issues · w3c/css-houdini-drafts@17fcaf6 [css-typed-om-2][editorial] Fixed Bikeshed issues · w3c/css-houdini-drafts@eb196d6 [css-typed-om-1][editorial] Fixed Bikeshed issues [css-layout-api-1][editorial] Fixed Bikeshed issues · w3c/css-houdini-drafts@79124e7 [css-animation-worklet-1][editorial] Fixed Bikeshed issues · w3c/css-houdini-drafts@6c343e6 [css-typed-om-1] Correct a couple of typos (#1150) · w3c/css-houdini-drafts@8172261 [css-typed-om-1] Correct `this` type in StylePropertyMapReadOnly meth… · w3c/css-houdini-drafts@8f910ae [css-typed-om] Use undefined for setters. (#1143) · w3c/css-houdini-drafts@aafb3d5 [css-typed-om] Add missing steps to reify oklab() and oklch() https:/…
[css-layout-api][explainer] add mandatory intrinsicSizes function (#1… · w3c/css-houdini-drafts@a8b415e
ggrossetie · 2026-03-04 · via Recent Commits to css-houdini-drafts:main

@@ -66,6 +66,7 @@ below. You should read the code below with its explanatory section.

66666767

```js

6868

registerLayout('centering', class {

69+

async intrinsicSizes() {}

6970

async layout(children, edges, constraints, styleMap) {

7071

// (1) Determine our (inner) available size.

7172

const availableInlineSize = constraints.fixedInlineSize - edges.inline;

@@ -229,6 +230,7 @@ registerLayout('style-read', class {

229230

static inputProperties = ['--a-number'];

230231

static childInputProperties = ['--a-string'];

231232233+

async intrinsicSizes() {}

232234

async layout(children, edges, constraints, styleMap) {

233235

// We can read our own style:

234236

styleMap.get('--a-number').value === 42;

@@ -307,13 +309,14 @@ We pass the `BreakToken` to add back into the `layout()` call in order to produc

307309

registerLayout('basic-inline', class {

308310

static layoutOptions = {childDisplay: 'normal'};

309311312+

async intrinsicSizes() {}

310313

async layout(children, edges, constraints, styleMap) {

311314

// Determine our (inner) available size.

312315

const availableInlineSize = constraints.fixedInlineSize - edges.inline;

313316

const availableBlockSize = constraints.fixedBlockSize !== null ?

314317

constraints.fixedBlockSize - edges.block : null;

315318316-

const constraints = {

319+

const childConstraints = {

317320

availableInlineSize,

318321

availableBlockSize,

319322

};

@@ -327,11 +330,14 @@ registerLayout('basic-inline', class {

327330

// Layout the next line, the produced line will try and respect the

328331

// availableInlineSize given, you could use this to achieve a column

329332

// effect or similar.

330-

const fragment = await child.layoutNextFragment(constraints, childBreakToken);

333+

const fragment = await child.layoutNextFragment(childConstraints, childBreakToken);

331334

childFragments.push(fragment);

332335333336

// Position the fragment, note we could do something special here, like

334337

// placing all the lines on a "rythmic grid", or similar.

338+

||||||| parent of a2dd8db ([css-layout-api][explainer] add mandatory intrinsicSizes function)

339+

// Position the fragment, note we coulld do something special here, like

340+

// placing all the lines on a "rythimic grid", or similar.

335341

fragment.inlineOffset = edges.inlineStart;

336342

fragment.blockOffset = blockOffset;

337343

@@ -409,6 +415,7 @@ We can make our children fragment by passing them a constraint space with a frag

409415410416

```js

411417

registerLayout('special-multi-col', class {

418+

async intrinsicSizes() {}

412419

async layout(children, edges, constraints, styleMap, breakToken) {

413420

for (let child of children) {

414421

// Create a constraint space with a fragmentation line.

@@ -435,6 +442,7 @@ We can also allow our own layout to be fragmented by respecting the fragmentatio

435442436443

```js

437444

registerLayout('basic-inline', class {

445+

async intrinsicSizes() {}

438446

async layout(children, edges, constraints, styleMap, breakToken) {

439447440448

// We can check if we need to fragment in the block direction.