跳到主要内容
知仓学习社ZHICANG

constraint-physical

Use this skill when designing structural constraints that prevent invalid actions through the shape, layout, or behavior of the design itself — path…

不碰外部(只输出文字)无严重或高危命中hashgraph-online/awesome-codex-plugins

它会碰到什么

扫了多少2 个文本文件,7 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Physical constraints

Physical constraints prevent invalid actions through the structure of the design — the shape of a connector, the boundary of a screen, the channel of a slider. The user can't take the wrong action because the structure rejects it. Stronger than psychological constraints; not always available.

The three subtypes (from the book)

Paths

Channels that direct motion. The user can move along the path; off-path movement is impossible or rejected.

Software examples:

  • Sliders constrain motion to one dimension.
  • Range inputs constrain values to a defined min/max.
  • Scroll bars constrain scrolling direction.
  • Dropdown lists constrain selection to provided options.
<!-- Path constraint: value must be 0-100 -->
<input type="range" min="0" max="100" value="50" />

<!-- Path constraint: choice from fixed set -->
<select>
  <option>Small</option>
  <option>Medium</option>
  <option>Large</option>
</select>

Axes

Rotary controls. Convert applied force into rotation; effectively infinite range in a small space.

Software examples:

  • Rotation gestures in canvas tools.
  • Color-wheel pickers that constrain hue selection to a circular path.
  • Dial-style controls for continuous values.

Barriers

Block, slow, or redirect motion.

Software examples:

  • Modal dialogs block interaction with content beneath.
  • Disabled buttons block their action.
  • Permission gates block access to features.
  • Screen edges stop cursor motion (Fitts's edge advantage).
  • Form-validation blocks prevent submission when invalid.

Patterns

Input-type constraints (paths)

<input type="email" />     <!-- only accepts email format -->
<input type="number" min="0" />   <!-- only non-negative numbers -->
<input type="date" />      <!-- only valid dates -->
<input type="color" />     <!-- only valid hex colors -->

The browser enforces the constraint; the user can't submit invalid data.

Drop-zone constraints (barriers)

A drag-and-drop interaction can constrain valid drops at the API level:

dropZone.addEventListener('dragover', e => {
  if (isValidTarget(draggedItem, dropZone)) {
    e.preventDefault();  // allow drop
  }
  // not preventing default = drop won't fire
});

The browser's drag-and-drop API itself uses constraint: preventDefault opens the channel; absence keeps it blocked.

Modal as barrier

<dialog open>
  <h2>Required action</h2>
  <p>You must complete this step before continuing.</p>
  <button onclick="proceed()">Continue</button>
</dialog>

The dialog blocks interaction with the page beneath. Use sparingly; barriers irritate when they don't serve a clear purpose.

Disabled state (block)

<button id="submit" disabled>Submit</button>

The button can't trigger its action until enabled. Pair with explanation of what would enable it.

When to use physical over psychological

  • When the consequence of the wrong action is severe (data loss, security breach, irreversible operation). Physical constraints are stronger.
  • When the user is novice or the system is unfamiliar — psychological constraints rely on prior knowledge that may not exist.
  • When there's no acceptable failure mode — make the wrong action impossible.

When physical constraints over-restrict

  • Format constraints stricter than necessary — phone fields that reject parentheses; name fields that reject apostrophes.
  • Hardware-style barriers in software contexts — a modal that blocks because of a non-blocking concern.
  • Disabled states that don't explain themselves — user can't act and doesn't know why.

The discipline: constrain real requirements; explain when surprises occur.

Resources

  • Norman, D. The Design of Everyday Things (1988, 2013).
  • Lidwell, Holden & Butler (2003).
  • WCAG — input-type and validation constraints contribute to accessibility.

Related sub-skills

  • constraint (parent).
  • constraint-psychological — the other half; symbols, conventions, mappings.
  • affordance — affordance + constraint = the action space.
  • accessibility-operable — physical constraints must be operable across assistive technologies.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。

它属于哪个仓库

星标★ 1,027
本站分层T1
该仓技能数1910
原文件路径plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/constraint-physical/SKILL.md

同一个仓库里的其他技能

看这个仓库的全部 1910 个技能