λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ—‚ WIL

display: contents둜 쀑간 래퍼 λ¬΄μ‹œν•˜κ³  λ ˆμ΄μ•„μ›ƒ μ •λ¦¬ν•˜κΈ°

by nalong 2024. 12. 28.

졜근 ν”„λ‘œμ νŠΈμ—μ„œ λ‹€μŒκ³Ό 같은 λ ˆμ΄μ•„μ›ƒμ„ λ§Œλ“€μ—ˆλ‹€.

  • ν•œ 쀄에 두 μΉΌλŸΌμ„ 배치 (widthλŠ” 50% μ”©)
  • λ‚΄λΆ€ μš”μ†Œλ“€μ€ μœ„ λΆ€λͺ¨ μš”μ†Œμ— 맞게 μΆ”κ°€ κ°€λŠ₯함.

ν•˜μ§€λ§Œ μ‹€μ œλ‘œ μ μš©ν–ˆμ„ λ•Œ, 칼럼이 width: 50% 을 μ°¨μ§€ν•˜μ§€ μ•Šκ³  μ•„λž˜μ™€ 같이 μ°Œκ·ΈλŸ¬λ“  것을 λ³Ό 수 μžˆμ—ˆλ‹€.

width: 50% κ°€ 각 μš”μ†Œμ— μ μš©λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

 

λ‹¨μˆœνžˆ λΆ€λͺ¨ μ»΄ν¬λ„ŒνŠΈμ— display: flex; 와 width: 100%; λ₯Ό μ£Όκ³  ν•˜μœ„μš”μ†Œμ— width: 50% 을 μ£Όλ©΄ λ˜κ² μ§€λΌκ³  μƒκ°ν–ˆμ—ˆλŠ”λ°, 계속 μ°Œκ·ΈλŸ¬μ§€κ³  각 μš”μ†Œμ˜ λ„ˆλΉ„κ°€ 50% 둜 μ°¨μ§€ν•˜μ§€ μ•Šμ•„μ„œ κ½€ λ‹Ήν™©ν–ˆμ—ˆλ‹€.

 

결둠적으둜 μœ„μ™€ 같은 μ΄μŠˆκ°€ λ°œμƒν•œ μ΄μœ λŠ” ν•΄λ‹Ή μš”μ†Œλ₯Ό 그릴 λ•Œ Tiptap ProseMirrorλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμ—ˆλŠ”λ°, 에디터 μƒμ—μ„œ μžλ™μœΌλ‘œ μ‚½μž…λ˜λŠ” 쀑간 래퍼둜 인해 μ˜λ„μ™€ λ‹€λ₯΄κ²Œ λ™μž‘ν–ˆλ˜ 것이닀.

 

그럼 쀑간 λž˜νΌμ—λ„ λ™μΌν•˜κ²Œ width: 50% λ₯Ό μ£ΌλŠ” κ²ƒμœΌλ‘œ ν•΄κ²°λ˜μ—ˆμ§€λ§Œ, 2μ°¨ μš”κ΅¬μ‚¬ν•­μ„ μƒκ°ν–ˆμ„ λ•Œ 에디터 μƒμ—μ„œ μžλ™ μ‚½μž…λ˜λŠ” 래퍼λ₯Ό 계속 κ³ λ €ν•˜λŠ” 것은 λΉ„νš¨μœ¨μ μΈ 상황이라 λ‹€λ₯Έ 방법이 ν•„μš”ν–ˆλ‹€.

1은 50% 적용

 

μ΄λ•Œ display: contents; λ₯Ό μ‚¬μš©ν•΄μ„œ ν•΄κ²°ν•  수 μžˆμ—ˆλŠ”λ°, display: contents 속성은 DOM νŠΈλ¦¬μƒμ˜ μš”μ†ŒλŠ” κ·ΈλŒ€λ‘œ μœ μ§€ν•˜μ§€λ§Œ 화면상 λ ˆμ΄μ•„μ›ƒ λ°•μŠ€λ₯Ό λ§Œλ“€μ§€ μ•ŠλŠ”λ‹€κ³  ν•œλ‹€.

즉, μ‹œκ°μ /λ ˆμ΄μ•„μ›ƒ μΈ‘λ©΄μ—μ„œ ν•΄λ‹Ή μš”μ†Œκ°€ 사라진 κ²ƒμ²˜λŸΌ λ™μž‘ν•˜κΈ° λ•Œλ¬Έμ— ν•˜μœ„ μžμ‹λ“€μ€ μƒμœ„ λΆ€λͺ¨μ™€ 직접 μ—°κ²°λœ 것과 같은 λ°°μΉ˜κ°€ λœλ‹€.

λ”°λΌμ„œ 쀑간 λž˜νΌμ— ν•΄λ‹Ή 속성을 μΆ”κ°€ν–ˆμ„ λ•Œ ν•˜μœ„ μš”μ†Œμ˜ width: 50%; κ°€ μ œλŒ€λ‘œ λ™μž‘ν•˜λŠ” 것을 λ³Ό 수 μžˆμ—ˆλ‹€.

 

display: contents 적용

 

 

https://hidde.blog/more-accessible-markup-with-display-contents/

 

More accessible markup with display: contents

<p>With <code>display: contents</code>, we can have more accessible markup for our CSS Grids. One caveat: supporting browsers currently break this.</p>

hidde.blog