Scenario

Chinese Pinyin candidate window in table cells (Safari and cross-browser)

When editing Chinese Pinyin inside a table cell—especially on iOS Safari—the IME candidate window can be clipped, positioned incorrectly, or behave differently than in a plain paragraph. Other browsers (Firefox, Edge, Chrome) also show layout-specific quirks.

ime
Scenario ID
scenario-ime-table-cell-pinyin-safari

Details

When editing Chinese Pinyin inside a table cell—especially on iOS Safari—the IME candidate window can be clipped, positioned incorrectly, or behave differently than in a plain paragraph. Other browsers (Firefox, Edge, Chrome) also show layout-specific quirks.

Problem Overview

IME UI is anchored to the caret rect; table layout, overflow, and nested contenteditable regions change that rect and stacking context, so the candidate list may not appear where users expect.

Observed Behavior

  • Candidate window obscured by cell borders or scroll containers.
  • Different behavior between cell vs block content outside tables.

Impact

Users cannot see candidates; they commit wrong characters or cancel composition.

Browser Comparison

Safari on iOS is frequently reported; Edge vs Chrome can differ on desktop with complex tables.

Solutions

  • Avoid overflow: hidden on immediate ancestors of the caret during composition if possible.
  • Test Pinyin input in <td contenteditable> with real devices.
  • Consider lifting the editable surface or using a portal for IME-heavy locales (advanced).

References

  • WebKit Bugzilla: search for IME + table / contenteditable

Scenario flow

Visual view of how this scenario connects to its concrete cases and environments. Nodes can be dragged and clicked.

React Flow mini map

Variants

Each row is a concrete case for this scenario, with a dedicated document and playground.

Case OS Device Browser Keyboard Status
ce-0237-chinese-ime-pinyin-table-ios-safari-en iOS 16+ Mobile (iPhone/iPad) Any Safari 16+ Chinese (IME) - iOS Chinese Input draft
ce-0238-chinese-ime-pinyin-table-edge-en Windows 10/11 Desktop Any Edge (Chromium-based) 120+ Chinese (IME) - Windows Chinese Input confirmed
ce-0239-chinese-ime-pinyin-table-firefox-en macOS 13+ Desktop (Mac) Any Firefox 120+ Chinese (IME) - macOS Chinese Input confirmed

Browser compatibility

This matrix shows which browser and OS combinations have documented cases for this scenario. Click on a cell to view the specific case.

Browser Windows iOS macOS
Edge (Chromium-based)
Firefox
Safari
Confirmed
Draft
No case documented

Cases

Open a case to see the detailed description and its dedicated playground.

Related Scenarios

Other scenarios that share similar tags or category.

Tags: ime, chinese, pinyin, safari, ios

Pinyin buffer visibility in Safari (Chinese IME)

When typing Chinese Pinyin in Safari, the Latin buffer (underlined or styled) may render differently than in Chrome—overlap with table cells, clipping, or missing underline—so users cannot see what they are composing before picking hanzi.

1 case
Tags: ime, chinese, safari

IME candidate list timing and conversion (kanji, hanzi)

Japanese kanji conversion and Chinese character selection depend on the IME candidate window. Delays, wrong ordering, or Safari-specific lag can cause users to commit the wrong character or see candidates that do not match the underlying buffer—especially under load or in complex layouts.

2 cases
Tags: ime, safari, ios

Duplicate beforeinput or input events during IME composition

Some browsers and keyboards emit duplicate composition-related input or beforeinput events—especially iOS Safari dictation paths and certain Android keyboards—so naive handlers that insert text on every input may double characters or corrupt state.

2 cases
Tags: ime, safari, ios

Missing composition events on iOS (IME)

On some iOS Safari versions and keyboards, compositionstart or compositionupdate may not fire reliably for certain languages, while input events still fire—editors that only reconcile on composition boundaries can desync.

1 case
Tags: ime, chinese, safari

Blur and focus during IME composition (CJK and Japanese Safari)

Moving focus away from the editor while composing text (Chinese, Japanese, Korean) can cancel composition, commit partial text, or leave the IME candidate window out of sync. Safari often shows distinct behavior for Japanese; Chrome behavior for Chinese/Korean is covered in related cases.

2 cases

Comments & Discussion

Have questions, suggestions, or want to share your experience? Join the discussion below.