Bug reportOct 3, 2026· 0:25· 0 views
Element Plus: el-input shows focus ring after being re-enabled without focus (element-plus@latest)
0:25 total
Comments · 0
Be the first to comment.
Bug report— by SceneRecap AI
lowel-input (focus / disabled state management)
os: macOSbrowser: Chromium 151.0.7922.34viewport: 1280x720element_plus: element-plus@latest
Repro steps
- 1.Click inside the el-input component to focus it
- 2.Press Enter to trigger disabled state on the input
- 3.Click the 'Set disabled = false' button to re-enable the input
Expected
When el-input is re-enabled, it should return to its normal unfocused visual state unless explicitly focused by the user or programmatically focused.
Actual
el-input immediately displays a blue focus ring upon being re-enabled, despite the user not interacting with or focusing the input field.
Evidence
visualAt 5.0s, el-input displays a blue focus ring and cursor after receiving focus.
visualAt 7.0s and 9.0s, the input transitions to disabled ('Input is DISABLED') with grayed-out styling and no focus ring.
visualAt 11.0s, after clicking 'Set disabled = false' at 9.54s, the input is re-enabled ('Input is ENABLED') but incorrectly renders a blue active focus ring without having focus.
visualAt 23.0s, after clicking into the input and then blurring onto the page background at 21.0s, the focus ring finally disappears.
Issue markdown (copy-paste ready)
### Description When an `el-input` is focused, transitioned to `disabled = true`, and subsequently re-enabled (`disabled = false`), it incorrectly retains its active focus ring visual styling even though it is not the active focused element. ### Steps to Reproduce 1. Focus the `el-input` element. 2. Trigger a state change that sets the input to `disabled = true` (e.g., press `Enter`). 3. Click a button to toggle `disabled = false`. ### Expected Result The input should re-render in its default unfocused state. ### Actual Result The input renders with a stale blue focus ring as if it is actively focused. ### Environment - **Browser**: Chromium 151.0.7922.34 - **OS**: macOS - **Package**: `element-plus@latest` *Recorded with SceneRecap.*
Your recordings could explain themselves too.
Free plan · silent recordings welcome · bug reports included.
Try SceneRecap free →