Minor Principles of Design

See CSS2 Design Principles, Evolution of CSS Layout: Principles, & Designing CSS slide deck & partial transcript for higher-level design principles.

Transparency Principle
Inserting an unstyled block in a block formatting context (as sibling, parent, child or intermediary) / unstyled inline in an inline formatting context should have no effect on styling.
Lea Verou Reordering Principle
If it can be unambiguously reordered, it should be reorderable.
Pass-through Auto-sizing Principle
`auto` as a size generally passes down any min/max-content constraints, and passes up through it the min/max-content contribution
Resolved Values Round-Trip Principle
If you write the result of getComputedStyle() back into the property, the resulting rendering of that element (inheritance aside) should remain stable.
DBaron's Degrees of Freedom Caveat
When the platform has too many degrees of freedom in it, developers aren't able to test what they're doing well enough. [This results in buggy web pages, particularly on minority systems, and is therefore bad.]
fantasai Principle of Proper Resilience
We try to make sure behavior is good by default, and resilient in weird cases. We do not choose bad behavior by default because it's the most straightforward way to be resilient.
Jen Simmons Tooling Principle
Any feature that requires everyone to use a certain toolchain to be usable is a design failure.
Roc Principle of Spec-writing
If Robert O'Callahan is unhappy with your spec, you're the one who's wrong.
ideas/principles.txt · Last modified: 2022/10/19 10:16 by fantasai
Recent changes RSS feed Valid XHTML 1.0 Valid CSS Driven by DokuWiki