사진처럼 프로필을 만들고 있는데, 회색 원 안에 카메라 이미지를 배치하고 해당 회색 원을 눌렀을 때 파일선택창이 나타나야 하는 상황이다.
예전에 다른 블로그에서 보ㅗㄱ, input아래 span 태그를 놓고 input을 display:none처리하면 가능하다는 정보를 얻었는데 그렇게 적용을 해도 왜인지 제대로 잘 되지 않았다.
결론적으로는 label 태그 안에 input 태그를 넣고, input을 display:none처리 함으로서 회색원(=label)태그 를 누르면 파일선택창이 열리겠끔 구현하는 데 성공하였다.
<label>
<input type="file></input>
</label>
html 예시
& > label {
width: 36px;
height: 36px;
cursor: pointer;
}
& > label > input {
display: none;
}
(styled-component 사용 중이어서 & > 로 자식 설정을 하고 있습니다! )
위와 같이 구현하면 input이 보이지 않으면서도 label 버튼을 눌렀을 때 정상적으로 input 태그가 작동합니다 :)
오늘도 잘 해냈다!
'TIL' 카테고리의 다른 글
230901) Firebase Timestamp를 date 형식으로 바꾸기 (0) | 2023.09.01 |
---|---|
230831) React 에서 confirm (확인,취소) 알림창 띄우기 (0) | 2023.08.31 |
230829) Input 태그 사용 시 최대 글자 수 제한 (0) | 2023.08.29 |
230828) Input 태그 기본 Style 없애기 (0) | 2023.08.28 |
230825) react 에서 image 파일 폴더 생성하고 쉽게 불러오기 (0) | 2023.08.25 |