본문 바로가기
728x90
반응형

source-code/FrontEnd48

Atomic Design https://www.youtube.com/watch?v=33yj-Q5v8mQ Atomic Design 물질(원자, 분자…) 개념을 웹에 적용하여 인터페이스를 세분화한 디자인 시스템을 만드는 방법론 구성 단계 Atoms (원자) 웹 UI의 가장 기본적인 구성 단계 라벨, input, button 등 1차원적 요소 의미 및 정의 Molecules (분자) 그 자체의 의미가 없거나 의미가 흐린 원자들의 결합 재사용성이 가능한 원자 조합 결합체 ex) 각각의 원자들이 모여 검색 ui를 정의 Orhanism (유기체) 원자 or 분자 or 같은 성질의 유기체 까지 포함한 개념 본격적인 UI 기능을 볼 수 있는 단계 ex) GNB에 대한 기본적인 기능이 정의됨 Templates (템플릿) 유기체의 기능적인 UI를.. 2023. 8. 17.
webpack - loader, optimization web pack loader loader? → 다른 파일 확장자를 다루기 위한 Third Party 확장 프로그램 module.exports = { module: { rules: [ { test: /\.filename1$/, use: ['loader-b', 'loader-a'], }, { test: /\.filename2$/, use: ['loader-d', 'loader-c'], }, ], }, } module로 취급하길 원하는 각각의 파일을 rules 배열에 객체로 추가해야한다. 해당 객체들은 파일의 타입을 정의하는 test, loader로 이뤄진 배열인 use 속성으로 구성된다. 이 때, use에 정의된 loader는 오른쪽부터 왼쪽으로 불러옴(순서 중요)에 유의! css 적용하기 webpack에서.. 2023. 8. 17.
next input auto focus를 통한 UX 개선 input UX 현재 반려동물 등록 페이지는 여러 개의 input이 row하게 배치된 형태다. 샵 관리, 특히 애견 미용샵 관리의 중심은 고객(반려동물)이기 때문에, 처음 앱을 시작한 사람이 최적의 UX를 경험하는 것이 무엇보다 중요했다. 덕분에 다른 앱들의 input page를 경험할 때마다 해당 UX를 고민하게 되었는데... 입력해야하는 input들이 많은데도 불구하고, 우리 앱보다 더 쉽게 정보를 입력한다는 느낌을 받았다. 왜지? → input의 onSubmit이 동작했을 때(한 input에서 완료or다음 키패드를 눌렀을 때) 다음 input으로 focus가 이동하는 기능이 우리 앱에는 없었다!!! 즉 기존 반려동물 등록 페이지에서는 하나의 input을 완료하고 → 제출 키패드 or 빈 공간을 눌러.. 2023. 8. 17.
FE 디자인 설계 관련 고찰 3주 정도로 예상했던 sprint가 2주만에 마무리가 되었다. 그 중 내가 맡은 task는 반려동물 등록 flow를 몽땅 개선하는 것. 페이지 수로만 따지만 (꼴랑) 하나뿐이었지만... 지금껏 개발하며 배우고 느꼈던 걸 최대한 써먹으려 노력했다. 가장 마음에 드는 issue! 맨 처음 react-hook-form을 앱에 도입하면서 정확한 개념조차 잡히지 않은 채 재사용이 가능(할거라고 생각했던) 컴포넌트를 만들었는데... props가 20개 남짓 넘어가는 걸 보며, 이를 다시 사용할 수는 없단 생각이 들었다. 따라서 UI 로직, form 관련 로직, react-hook-form 관련 로직이 몽땅 들어있던 컴포넌트를 각 기능을 담당하는 컴포넌트로 잘게 쪼개어 작성했다. 이를 통해 input의 공통 UI 변.. 2023. 8. 17.
CSS _ -webkit-tap-highlight-color 이슈 랜딩페이지를 만들던 도중 생긴 일! 카카오톡으로 href가 되어있는 버튼인데... 크롬이나 모바일에서 꾸욱 누를 경우, 요상하게 생긴 파란 박스가 나타났다! 당최 뭔가 싶어... :focus , :active 등의 가상 선택자를 건드려봤지만, 말짱 헛일. 원인을 알기 위해 열심히 구글링을 해보니... https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color -webkit-tap-highlight-color - CSS: Cascading Style Sheets | MDN -webkit-tap-highlight-color is a non-standard CSS property that sets the color of the hi.. 2021. 7. 20.
CSS _ Animation 가만히 있는 것보다는 이리저리 움직이는 게 사람들이 이목을 끌 테다. CSS에서는 Animation이란 속성을 통해 이를 이용할 수 있다! https://developer.mozilla.org/ko/docs/Web/CSS/CSS_Animations/Using_CSS_animations CSS 애니메이션 사용하기 - CSS: Cascading Style Sheets | MDN CSS3 애니메이션은 엘리먼트에 적용되는 CSS 스타일을 다른 CSS 스타일로 부드럽게 전환시켜 줍니다. 애니메이션은 애니메이션을 나타내는 CSS 스타일과 애니메이션의 중간 상태를 나타내는 키프 developer.mozilla.org 사실 엄청나게 설명이 잘 돼있기는 하다! 예전에는 애니메이션 같은 효과를 주기 위해선 JS가 필수적이.. 2021. 6. 28.
한글 서브셋 폰트 웹 페이지를 만들 때 폰트는 빠질 수 없는 존재다! 모든 글씨가 브라우저 기본 폰트나 희한한 궁서체로 되어있다면... 바로 나가기 버튼행. 마음에 드는 (무료)폰트를 다운로드한 후, CSS를 통해 해당 폰트를 적용시켜주면 된다. 그런데 문제... 폰트의 크기가 무지막지하게 크다! 2021.05.12 - [Deploy] - Lighthouse로 performance 측정하기 Lighthouse로 performance 측정하기 우리의 친구 개발자 도구(F12)는 개발 시 유용한 도구들을 제공한다. (console이라던지... console이라던지...) 그중 페이지 performance의 전반적 결과를 측정할 수 있는 Lighthouse를 사용해보자! 크롬 개발 23life.tistory.com 해당 글에 .. 2021. 6. 15.
CSS 가상 선택자 이용하기 CSS에는 가상 클래스(:pseudo-class)와 가상 요소(:pseudo-element)란 개념이 존재한다. 요놈들을 사용했을 때의 장점은 → 오직 CSS를 적용하기 위해 HTML을 수정하는 불상사..!가 발생하지 않는다는 점! 가상 클래스로 우리에게 가장 익숙한 녀석은 :hover 되시겠다. 사실 여태가지는 별 생각없이 :hover를 사용해 property와 value를 지정해줬지만... 알고 보면 '사용자가 해당 요소에 커서를 가져다 댔을 때'란 가상의 클래스를 입힌 후 CSS를 적용시킨 것! 덕분에 HTML상에서 각 부분마다 div를 비롯한 태그들로 감싸지 않아도 원하는 스타일을 입힐 수 있다. 와우! :hover 이외에 자주 쓰이는 가상 클래스로는... :link : 방문하지 않은 페이지 :v.. 2021. 4. 21.
CSS _ rem 이용하기 웹 사이트를 만들 때 반드시 고려할 요소 중 하나가 바로 반응형이다. 이를 위해 너비나 높이를 px 대신 % 나 vw/vh로 주게 되는데... 그럼 글자 크기(font)는 어떻게 하면 좋을까? 이 경우 우리는 html 태그의 font-size 값을 1로 가지는, rem이란 단위를 이용한다. 그런데 여기서, 그렇다면 아무 것도 지정해주지 않은 기본 html 태그의 font-size는? → 바로 16px! 헉 따라서 이를 통해... 초기화 코드로 다음과 같이 html 태그의 font-size를 62.5%로 맞춰두면, 1rem = 10px 즉 원하는 px 값에 1/10만 해주면 rem 값으로 곧바로 변환할 수 있다! 와우! 2021. 4. 12.
728x90
반응형