라벨이 개발인 게시물 표시

스크롤바 스타일 수정시 ::-webkit-scrollbar-track, ::-webkit-scrollbar-thumb 가 적용되지 않는다면 우선 봐야할 부분.

 웹킷 기반 브라우저에서 스크롤바 스타일을 지정할 때 ::-webkit-scrollbar-track, ::-webkit-scrollbar-thumb 같은 가상 요소를 지정해도 스타일이 적용되지 않는 경우가 있습니다.  이때 우선적으로 봐야 할 부분은 ::-webkit-scrollbar로 width 값을 설정했는지 확인하는 것입니다. ::-webkit-scrollbar로 width 값을 설정하지 않았다면, 기본 스크롤바가 표시됩니다.  참고로 width 값을 설정하지 않은 것과 0인 경우는 다릅니다. width: 0으로 설정한 경우에는 어떤 스크롤바도 표시되지 않습니다. display: none의 경우에도 마찬가지입니다.  결론적으로 웹킷 기반 브라우저에서 스크롤바 스타일을 지정할 때는 스크롤바의 폭을 명시적으로 선언해야 합니다.  참고로 스크롤 트랙에 패딩을 주고 싶은 경우에는 padding 설정이 되지 않으니, 스크롤 버튼에 같은 색으로 테두리를 주면 됩니다. ::-webkit-scrollbar { width: 15px; } ::-webkit-scrollbar-track { background: blue; } ::-webkit-scrollbar-thumb { background: red; border: 3px solid blue; }

반올림된 금액의 총합이 증가하는 문제

 4원을 두 사람이 각각 62.5%, 37.5% 나누어 가지는 상황입니다.  받는 금액은 2.5원, 1.5원이 되는데, 이 금액을 표시하는 페이지가 있다고 했을 때, 시스템적으로 소수점을 표시하지 않는다고 하면 어떻게 해야 할까요?  버림을 하게 되면 2원, 1원 표기가 되고, 합계는 3원이 되어 이상하게 보입니다.  올림을 하게 되면 3원, 2원 표기가 되고, 합계는 4원이 되어 이 또한 이상합니다.  반올림을 하면? 둘 다 .5로 끝나기 때문에 올림을 한 것과 같은 결과가 나오게 됩니다.  이 문제를 어떻게 처리하나 찾아보니 '은행원의 반올림'이라는 것을 알게 되었습니다.  이 방식은 반올림을 할 때, 5의 경우 윗자리 가장 가까운 짝수로 처리한다는 것입니다.  즉, 5는 0, 15는 20, 25는 20, 35는 40, 이런 식으로 처리하는 것입니다.  이 방식을 사용위 위의 소수점을 처리한다면 2.5원, 1.5원은 2원, 2원으로 표기되며 총 금액이 4원으로 맞게 됩니다.  하지만 '은행원의 반올림'에도 문제가 있습니다.  일단 2.5원을 받을 사람이 자신의 금액에 2원이라고 되어 있으면 기분이 나쁘겠죠.  금액이 적어진 것도 그렇지만 누구는 버림을 하고 누구는 올림을 했으니 공평하지 않다고 생각할 겁니다.  그리고, 두 사람이 50%로 공평하게 나눈다고 하면 근본 문제가 해결되지 않습니다.  3원을 둘로 나누어 1.5원씩 나누어 가진다고 했을 때, 이 금액은 "은행원의 반올림'을 해도 2원씩 표시되어 총 금액이 원금인 3원보다 높은 4원이 표시됩니다.  결국에는 이런 부분에서는 시스템적으로 반올림 사용을 최소화 하는 게 답이 아닐까 생각하게 됩니다.

알파벳 순서 외우기 앱

이미지
 영어 단어 외우는 것과 별개로 알파벳 순서를 중간에서 바로 떠올리려고 하면 버벅댈 때가 있습니다.  특히 알파벳 오름차순이나 내림차순으로 되어있는 목록을 찾을 때(예를 들면 책으로 된 영어사전이라던가...) 바로 떠오르지 않아 답답한 경우가 있어서 앱을 하나 만들었습니다.  표시되는 알파벳을 보고 다음이나 이전 알파벳을 선택하는 단순한 게임입니다. https://play.google.com/store/apps/details?id=com.nextcharactergamenew1cm  ***아이폰 개발 환경은 갖추고 있지 않아서 안드로이드만 올라가 있습니다.***

PHP에서 종료 태그를 빼는 이유

 '<?php'로 시작하는 PHP 파일에서 종료 태그인 '?>'를 생략하는 것은 단순히 편하기 때문이 아닐까 생각했습니다.  문득 정확한 이유가 있을까 찾아보니, 좀 더 명확한 이유가 있었습니다.  종료 태그를 넣은 다음에 실수로 공백이나 줄 바꿈이 추가되면 뜻하지 않은 문제가 발생할 수 있기 때문에 이를 방지하기 위함이라고 합니다.