시나리오
scenario-ime-interaction-patterns
contenteditable 내부에서 Enter 키 입력 시 컴포지션이 취소됨
scenario-space-during-composition
컴포지션 중 Space 키가 무시되거나 일관되지 않게 커밋됨
scenario-accessibility-foundations
스크린 리더가 contenteditable 영역의 변경 사항을 알리지 않음
scenario-code-block-editing
pre 태그에도 불구하고 코드 블록에서 여러 공백이 축소됨
scenario-selection-restoration
프로그래밍 방식 DOM 조작 후 텍스트 선택이 손실됨
scenario-empty-element-cleanup
편집 중 빈 단락 및 span 요소가 누적됨
scenario-undo-redo-stack
사용자 정의 작업이 실행 취소 스택에 추가되지 않음
scenario-table-editing
Tab 키가 다음 셀로 이동하는 대신 탭 문자를 삽입함
scenario-formatting-persistence
굵게 서식을 적용한 후 입력 시 굵게 서식이 손실됨
scenario-mobile-touch-behavior
터치 이벤트가 모바일에서 contenteditable 포커스를 방해함
scenario-blockquote-behavior
Safari에서 blockquote에서 Enter를 누르면 중첩 blockquote가 생성될 수 있음
scenario-ime-combining-characters-composition
Firefox에서 태국어 IME 성조 표시 및 모음 위치 오류
scenario-ime-table-cell-pinyin-safari
Safari에서 테이블 셀에서 중국어 IME 입력 시 Pinyin 노출
scenario-selection-addrange-safari-fail
Safari에서 selection.addRange 작동 실패
scenario-paste-formatting-loss
contenteditable에 리치 텍스트를 붙여넣을 때 마크업이 예상치 못하게 제거됨
scenario-undo-with-composition
IME 컴포지션 중 Undo가 예상보다 더 많은 텍스트를 지움
scenario-list-item-deletion
Chrome에서 목록 항목 시작 부분의 Backspace가 단락으로 변환됨
scenario-nested-list-behavior
Chrome에서 중첩 목록의 Enter 키가 같은 레벨에 항목을 생성함
scenario-link-insertion
선택한 텍스트에서 링크 생성은 작동하지만 Chrome에서 중첩 링크를 만들 수 있음
scenario-link-click-editing
Chrome에서 링크의 단일 클릭이 텍스트 선택을 허용하는 대신 탐색함
scenario-content-normalization
여러 연속 공백이 단일 공백으로 축소됨
scenario-font-family-change
Safari에서 적용 후 입력 시 글꼴 패밀리가 유지되지 않음
scenario-nested-formatting
여러 서식 적용이 깊게 중첩된 구조를 만듦
scenario-list-formatting-persistence
서식이 있는 콘텐츠를 붙여넣을 때 목록 구조가 손실됨
scenario-image-deletion
이미지 삭제가 빈 래퍼 요소를 남김
scenario-font-size-change
Safari에서 적용 후 입력 시 글꼴 크기가 유지되지 않음
scenario-background-color-change
배경색이 텍스트 선택 가시성에 방해됨
scenario-auto-scroll-on-typing
Firefox에서 빠른 입력 중 자동 스크롤이 급격하고 불쾌함
scenario-html-entity-encoding
붙여넣기 시 HTML 엔티티가 일관되지 않게 디코딩됨
scenario-ime-composition-focus-blur
Chrome에서 한글 IME 조합이 포커스 변경 시 손실됨
scenario-ime-composition-keydown-keycode-229
IME 조합 중 Enter 키 입력 시 keyCode 229과 13의 중복 keydown 이벤트
scenario-ime-insertfromcomposition-targetranges
Desktop Safari에서 insertFromComposition의 targetRanges는 collapsed여도 신뢰해야 함
scenario-ime-composition-focus-change
IME 컴포지션 중 다른 텍스트박스로 포커스 이동 시 부분 문자 커밋
scenario-caret-jump-non-editable
Chrome에서 비편집 요소 옆 삭제 시 캐럿 점프
scenario-caret-jump-chrome-mobile
Chrome Mobile에서 특정 문자 입력 시 캐럿 점프
scenario-caret-invisible-relative
position:relative 요소에서 캐럿이 보이지 않음 (Safari)
scenario-samsung-backspace-crash
삼성 키보드에서 백스페이스 길게 누르면 에디터 크래시
scenario-insertparagraph-preventdefault-composition-broken
insertParagraph preventDefault가 Safari에서 한국어 IME 조합을 깨뜨림
scenario-caret-movement-with-emoji
contenteditable에서 화살표 키가 이모지를 건너뜀
scenario-undo-redo-behavior
Undo 및 Redo 동작이 브라우저 간에 일관되지 않음
scenario-paste-plain-text
리치 텍스트를 붙여넣을 때 원하지 않는 서식이 포함됨
scenario-composition-events
모든 IME에 대해 컴포지션 이벤트가 일관되게 발생하지 않음
scenario-clipboard-api
Clipboard API 붙여넣기가 contenteditable에서 작동하지 않음
scenario-contenteditable-table
테이블 셀의 contenteditable이 레이아웃 문제를 일으킴
scenario-placeholder-behavior
contenteditable이 포커스를 받을 때 플레이스홀더 텍스트가 사라짐
scenario-ime-composition-duplicate-events
iOS Safari에서 IME 컴포지션이 deleteContentBackward와 insertText 이벤트를 순차적으로 트리거함
scenario-image-insertion
클립보드에서 이미지 붙여넣기가 Chrome에서 base64 데이터 URL로 삽입됨
scenario-line-break-element-type
Chrome에서 Enter 키가 단락 대신 div 요소를 생성함
scenario-image-resize
네이티브 이미지 크기 조정 핸들이 제한되거나 사용할 수 없음
scenario-text-color-change
Chrome에서 적용 후 입력 시 텍스트 색상이 유지됨
scenario-ime-candidate-list-and-conversion-issues
Chrome에서 일본어 IME 한자 변환 후보 목록 위치 문제
scenario-ime-rtl-and-character-joining
Safari에서 아랍어 IME 문자 결합 및 RTL 방향 문제
scenario-ime-composition-tab-key
Firefox에서 중국어 IME 조합이 Tab 키로 취소됨
scenario-ime-composition-escape-key
Edge에서 한글 IME 조합이 Escape 키로 취소됨
scenario-ime-composition-number-input
일본어 IME 숫자 키가 숫자 삽입 대신 후보를 선택함
scenario-ime-composition-paste
Firefox에서 한글 IME 조합이 붙여넣기 작업으로 취소됨
scenario-ime-composition-scroll
iOS Safari에서 일본어 IME 조합이 스크롤로 취소됨
scenario-ime-duplicate-text-heading
WebKit에서 제목(H1-H6)에서 IME 컴포지션 시 Pinyin 노출
scenario-ime-pinyin-visible-safari
Safari에서 테이블 셀에서 IME 입력 시 Pinyin 노출
scenario-ime-start-delay-android
Android에서 전체 선택 후 IME 시작 지연 (한국어)
scenario-mac-accent-menu-composition
Mac accent menu composition events inconsistent
scenario-ime-korean-crash-firefox
Firefox에서 한국어 IME 컴포지션 중 특정 키 조합 시 에디터 크래시
scenario-ios-keyboard-hides-text
iOS에서 소프트웨어 키보드가 텍스트를 숨김
scenario-ios-viewport-keyboard
iOS Safari에서 키보드 가시 시 viewport 메커니즘 이상
scenario-ios-dictation-duplicate-events
iOS dictation re-fires input events with text split into words
scenario-samsung-keyboard-text-prediction
삼성 키보드 구문 추천 ON 시 a 링크 옆 입력 시 insertCompositionText 이벤트와 selection 불일치
scenario-beforeinput-input-selection-mismatch
beforeinput과 input 이벤트 간 selection 불일치
scenario-gettargetranges-empty
삼성 키보드 구문 추천 ON 시 beforeinput.getTargetRanges()가 빈 배열 반환
scenario-typing-adjacent-formatted-elements
포맷된 요소 옆에서 입력 시 event.data에 포맷된 텍스트가 결합됨
scenario-table-composition-leaks
빈 테이블 셀에서 IME 조합 텍스트가 셀 밖으로 유출됨
scenario-double-line-break
Enter 키 입력 시 contenteditable에 두 개의 줄바꿈이 삽입됨
scenario-selection-collapse-on-blur
contenteditable 외부 클릭 시 선택 영역이 예상치 못하게 축소됨
scenario-mobile-keyboard-scroll
모바일에서 가상 키보드가 contenteditable을 뷰에서 벗어나게 스크롤함
scenario-caret-position-after-paste
콘텐츠 붙여넣기 후 캐럿 위치가 예상치 못하게 점프함
scenario-nested-contenteditable
중첩된 contenteditable 요소가 포커스 및 선택 문제를 일으킴
scenario-touch-selection-mobile
모바일 기기에서 터치 선택 핸들이 사용하기 어려움
scenario-execCommand-alternatives
execCommand는 더 이상 권장되지 않지만 서식 적용에 여전히 널리 사용됨
scenario-focus-management
contenteditable 내부의 특정 요소를 클릭할 때 포커스가 손실됨
scenario-performance-large-content
큰 contenteditable 콘텐츠에서 입력이 느려짐
scenario-copy-selection-behavior
contenteditable에서 콘텐츠 복사 후 선택이 손실됨
scenario-paste-media-handling
contenteditable에 이미지 붙여넣기가 일관되게 지원되지 않음
scenario-selection-range-accuracy
여러 요소에 걸쳐 선택할 때 선택 범위가 부정확함
scenario-caret-movement-granularity
수정자 키를 누르지 않았을 때 화살표 키가 문자 대신 단어로 이동함
scenario-contenteditable-readonly
자식 요소의 contenteditable="false"가 일관되게 존중되지 않음
scenario-beforeinput-support
Safari에서 beforeinput 이벤트가 지원되지 않음
scenario-selection-api-behavior
contenteditable이 포커스를 잃을 때 window.getSelection()이 null을 반환함
scenario-insertHTML-behavior
insertHTML이 DOM 구조와 서식을 손상시킴
scenario-contenteditable-iframe
iframe 내부에서 contenteditable 동작이 다름
scenario-ime-ui-positioning
IME 후보 창이 잘못된 위치에 나타남
scenario-delete-key-behavior
Delete 키 동작이 Backspace와 일관되지 않음
scenario-paste-event-handling
paste 이벤트에서 preventDefault가 기본 붙여넣기 동작을 방지하지 않음
scenario-maxlength-behavior
contenteditable에서 maxlength 속성이 지원되지 않음
scenario-inputmode-behavior
inputmode 속성이 모바일에서 가상 키보드에 영향을 주지 않음
scenario-language-attribute
lang 속성이 맞춤법 검사 언어에 영향을 주지 않음
scenario-tabindex-behavior
tabindex 속성이 포커스 순서를 올바르게 제어하지 않음
scenario-required-validation
required 속성이 검증을 위해 지원되지 않음
scenario-pattern-validation
pattern 속성이 contenteditable 콘텐츠를 검증하지 않음
scenario-readonly-attribute
readonly 속성이 contenteditable에서 편집을 방지하지 않음
scenario-disabled-attribute
disabled 속성이 contenteditable을 비활성화하지 않음
scenario-form-integration
contenteditable 내용이 form 전송에 포함되지 않음
scenario-spellcheck-interference
맞춤법 검사 제안이 contenteditable 편집을 방해함
scenario-autofocus-behavior
contenteditable에서 autofocus 속성이 작동하지 않음
scenario-enterkeyhint-behavior
contenteditable에서 enterkeyhint 속성이 작동하지 않음
scenario-entermode-behavior
enterkeyhint와 inputmode가 Enter 키 동작에 일관되지 않게 영향을 줌
scenario-csp-restrictions
Content Security Policy가 contenteditable 동작을 제한할 수 있음
scenario-xss-protection
XSS 보호가 contenteditable HTML 삽입을 방해할 수 있음
scenario-cors-restrictions
CORS 제한이 교차 출처 iframe의 contenteditable에 영향을 줄 수 있음
scenario-web-components-integration
Web Components 내부에서 contenteditable 동작이 다름
scenario-virtual-scrolling
가상 스크롤링 라이브러리가 contenteditable 선택을 방해함
scenario-contenteditable-inheritance
contenteditable 상속 동작이 일관되지 않음
scenario-mutation-observer-interference
MutationObserver가 contenteditable 편집을 방해할 수 있음
scenario-resize-observer-interference
ResizeObserver가 contenteditable 편집 중 레이아웃 이동을 일으킬 수 있음
scenario-intersection-observer-interference
IntersectionObserver가 예기치 않은 에디터 초기화를 유발함
scenario-drag-drop-api
Drag and Drop API 동작이 contenteditable에서 다름
scenario-file-api
File API 드래그 앤 드롭이 contenteditable에서 작동하지 않음
scenario-fullscreen-api
Fullscreen API가 contenteditable 포커스와 선택에 영향을 줄 수 있음
scenario-page-visibility-api
Page Visibility API가 탭 전환 중 contenteditable에 영향을 줄 수 있음
scenario-media-query-layout
미디어 쿼리 레이아웃 변경이 키보드 포커스를 방해함
scenario-css-contain
CSS contain 속성이 contenteditable 선택에 영향을 줄 수 있음
scenario-css-isolation
CSS isolation 속성이 contenteditable 스태킹 컨텍스트에 영향을 줄 수 있음
scenario-css-transform
CSS transform가 선택 핸들이 잘못된 위치에 나타나게 할 수 있음
scenario-css-filter
CSS filter가 contenteditable 성능에 영향을 줄 수 있음
scenario-css-backdrop-filter
CSS backdrop-filter가 contenteditable에서 렌더링 문제를 일으킬 수 있음
scenario-css-mix-blend-mode
CSS mix-blend-mode가 contenteditable 텍스트 렌더링에 영향을 줄 수 있음
scenario-css-will-change
CSS will-change가 contenteditable 성능을 개선하거나 저하시킬 수 있음
scenario-enter-vs-shift-enter
Shift+Enter가 줄바꿈을 위해 br 요소를 생성함
scenario-caret-out-of-viewport
붙여넣기 작업 중 캐럿이 뷰포트 밖으로 이동함
scenario-beforeinput-input-inputtype-mismatch
beforeinput은 insertCompositionText로 발생하지만 input은 deleteContentBackward로 발생함
scenario-mobile-virtual-keyboard-resize
Virtual keyboard resize causes viewport and selection loss
scenario-ime-backspace-chinese-mobile
Chinese IME backspace deletes entire composition instead of last character
scenario-linux-font-rendering-edge
Linux font rendering inconsistencies with contenteditable
scenario-edge-clipboard-linux
Linux에서 Edge가 붙여넣기 작업 시 모든 포맷팅을 제거함
scenario-korean-ime-composition-firefox
Firefox 한국어 IME 컴포지션 이벤트가 빠른 입력 시 잘못된 순서로 발생함
scenario-japanese-ime-convertion-firefox
Firefox 일본어 IME 변환 후보 선택이 contenteditable 선택을 방해함
scenario-firefox-undo-dom-mutation
Firefox에서 입력 중 DOM 변형으로 인한 실행 취소/다시 실행 스택 손상
scenario-memory-leak-prevention
큰 문서와 빈번한 DOM 작업이 있는 contenteditable에서 메모리 누수
scenario-performance-selection-large-content
큰 콘텐츠에서 선택 작업이 지수적으로 느려짐
scenario-linux-korean-ime-hangul
Firefox Linux 한국어 한글 IME가 문자를 잘못 결합함
scenario-linux-korean-ime-fcitx
Fcitx 한국어 IME가 Chrome에서 빠른 입력 중 컴포지션 상태를 잃음
scenario-browser-html-output-inconsistency
Browser generates inconsistent HTML output for same editing actions
scenario-paste-link-behavior
Pasting link from right-click context menu pastes only URL in Safari
scenario-paste-whitespace
Trailing whitespaces are removed when pasting text in Firefox
scenario-undo-redo-stack-programmatic-changes
Undo/redo stack does not include programmatic DOM changes
scenario-focus-selects-all
Programmatically focusing contenteditable div selects entire content in Chrome and Safari
scenario-beforeinput-not-cancelable-ime
beforeinput event not cancelable during IME composition
scenario-table-cell-contenteditable-focus-ie
Cannot focus on contenteditable table cell in Internet Explorer
scenario-firefox-contenteditable-false-cursor-disappears
Cursor disappears when clicking on contenteditable with non-editable children in Firefox
scenario-ie11-br-tag-loss
BR tag deleted when typing after selected line
scenario-chrome-android-focus-blur-input
Input events fire on focus/blur without content changes
scenario-empty-paragraph-br-handling
Empty paragraphs handled differently across browsers
scenario-nested-inline-span-tags-created
Unwanted span tags with inline styles created when removing line breaks
scenario-ie11-non-editable-double-click-editable
Non-editable elements become editable on double-click in IE11
scenario-react-caret-jumps-on-rerender
Caret position jumps to beginning on React re-render
scenario-chrome-caret-jumps-to-end-dom-manipulation
Caret jumps to end when DOM is manipulated during input in Chrome
scenario-firefox-empty-div-caret-not-appearing
Caret does not appear in empty contenteditable div in Firefox
scenario-android-contenteditable-false-dismisses-selection
Cursor dismisses and keyboard closes when encountering contenteditable false on Android
scenario-ie11-paste-image-base64-sharepoint
Paste event does not fire for images in IE11 contenteditable on SharePoint
scenario-accessibility-screen-reader-role-textbox
Contenteditable not recognized as editable by screen readers without ARIA
scenario-chrome-v96-performance-regression-spellcheck
Chrome v96 performance regression with spell checking in large contenteditable
scenario-samsung-keyboard-link-boundary
삼성 키보드 링크 경계 입력 시 텍스트 노드 강제 분리 및 이탈 현상
scenario-mobile-selection-drag-to-select
Mobile drag-to-selection creates inconsistent ranges
scenario-ime-composition-events-missing
Composition events not triggered in iOS Safari with Korean keyboard
scenario-paste-formatting-preserved-inconsistently
Paste behavior preserves source formatting inconsistently across browsers
scenario-mobile-keyboard-not-appearing
On-screen keyboard does not appear when focusing contenteditable on mobile
scenario-webkit-focus-bug
Focus does not transfer correctly from contenteditable to non-editable elements
scenario-ios-safari-caret-visible-after-scroll
Caret and text selection remain visible after scrolling in iOS Safari
scenario-browser-extension-interference
Grammarly 확장 프로그램이 contenteditable 편집을 방해함
scenario-framework-state-sync
Vue contenteditable에서 반응형 상태 업데이트 시 캐럿이 이동함
scenario-firefox-drag-drop-issues
텍스트 드래그 앤 드롭 시 콘텐츠 이동 실패
scenario-rtl-text-direction-inconsistent
contenteditable에서 RTL 스크롤 및 캐럿 정렬 오류
scenario-contenteditable-shadow-dom
Shadow DOM 내 다중 선택 영역 충돌 현상
scenario-paragraph-behavior
ProseMirror: 특정 노드 중첩 시 splitBlock 명령 크래시
scenario-performance-foundations
Safari 18.6: 대규모 스타일시트 환경에서 편집 시 레이아웃 쓰레싱
scenario-ime-ui-experience
iOS Safari: 긴 문서 편집 시 스크롤 고정 알고리즘 오류
scenario-inline-element-recreation-after-delete
Chromium에서 빈 span 삭제 후 입력 시 span이 다시 생성됨
scenario-select-all-non-editable-block
비편집 블록이 첫/끝 자식일 때 Ctrl+A(전체 선택) 실패