Ant-design: Datepicker Select๋ฅผ ๋™์‹œ์— ์‚ฌ์šฉํ•  ๋•Œ ์ •๋ ฌ์ด ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2016๋…„ 10์›” 19์ผ  ยท  5์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ant-design/ant-design

๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ํ™˜๊ฒฝ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • antd ๋ฒ„์ „ : 2.1.0
  • ์šด์˜ ์ฒด์ œ ๋ฐ ๋ฒ„์ „ : win7 x64
  • ๋ธŒ๋ผ์šฐ์ € ๋ฐ ๋ฒ„์ „ : ํฌ๋กฌ 53.0.2785.143m

    ๋ญ ํ–ˆ์–ด?

๋™์‹œ์— Datepicker ์„ ํƒ ์‚ฌ์šฉ

๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‘ ๊ฐœ์˜ ๊ตฌ์„ฑ ์š”์†Œ ์ •๋ ฌ

์‹ค์ œ ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‘ ์ปจํŠธ๋กค์ด ์ •๋ ฌ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ˆ˜์ •ํ•˜๋ ค๋ฉด DatePicker์— verticalAlign: 'middle' ์Šคํƒ€์ผ์„ ์ถ”๊ฐ€ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์˜จ๋ผ์ธ ๋ฐ๋ชจ

http://codepen.io/daysv/pen/BLqbxw

๐Ÿ› Bug

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

  1. vertical-align: middle ์ œ๊ฑฐ๋ฅผ ์„ ํƒํ•˜๊ณ  ๊ธฐ๋ณธ vertical-align: baseline ๋ฅผ Input, DatePicker ๋“ฑ๊ณผ ์ผ์น˜ํ•˜๋„๋ก ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  2. vertical-align: baseline ์€ Select ๋‚ด๋ถ€์˜ ์ž์—ฐ ์กฐํŒ ํ…์ŠคํŠธ์— ๋”ฐ๋ผ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค. Select ๋‚ด๋ถ€์˜ ์ž๋ฆฌ ํ‘œ์‹œ ์ž์™€ ๊ฒ€์ƒ‰ ์ƒ์ž๋Š” ์ ˆ๋Œ€ ์œ„์น˜ (์ •๋ ฌ๋˜์ง€ ์•Š์Œ)์ด๋ฏ€๋กœ Select To ๋‚ด๋ถ€์— ํ•ญ์ƒ ์กด์žฌํ•˜๋Š” ํ…์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์—ฌ๊ธฐ์„œ ์•ฝ๊ฐ„์˜ ํŠธ๋ฆญ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ •๋ ฌ.

    .ant-select-selection--single .ant-select-selection__rendered::after {
     content: '.';
     visibility: hidden;
     pointer-events: none;
    }
    
  3. .ant-select-selection__rendered ์˜ overflow: hidden ๋Š” ํ…์ŠคํŠธ ์ •๋ ฌ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฏ€๋กœ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
  4. ์ œ๊ฑฐ ํ›„ ์›๋ณธ ํ…์ŠคํŠธ ์˜ค๋ฒ„ํ”Œ๋กœ ์ค„์ž„ํ‘œ ํšจ๊ณผ๋Š” ํŒŒ๊ดด๋˜๊ณ  ํ•˜๋‚˜์”ฉ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค.
  5. ์†์ƒ๋œ ์ฝค๋ณด ๋ฐ•์Šค๋ฅผ ์ถ”๊ฐ€๋กœ ์ˆ˜๋ฆฌํ•˜์‹ญ์‹œ์˜ค.

๋งŽ์€ ์Šคํƒ€์ผ ์„ธ๋ถ€ ์‚ฌํ•ญ์ด ๊ด€๋ จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค ...

๋ชจ๋“  5 ๋Œ“๊ธ€

Select ์— vertical-align: middle ์ด ์žˆ์Šต๋‹ˆ๋‹ค. DatePicker๋Š” ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ์žŠ์—ˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋ณ€๊ฒฝํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์„ ํƒ์€ vertical-align: middle ์ด (๊ฐ€) ์•ˆ๋ฉ๋‹ˆ๋‹ค.

  1. vertical-align: middle ์ œ๊ฑฐ๋ฅผ ์„ ํƒํ•˜๊ณ  ๊ธฐ๋ณธ vertical-align: baseline ๋ฅผ Input, DatePicker ๋“ฑ๊ณผ ์ผ์น˜ํ•˜๋„๋ก ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  2. vertical-align: baseline ์€ Select ๋‚ด๋ถ€์˜ ์ž์—ฐ ์กฐํŒ ํ…์ŠคํŠธ์— ๋”ฐ๋ผ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค. Select ๋‚ด๋ถ€์˜ ์ž๋ฆฌ ํ‘œ์‹œ ์ž์™€ ๊ฒ€์ƒ‰ ์ƒ์ž๋Š” ์ ˆ๋Œ€ ์œ„์น˜ (์ •๋ ฌ๋˜์ง€ ์•Š์Œ)์ด๋ฏ€๋กœ Select To ๋‚ด๋ถ€์— ํ•ญ์ƒ ์กด์žฌํ•˜๋Š” ํ…์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์—ฌ๊ธฐ์„œ ์•ฝ๊ฐ„์˜ ํŠธ๋ฆญ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ •๋ ฌ.

    .ant-select-selection--single .ant-select-selection__rendered::after {
     content: '.';
     visibility: hidden;
     pointer-events: none;
    }
    
  3. .ant-select-selection__rendered ์˜ overflow: hidden ๋Š” ํ…์ŠคํŠธ ์ •๋ ฌ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฏ€๋กœ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
  4. ์ œ๊ฑฐ ํ›„ ์›๋ณธ ํ…์ŠคํŠธ ์˜ค๋ฒ„ํ”Œ๋กœ ์ค„์ž„ํ‘œ ํšจ๊ณผ๋Š” ํŒŒ๊ดด๋˜๊ณ  ํ•˜๋‚˜์”ฉ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค.
  5. ์†์ƒ๋œ ์ฝค๋ณด ๋ฐ•์Šค๋ฅผ ์ถ”๊ฐ€๋กœ ์ˆ˜๋ฆฌํ•˜์‹ญ์‹œ์˜ค.

๋งŽ์€ ์Šคํƒ€์ผ ์„ธ๋ถ€ ์‚ฌํ•ญ์ด ๊ด€๋ จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค ...

๋˜ํ•œ small/large ์Šคํƒ€์ผ์˜ ๋‹ค์ค‘ ์„ ํƒ ์„ ํƒ์ด ๊ณ ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์Šค๋ ˆ๋“œ๋Š” ์ตœ๊ทผ ํ™œ๋™์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ž๋™์œผ๋กœ ์ž ๊ฒผ์Šต๋‹ˆ๋‹ค. ๊ด€๋ จ ๋ฒ„๊ทธ์— ๋Œ€ํ•œ ์ƒˆ ๋ฌธ์ œ๋ฅผ ์—ด๊ณ ์ด ์Šค๋ ˆ๋“œ์˜ ๊ด€๋ จ ๋Œ“๊ธ€์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์—ฝ๋‹ˆ ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰